acl
3.5.3.0
|
#include <polarssl_io.hpp>
Public 成员函数 | |
polarssl_io (polarssl_conf &conf, bool server_side, bool nblock=false) | |
void | destroy (void) |
bool | handshake (void) |
bool | check_peer (void) |
Public 成员函数 继承自 acl::sslbase_io | |
sslbase_io (sslbase_conf &conf, bool server_side, bool nblock=false) | |
virtual | ~sslbase_io (void) |
void | set_non_blocking (bool yes) |
bool | is_non_blocking (void) const |
bool | handshake_ok (void) |
void | set_sni_host (const char *host) |
Public 成员函数 继承自 acl::stream_hook | |
stream_hook (void) | |
Protected 成员函数 | |
~polarssl_io (void) | |
bool | open (ACL_VSTREAM *s) |
bool | on_close (bool alive) |
int | read (void *buf, size_t len) |
int | send (const void *buf, size_t len) |
Protected 成员函数 继承自 acl::stream_hook | |
virtual | ~stream_hook (void) |
Protected 成员函数 继承自 acl::acl::noncopyable | |
noncopyable () | |
~noncopyable () | |
额外继承的成员函数 | |
Protected 属性 继承自 acl::sslbase_io | |
sslbase_conf & | base_conf_ |
bool | server_side_ |
bool | nblock_ |
bool | handshake_ok_ |
atomic_long * | refers_ |
ACL_VSTREAM * | stream_ |
string | sni_host_ |
stream/aio_stream 流对象底层 IO 处理过程的处理类,该类对象中的读写的过程将会替代 stream/aio_stream 流对象中 默认的底层 IO 过程;该类对象必须是动态创建的(即为堆对象), stream/aio_stream 流对象通过调用本类对象的 destroy() 方法释放本类对象
在文件 polarssl_io.hpp 第 16 行定义.
acl::polarssl_io::polarssl_io | ( | polarssl_conf & | conf, |
bool | server_side, | ||
bool | nblock = false |
||
) |
构造函数
conf | {polarssl_conf&} 对每一个 SSL 连接进行配置的类对象 |
server_side | {bool} 是否为服务端模式,因为客户端模式与服务端 模式的握手方法不同,所以通过此参数来进行区分 |
nblock | {bool} 是否为非阻塞模式 |
|
protected |
bool acl::polarssl_io::check_peer | ( | void | ) |
检查对方证书是否有效(一般不必调用此函数)
|
virtual |
@override stream_hook 销毁 SSL IO 对象
重载 acl::stream_hook .
|
virtual |
@override sslbase_io 调用此方法进行 SSL 握手,在非阻塞 IO 模式下该函数需要与 handshake_ok() 函数组合使用来判断 SSL 握手是否成功
实现了 acl::sslbase_io.
|
protectedvirtual |
重载 acl::stream_hook .
|
protectedvirtual |
实现了 acl::stream_hook.
|
protectedvirtual |
实现了 acl::stream_hook.
|
protectedvirtual |
实现了 acl::stream_hook.