主模式第六包(收包):main_inR3 1. 序言 main_inR3()函数是ISAKMP协商过程中第一阶段的最后一个报文的接收处理函数,它的作用同main_inI3_outR3()部分功能相同:完成对对端身份的认证.他们的不同之处在于不在需要响应报文(如果不考虑第二阶段的话).此包处理完毕后,发起端便成功建立了ISAKMP SA, 完成了第一阶段主模式的协商.后续便是第二阶段的协商.这里我们主要说明main_inR3的函数调用关系.处理流程以及对源码的注释分析,关于main_inR3的上下…
主模式第一包:main_outI1() 1. 序言 main_outI1()作为主模式主动发起连接请求的核心处理函数,我们可以通过学习该函数的处理流程来探究openswan中报文封装的基本思想.如果之前没有学习基本的函数接口(如in_struct, out_struct, out_sa等),那么直接学习main_outI1()流程是比较困难的.如果想快速学习这几个函数接口,可以查看我先前的文章,我把需要的基本知识.思想等做了基本介绍,看完那几个接口再来学习此后的ISAKMP协商流程会容易很多,起…
主模式第五包:main_inR2_outI3 文章目录 主模式第五包:main_inR2_outI3 1. 序言 2.函数调用关系 3. 第五个报文流程图 4. main_inR2_outI3()源码学习 5. start_dh_secretiv()源码学习 6. main_inR2_outI3_cryptotail()源码学习 7. main_inR2_outI3_cryptotail()源码学习 1. 序言 main_inR2_outI3()函数是ISAKMP协商过程中第五包的核心处理函数的…
主模式第六包:main_inI3_outR3 1. 序言 main_inI3_outR3()函数是ISAKMP协商过程中第六包的核心处理函数的入口,第五六包主要用来验证对方的身份信息,同时此报文也是加密后的报文.这里我们主要说明main_inI3_outR3的函数调用关系.处理流程以及对源码的注释分析,关于main_inI3_outR3的上下文环境暂不叙述,留给后面的文章进行更新. ISAKMP协商报文的处理流程都比较复杂,此函数在协商的报文处理函数中比较复杂的,因此个人学习期间难免有遗漏和理解…
主模式第四包:main_inI2_outR2 1. 序言 main_inI2_outR2()函数是ISAKMP协商过程中第四包的核心处理函数的入口,同时在此处理流程中已经获取到足够的隧道信息,可以生成需要的密钥信息.这里我们主要说明main_inI2_outR2的函数调用关系.处理流程以及对源码的注释分析,关于main_inI2_outR2的上下文环境暂不叙述,留给后面的文章进行更新. ISAKMP协商报文的处理流程都比较复杂,此函数在协商的报文处理函数中比较复杂的,因此个人学习期间难免有遗漏和…
主模式第三包:main_inR1_outI2 1. 序言 main_inR1_outI2()函数是ISAKMP协商过程中第三包的核心处理函数的入口.这里我们主要说明main_inR1_outI2的函数调用关系.处理流程以及对源码的注释分析,关于main_inR1_outI2的上下文环境暂不叙述,留给后面的文章进行更新. ISAKMP协商报文的处理流程都比较复杂,一个函数有几百行都是很常见的,因此个人学习期间难免有遗漏和理解错误的地方,请大家多多批评指正. 对于源码的学习,我并没有把每一行进行备注…
主模式第二包:main_inI1_outR1() 文章目录 主模式第二包:main_inI1_outR1() 1. 序言 2. `main_inI1_outR1()`处理流程图 3. `main_inI1_outR1()源码` 4. `parse_isakmp_sa_body()源码` 1. 序言 main_inI1_outR1()函数是ISAKMP协商过程中第二包的核心处理函数,同时也是响应端口的首包.这里我们主要说明main_inI1_outR1的处理流程,关于main_inI1_outR1…
IKEv2协议协商流程: (IKE-SA-INIT 交换)第二包 文章目录 IKEv2协议协商流程: (IKE-SA-INIT 交换)第二包 1. IKEv2 协商总体框架 2. 第二包流程图 3. openswan源码学习 3.1 ikev2parent_inI1outR1() 3.2 ikev2parent_inI1outR1_tail() 3.3 ikev2_parse_parent_sa_body() 4. 小结 4.1 SA载荷中加密套件算法选择 4.2 密钥交换KE和随机负载Nonc…
以太网驱动的流程浅析(五)-mii_bus初始化以及phy id的获取 Author:张昺华 Email:920052390@qq.com Time:2019年3月23日星期六 此文也在我的个人公众号以及<Linux内核之旅>上有发表:以太网驱动的流程浅析(五)-mii_bus初始化以及phy id的获取 很喜欢一群人在研究技术,一起做有意思的东西,一起分享技术带给我们的快乐,也希望中国有更多的人热爱技术,喜欢一起研究.分享技术,然后可以一起用我们的技术来做一些好玩的东西,可以为这个社会创造一…
Raid 10配置流程(五块磁盘) 1.在虚拟机中再添加5块硬盘.  2.使用mdadm命令创建raid10,名称为“/dev/md0” -C代表创建操作,-v显示创建过程,-a yes检查RAID名称,-n是用到的硬盘个数,-l是定义RAID的级别而后面写上要加入阵列的硬盘名称. 输入mdadm -Cv /dev/md0 -a yes -n 5 -l 10 /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf   3.格式化并挂载使用 将RAID磁盘阵列格式…
文章目录 1. IKEv2 协商总体框架 2. 第一包流程图 3. openswan源码学习 3.1 ikev2parent_outI1() 3.2 ikev2parent_outI1_withstate() 3.3 ikev2_parent_outI1_common() 4. 注意事项 4.1 关于此报文中涉及的对IKEv2引入的"新特性"说明 4.2 在IKEv1与IKEv2在SA载荷结构上的不同之处: 1. IKEv2 协商总体框架 IKEv1协议建立一对IPSec SA,使用主…
题外话 刚刚开始着笔写作这篇文章时,正好看电视在采访一位92岁的考古学家,在他的日记中有这样一句话,写在这里与君共勉"不要等待幸运的降临,要去努力的掌握知识".如此朴实的一句话,此时此刻,正适合我们. 1 前言 回到前面的文章:Android 12(S) 图形显示系统 - 示例应用(二)  ,在上一篇文章中已经讲解了应用如何与SurfaceFlinger建立连接和通信,接下来就要去创建Surface了,当然在此之前,还有获取屏幕Display信息的操作,这不是关注的重点,先不展开讲解.…
http://blog.csdn.net/zwk626542417/article/details/46648139 ******************************************************************* 一.前言 上一篇文章我们将流程实例的启动与查询,任务的办理查询都进行了介绍,我们这篇文章来介绍activiti中的流程变量. 二.正文 流程变量与我们平常理解的变量是一样的,只不过是用在了我们activiti中,所以称为流程变量,流程变量在整个工…
http://blog.csdn.net/zwk626542417/article/details/46648139 一.前言 上一篇文章我们将流程实例的启动与查询,任务的办理查询都进行了介绍,我们这篇文章来介绍activiti中的流程变量. 二.正文 流程变量与我们平常理解的变量是一样的,只不过是用在了我们activiti中,所以称为流程变量,流程变量在整个工作流扮演着很重要的角色. 例如,请假流程中有请假天数.请假原因等一些参数都是流程变量使用的范围,流程变量的作用域范围是只对应一个流程实例…
一.前言 上一篇文章我们将流程实例的启动与查询,任务的办理查询都进行了介绍,我们这篇文章来介绍activiti中的流程变量. 二.正文 流程变量与我们寻常理解的变量是一样的,仅仅只是是用在了我们activiti中,所以称为流程变量.流程变量在整个工作流扮演着非常重要的角色. 比如,请假流程中有请假天数.请假原因等一些參数都是流程变量使用的范围,流程变量的作用域范围是仅仅相应一个流程实例. 也就是说各个流程实例的流程变量是不互相影响的.流程实例结束完毕以后流程变量还保存在数据库中(存放在流程变量的…
2014-01-07 10:46:30 将百度空间里的东西移过来. 在前面的文章中我们分析了UI的加载,其中提到了一个重要的对象:RawContactDeltaList mState,我前面说过这个对象很重要,和联系人保存有关,现在就分析一下联系人到底是怎么保存的. 1. 千里追踪mState ContactEditorFragment类 bindEditorsForNewContact()方法中创建了一个RawContactDelta对象insert,代码如下: private void bi…
<?php /** * break;退出循环: * 语法结构:break int;可以指定跳过几级循环: * while do_while for foreach switch */ /*$i=0;$j=0; while ($i++<10){ echo '$i='.$i; while ($j++<5){ if($j==2){ break 2; } echo '   $j='.$j; } echo "<br/>"; } //输出:$i=1 $j=1*/ /*…
所有文章 https://www.cnblogs.com/lay2017/p/11478237.html 正文 springboot在启动过程中将会根据当前应用的类型创建对应的ApplicationContext.本文内容较短,承上启下,将不会涉及太多具体的内容,主要在于为后续的ioc内容构建一个ApplicationContext实例. 我们简单回顾一下,在第二篇文章介绍SpringApplication的run方法 public ConfigurableApplicationContext…
为了方便查阅现有的文章,特准备一个目录页供后续查询使用 专栏序言 1. 基础知识 openswan任务调度基础知识之信号 2. openswan环境搭建 openswan框架和编译时说明 openswan编译安装 3. NAT穿越 NAT-T下的端口浮动 NAT-T原理和环境搭建 4. openswan函数笔记 in_struct和out_struct讲解 openswan发送状态分析 pluto中监听各个网口的500端口处理逻辑 pluto中CPU占有率高的接口与优化方案 Openswan支持…
今天翻文档时发现之前整理的关于freeswitch呼叫相关的内容,写成博文分享出来也方便我以后查阅. 整体结构图 FreeswitchCore 模块加载过程 freeswitch主程序初始化时会从modules.conf.xml文件中读取配置,如果配置中如下内容生效: <load module="mod_sofia"/> 则执行加载sofia模块操作. 具体过程如下: main switch_core_init_and_modload switch_loadable_mod…
本次开源发布的是AEAI BPMV3.0.2版流程平台,该版本是数通畅联首次正式对外发布的版本,产品现已开源并上传至开源社区http://www.oschina.net/p/aeai-bpm. 产品说明: AEAI BPM流程集成平台主要用来串联跨异构系统的业务流程,让整体业务流程从企业全局来看是闭环的.还可以实现业务流程间相互调用,如:文件审批或库存跟踪,或将业务流程.人员.服务.信息和系统整合到一个单一的应用程序中,实现在不更改或者少量扩展既有应用的情况下集成构建新的业务流程. 另外,AEA…
2014-01-06 17:05:11 将百度空间里的东西移过来. 本文适合ROM定制做Phonebook的童鞋看,其他人飘过即可- Phonebook添加/编辑联系人UI加载及保存联系人流程,是一系列研究Phonebook联系人保存机制的文章,做联系人好长时间了,一直想写一些东西,但总是找不到合适的时间,最近总算有点空了,写写吧! Android Phonebook编写联系人UI加载及联系人保存流程(二) http://www.cnblogs.com/wlrhnh/p/3508253.html…
本文来自http://blog.csdn.net/yihongyuelan 转载请务必注明出处 本文代码以MTK平台Android 4.4为分析对象,与Google原生AOSP有些许差异,请读者知悉. 前置文章: <Android 4.4 Kitkat Phone工作流程浅析(一)__概要和学习计划> <Android 4.4 Kitkat Phone工作流程浅析(二)__UI结构分析> <Android 4.4 Kitkat Phone工作流程浅析(三)__MO(去电)流程…
PPPoE(Point to Point Protocol over Ethernet,基于以太网的点对点协议)的工作流程包含发现(Discovery)和会话(Session)两个阶段,发现阶段是无状态的,目的是获得 PPPoE 终端(在局端的ADSL设备上)的以太网 MAC 地址,并建立一个惟一的 PPPoE SESSION-ID.发现阶段结束后,就进入标准的PPP会话阶段. 1.发现阶段(PPPoED:PPPoE Discovery) 1.1 PADI(PPPoE Active Discov…
一.概述 View的绘制是从上往下一层层迭代下来的.DecorView-->ViewGroup(--->ViewGroup)-->View ,按照这个流程从上往下,依次measure(测量),layout(布局),draw(绘制). 我们来对上图做出简单解释:DecorView是一个应用窗口的根容器,它本质上是一个FrameLayout.DecorView有唯一一个子View,它是一个垂直LinearLayout,包含两个子元素,一个是TitleView(ActionBar的容器),另一…
本文来自http://blog.csdn.net/yihongyuelan 转载请务必注明出处 本文代码以MTK平台Android 4.4为分析对象.与Google原生AOSP有些许差异.请读者知悉. 前置文章: <Android 4.4 Kitkat Phone工作流程浅析(一)__概要和学习计划> <Android 4.4 Kitkat Phone工作流程浅析(二)__UI结构分析> <Android 4.4 Kitkat Phone工作流程浅析(三)__MO(去电)流程…
Netty源码分析第三章: 客户端接入流程 第五节: 监听读事件 我们回到AbstractUnsafe的register0()方法: private void register0(ChannelPromise promise) { try { //省略代码 //做实际的注册 doRegister(); neverRegistered = false; registered = true; //触发事件 pipeline.invokeHandlerAddedIfNeeded(); safeSetS…
本文来自http://blog.csdn.net/yihongyuelan 转载请务必注明出处 本文代码以MTK平台Android 4.4为分析对象,与Google原生AOSP有些许差异,请读者知悉. 前置文章: <Android 4.4 Kitkat Phone工作流程浅析(一)__概要和学习计划> <Android 4.4 Kitkat Phone工作流程浅析(二)__UI结构分析> <Android 4.4 Kitkat Phone工作流程浅析(三)__MO(去电)流程…
在基于TCP长连接的CS链路中,如何保证数据流的安全性是开发者最关注的问题之一.本文深入浅出的给大家介绍一下在TCP连接中,使用RSA协商加密的方式,建立一个安全加密的通信链路,保证数据传输的安全性.文章分为3个主要部分,即RSA算法简介,安全信道协商流程详解和一些工程优化方法.期望大家在读了我这篇文章之后能够透彻的理解基于RSA协商加密方式的信道建立方式并能够运用在自己的业务实践中. RSA算法简介 加密算法是计算机通信安全的基石,加密算法分为2个大类,即"对称加密算法"和"…
<!doctype html>3.3 基于ECDHE的TLS握手流程 html { overflow-x: initial !important } :root { --bg-color: #ffffff; --text-color: #333333; --select-text-bg-color: #B5D6FC; --select-text-font-color: auto; --monospace: "Lucida Console",Consolas,"Co…