摘要:读写出错控制 ---根据openssl doc/crypto/bio/bio_should_retry.pod翻译和自己的理解写成 (作者:dragonking mail:wzhah@263.net 发布于:http://gdwzh.126.com之openssl专业论坛) 当bio_read或bio_write函数调用出错的时候,bio本身提供了一组出错原因的诊断函数,他们定义如下(openss......
摘要:bio链的操作 ---根据openssl doc/crypto/bio/bio_push.pod翻译和自己的理解写成 (作者:dragonking mail:wzhah@263.net 发布于:http://gdwzh.126.com之openssl专业论坛) 我在介绍bio结构的时候说过,bio结构其实是一个链式结构,单个bio是只有一个环节的bio链的特例,那么我们怎么构造或在一个bio链中增......
openssl之BIO系列之9---BIO对的创建和应用bio对的创建与应用 ---根据openssl doc/crypto/bio/bio_new_bio_pair.pod翻译与自己的理解写成 【程序编程相关:
linux经典问题==网络篇【绝对转载】】 【推荐阅读:
FreeBSD应用心得(1).安装和升级】 【扩展信息:
Linux多网卡配置】 (作者:dragonking mail:wzhah@263.net 发布于:http://gdwzh.126.com之openssl专业论坛) bio对是bio中专门创建的一对缓存bio,要创建bio对,调用下面定义的函数(openssl\bio.h): int bio_new_bio_pair(bio **bio1, size_t writebuf1, bio **bio2, size_t writebuf2); 这个函数调用成功后返回1,这时候bio1与bio2都是有效的了;否则就返回0,而bio1与bio2就会设为null,这是后可以检测出错堆栈以得到更多错误信息. 这个bio对创建之后,它的两端都能作为数据缓冲的输入与输出.典型的应用是它一端与ssl的io连接,而另一端则被应用控制,这样,应用程序就不需要直接与网络连接打交道了. 这两个bio对的功能是完全对称的,它们的缓冲区的大小由参数writebuf1与writebuf2决定,如果给定的大小是0,那么该函数就会使用缺省的缓存大小.bio_new_bio_pair不会检查bio1与bio2是否真的指向其它bio,bio1与bio2的值都被重写,但是在此之前不会调用bio_free()函数.所以,在使用bio1与bio2之前,必须自己保证这两个变量是空的bio,否则可能造成内存泄漏. ...
下一页 摘要:bio的io操作函数 ---根据openssl doc/crypto/bio/bio_read.pod翻译和自己的理解写成 (作者:dragonking mail:wzhah@263.net 发布于:http://gdwzh.126.com之openssl专业论坛) 这些函数是bio的基本读写操作函数,包括四个,他们的定义如下(openssl/bio.h): int bio_read(bio *b......