MCPcopy Create free account
hub / github.com/acl-dev/acl / setup_ssl

Method setup_ssl

app/wizard/tmpl/http/master_threads.cpp:88–124  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

86}
87
88acl::sslbase_io* master_service::setup_ssl(acl::socket_stream& conn,
89 acl::sslbase_conf& conf)
90{
91 acl::sslbase_io* hook = (acl::sslbase_io*) conn.get_hook();
92 if (hook != NULL) {
93 return hook;
94 }
95
96 // ����ʹ�� SSL ��ʽ����������Ҫ�� SSL IO ������ע��������
97 // �����������У����� ssl io �滻 stream ��Ĭ�ϵĵײ� IO ����
98
99 //logger("begin setup ssl hook...");
100
101 // �������� SSL ���ַ�ʽ
102 acl::sslbase_io* ssl = conf.create(false);
103 if (conn.setup_hook(ssl) == ssl) {
104 logger_error("setup_hook error!");
105 ssl->destroy();
106 return NULL;
107 }
108
109 if (!ssl->handshake()) {
110 logger_error("ssl handshake failed");
111 ssl->destroy();
112 return NULL;
113 }
114
115 if (!ssl->handshake_ok()) {
116 logger("handshake trying again...");
117 ssl->destroy();
118 return NULL;
119 }
120
121 logger("handshake_ok");
122
123 return ssl;
124}
125
126bool master_service::thread_on_accept(acl::socket_stream* conn)
127{

Callers

nothing calls this directly

Calls 5

get_hookMethod · 0.45
createMethod · 0.45
setup_hookMethod · 0.45
destroyMethod · 0.45
handshakeMethod · 0.45

Tested by

no test coverage detected