client_pbc.c模块数据流程

从命令行传入参数,client端的hostname或者IP地址,默认为 127.0.0.1.因此该模块是实现本机通信的。

也就是文档中说的 netlink传递参数。

首先调用socket,将第三个参数设置为 NATLINK_PBC(定义为31)

然后bind。

然后sendto,向核态发送信息。这里的基本用法,以及报文的封装与解封,用法都是固定的,可以参考的。

下面是一个死循环。

该循环的作用就是:

从核态接收信息,并根据其传递的操作命令。做出相应的相应、

实际上只有两种动作:

一个是f_sign.另一个是f_sign_verify.

然后调用用户态的库,完成动作。

整个数据流程如下:

首先在文件系统中,调用接口client_sign。(该函数已经被exports在核态)然后该函数,封装命令,操作命令,及数据信息。然后传递给用户态,通过netlink,用户态收到信息,执行相关的动作,然后将处理结果,返回给核态。

这里的 sign或者verify sign,难道就是用户认证的意思?

client_pbc.c模块数据流程,布布扣,bubuko.com

时间: 2024-10-10 13:05:42

client_pbc.c模块数据流程的相关文章

YII数据流程浅析

MVC就不解释,直接上代码分析数据流程: 数据库图: 模型部分介绍: <?php /* * 前两个方法必须写 * 继承自CActiveRecord类 这个类位于 \framework\db\ar\CActiveFinder.php 这个路径下 * 它包括了经常使用查询方法 */ class Goods extends CActiveRecord{ public static function model($classname = __CLASS__){ //返回当前模型对象方法 return p

Android4.4系统浏览器Chromium实现的加载模块与流程

本文只描述Http网络请求相关的信息,Https.Spdy.file.ftp.websocket等的类型只提及在哪里出现关系分支. 代码层次图如下: +----------------------------------------+ |   WebView.java (SDK public API)   | +----------------------------------------+ |     Android & Chromium Wrapper       | Java桥接和封装层

redux请求数据流程

redux请求数据流程 store里面的index.js文件 1 import {createStore,combineReducers,applyMiddleware} from "redux" 2 import reduxThunk from "redux-thunk" 3 import user from "./reducers/user"/*团队合作各自引入自己的模块*/ 4 import {composeWithDevTools} fr

数据流程redux

思考题: react+redux开发这么一个原型,要怎么开发? 整个redux流程的逻辑非常清晰,数据流是单向循环的,就像一个生产的流水线: store(存放状态) -> Container(显示状态) -> reducer (处理动作)-> store redux画图理解: redux 只是定义了应用的数据流程,只解决了 "数据层"(model layer) 的问题, 一般还会使用 react, angular 等作为"显示层" (UI laye

随机访问存储器、存储器模块数据的存取、局部性_15.09.15/2-第六章(6.2)

了解存储器的层次结构可以帮助程序员更好地了解系统如何将数据在存储器层次中上下移动,从而可以将自己编写的程序的数据放于较高的层次上,使得CPU能够更快地访问它们.  随机访问存储器: S(静态)RAM:其每个位存储在一个具有双稳态的bistable存储器单元里.该存储器单元的特性是只能稳定地保持在两个稳定状态中的任意一种,就像倒立的钟摆只有左边或者右边两种稳定状态一样,这种性质使得SRAM会从任意状态迅速地转移到两个稳定状态之一的状态.由于这种性质的存在,使这种存储器在有电的情况下会永久地保持它的

对Socket CAN的理解(4)——【Socket CAN接收数据流程】

this指针只能在一个类的成员函数中调用,它表示当前对象的地址.下面是一个例子: void Date::setMonth( int mn ) { month = mn; // 这三句是等价的 this->month = mn; (*this).month = mn; } 1. this只能在成员函数中使用. 全局函数,静态函数都不能使用this. 实际上,成员函数默认第一个参数为T* const register this. 如: class A{public: int func(int p){

OSG 中 相交测试 模块 工作流程及原理

主要涉及三个类: 1. osgUtil::PolytopeIntersector // 具体不同算法实现类 2. osgUtil::IntersectionVisitor //用来遍历节点树的每个节点 3.osg::Node * mNode;  //  你要做相交测试的根节点 先看用法: osg::ref_ptr<osgUtil::PolytopeIntersector> intersector = new osgUtil::PolytopeIntersector(osgUtil::Inter

Citrix XenMobile学习笔记之六:XenMoble业务访问数据流程

总体访问流程图 终端设备注册流程 Android设备注册流程 到google Play或亚马逊应用商店或者豌豆荚.Citrix官网,下载思杰Worx Home应用.并在设备上安装. 当系统提示您安装该应用程序,单击下一步,然后单击安装. 安装Worx Home之后,点击启动. 输入您的认证信息,如设备管理器服务器名,用户主体名称(UPN),或电子邮件地址的名称,然后单击下一步. 在激活设备管理员屏幕上,点击激活. 输入您的账户密码,然后点击点登录. 根据XenMobile的配置方式,您可能会被要

处理流程和数据流程

机房收费系统合作开始了,对机房系统的处理流程和数据流程,进行了整理,画了一下两幅,哪里有思路有误的,热烈欢迎大家指正. 处理流程如下: 管理员登录系统,可以"设定基本数据"."修改密码"."查看操作员工作记录"以及"增加和删除用户",然后,给学生进行"注册",注册后,操作员可以进行"学生基本信息维护",学生可以进行"上下机",然后,一般用户可以"查看学生上机