⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ssl_ctx_set_msg_callback.pod

📁 OpenSSL 0.9.8k 最新版OpenSSL
💻 POD
字号:
=pod=head1 NAMESSL_CTX_set_msg_callback, SSL_CTX_set_msg_callback_arg, SSL_set_msg_callback, SSL_get_msg_callback_arg - install callback for observing protocol messages=head1 SYNOPSIS #include <openssl/ssl.h> void SSL_CTX_set_msg_callback(SSL_CTX *ctx, void (*cb)(int write_p, int version, int content_type, const void *buf, size_t len, SSL *ssl, void *arg)); void SSL_CTX_set_msg_callback_arg(SSL_CTX *ctx, void *arg); void SSL_set_msg_callback(SSL_CTX *ctx, void (*cb)(int write_p, int version, int content_type, const void *buf, size_t len, SSL *ssl, void *arg)); void SSL_set_msg_callback_arg(SSL_CTX *ctx, void *arg);=head1 DESCRIPTIONSSL_CTX_set_msg_callback() or SSL_set_msg_callback() can be used todefine a message callback function I<cb> for observing all SSL/TLSprotocol messages (such as handshake messages) that are received orsent.  SSL_CTX_set_msg_callback_arg() and SSL_set_msg_callback_arg()can be used to set argument I<arg> to the callback function, which isavailable for arbitrary application use.SSL_CTX_set_msg_callback() and SSL_CTX_set_msg_callback_arg() specifydefault settings that will be copied to new B<SSL> objects byL<SSL_new(3)|SSL_new(3)>. SSL_set_msg_callback() andSSL_set_msg_callback_arg() modify the actual settings of an B<SSL>object. Using a B<0> pointer for I<cb> disables the message callback.When I<cb> is called by the SSL/TLS library for a protocol message,the function arguments have the following meaning:=over 4=item I<write_p>This flag is B<0> when a protocol message has been received and B<1>when a protocol message has been sent.=item I<version>The protocol version according to which the protocol message isinterpreted by the library. Currently, this is one ofB<SSL2_VERSION>, B<SSL3_VERSION> and B<TLS1_VERSION> (for SSL 2.0, SSL3.0 and TLS 1.0, respectively).=item I<content_type>In the case of SSL 2.0, this is always B<0>.  In the case of SSL 3.0or TLS 1.0, this is one of the B<ContentType> values defined in theprotocol specification (B<change_cipher_spec(20)>, B<alert(21)>,B<handshake(22)>; but never B<application_data(23)> because thecallback will only be called for protocol messages).=item I<buf>, I<len>I<buf> points to a buffer containing the protocol message, whichconsists of I<len> bytes. The buffer is no longer valid after thecallback function has returned.=item I<ssl>The B<SSL> object that received or sent the message.=item I<arg>The user-defined argument optionally defined bySSL_CTX_set_msg_callback_arg() or SSL_set_msg_callback_arg().=back=head1 NOTESProtocol messages are passed to the callback function after decryptionand fragment collection where applicable. (Thus record boundaries arenot visible.)If processing a received protocol message results in an error,the callback function may not be called.  For example, the callbackfunction will never see messages that are considered too large to beprocessed.Due to automatic protocol version negotiation, I<version> is notnecessarily the protocol version used by the sender of the message: Ifa TLS 1.0 ClientHello message is received by an SSL 3.0-only server,I<version> will be B<SSL3_VERSION>.=head1 SEE ALSOL<ssl(3)|ssl(3)>, L<SSL_new(3)|SSL_new(3)>=head1 HISTORYSSL_CTX_set_msg_callback(), SSL_CTX_set_msg_callback_arg(),SSL_set_msg_callback() and SSL_get_msg_callback_arg() were added in OpenSSL 0.9.7.=cut

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -