SSL_CTX_set_tlsext_servername_callback.3 (340704) | SSL_CTX_set_tlsext_servername_callback.3 (344604) |
---|---|
1.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35) | 1.\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35) |
2.\" 3.\" Standard preamble: 4.\" ======================================================================== 5.de Sp \" Vertical space (when we can't use .PP) 6.if t .sp .5v 7.if n .sp 8.. 9.de Vb \" Begin verbatim text --- 39 unchanged lines hidden (view full) --- 49.\" If the F register is >0, we'll generate index entries on stderr for 50.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index 51.\" entries marked with X<> in POD. Of course, you'll have to process the 52.\" output yourself in some meaningful fashion. 53.\" 54.\" Avoid warning from groff about undefined register 'F'. 55.de IX 56.. | 2.\" 3.\" Standard preamble: 4.\" ======================================================================== 5.de Sp \" Vertical space (when we can't use .PP) 6.if t .sp .5v 7.if n .sp 8.. 9.de Vb \" Begin verbatim text --- 39 unchanged lines hidden (view full) --- 49.\" If the F register is >0, we'll generate index entries on stderr for 50.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index 51.\" entries marked with X<> in POD. Of course, you'll have to process the 52.\" output yourself in some meaningful fashion. 53.\" 54.\" Avoid warning from groff about undefined register 'F'. 55.de IX 56.. |
57.if !\nF .nr F 0 58.if \nF>0 \{\ 59. de IX 60. tm Index:\\$1\t\\n%\t"\\$2" | 57.nr rF 0 58.if \n(.g .if rF .nr rF 1 59.if (\n(rF:(\n(.g==0)) \{\ 60. if \nF \{\ 61. de IX 62. tm Index:\\$1\t\\n%\t"\\$2" |
61.. | 63.. |
62. if !\nF==2 \{\ 63. nr % 0 64. nr F 2 | 64. if !\nF==2 \{\ 65. nr % 0 66. nr F 2 67. \} |
65. \} 66.\} | 68. \} 69.\} |
70.rr rF |
|
67.\" 68.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). 69.\" Fear. Run. Save yourself. No user-serviceable parts. 70. \" fudge factors for nroff and troff 71.if n \{\ 72. ds #H 0 73. ds #V .8m 74. ds #F .3m --- 49 unchanged lines hidden (view full) --- 124. ds Th \o'LP' 125. ds ae ae 126. ds Ae AE 127.\} 128.rm #[ #] #H #V #F C 129.\" ======================================================================== 130.\" 131.IX Title "SSL_CTX_set_tlsext_servername_callback 3" | 71.\" 72.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). 73.\" Fear. Run. Save yourself. No user-serviceable parts. 74. \" fudge factors for nroff and troff 75.if n \{\ 76. ds #H 0 77. ds #V .8m 78. ds #F .3m --- 49 unchanged lines hidden (view full) --- 128. ds Th \o'LP' 129. ds ae ae 130. ds Ae AE 131.\} 132.rm #[ #] #H #V #F C 133.\" ======================================================================== 134.\" 135.IX Title "SSL_CTX_set_tlsext_servername_callback 3" |
132.TH SSL_CTX_set_tlsext_servername_callback 3 "2018-11-20" "1.0.2q" "OpenSSL" | 136.TH SSL_CTX_set_tlsext_servername_callback 3 "2019-02-26" "1.0.2r" "OpenSSL" |
133.\" For nroff, turn off justification. Always turn off hyphenation; it makes 134.\" way too many mistakes in technical documents. 135.if n .ad l 136.nh 137.SH "NAME" 138SSL_CTX_set_tlsext_servername_callback, SSL_CTX_set_tlsext_servername_arg, 139SSL_get_servername_type, SSL_get_servername \- handle server name indication 140(SNI) --- 6 unchanged lines hidden (view full) --- 147\& int (*cb)(SSL *, int *, void *)); 148\& long SSL_CTX_set_tlsext_servername_arg(SSL_CTX *ctx, void *arg); 149\& 150\& const char *SSL_get_servername(const SSL *s, const int type); 151\& int SSL_get_servername_type(const SSL *s); 152.Ve 153.SH "DESCRIPTION" 154.IX Header "DESCRIPTION" | 137.\" For nroff, turn off justification. Always turn off hyphenation; it makes 138.\" way too many mistakes in technical documents. 139.if n .ad l 140.nh 141.SH "NAME" 142SSL_CTX_set_tlsext_servername_callback, SSL_CTX_set_tlsext_servername_arg, 143SSL_get_servername_type, SSL_get_servername \- handle server name indication 144(SNI) --- 6 unchanged lines hidden (view full) --- 151\& int (*cb)(SSL *, int *, void *)); 152\& long SSL_CTX_set_tlsext_servername_arg(SSL_CTX *ctx, void *arg); 153\& 154\& const char *SSL_get_servername(const SSL *s, const int type); 155\& int SSL_get_servername_type(const SSL *s); 156.Ve 157.SH "DESCRIPTION" 158.IX Header "DESCRIPTION" |
155\&\fISSL_CTX_set_tlsext_servername_callback()\fR sets the application callback \fBcb\fR | 159\&\fBSSL_CTX_set_tlsext_servername_callback()\fR sets the application callback \fBcb\fR |
156used by a server to perform any actions or configuration required based on 157the servername extension received in the incoming connection. When \fBcb\fR 158is \s-1NULL, SNI\s0 is not used. The \fBarg\fR value is a pointer which is passed to 159the application callback. 160.PP | 160used by a server to perform any actions or configuration required based on 161the servername extension received in the incoming connection. When \fBcb\fR 162is \s-1NULL, SNI\s0 is not used. The \fBarg\fR value is a pointer which is passed to 163the application callback. 164.PP |
161\&\fISSL_CTX_set_tlsext_servername_arg()\fR sets a context-specific argument to be | 165\&\fBSSL_CTX_set_tlsext_servername_arg()\fR sets a context-specific argument to be |
162passed into the callback for this \fB\s-1SSL_CTX\s0\fR. 163.PP | 166passed into the callback for this \fB\s-1SSL_CTX\s0\fR. 167.PP |
164\&\fISSL_get_servername()\fR returns a servername extension value of the specified | 168\&\fBSSL_get_servername()\fR returns a servername extension value of the specified |
165type if provided in the Client Hello or \s-1NULL.\s0 166.PP | 169type if provided in the Client Hello or \s-1NULL.\s0 170.PP |
167\&\fISSL_get_servername_type()\fR returns the servername type or \-1 if no servername | 171\&\fBSSL_get_servername_type()\fR returns the servername type or \-1 if no servername |
168is present. Currently the only supported type (defined in \s-1RFC3546\s0) is 169\&\fBTLSEXT_NAMETYPE_host_name\fR. 170.SH "NOTES" 171.IX Header "NOTES" 172The \s-1ALPN\s0 and \s-1SNI\s0 callbacks are both executed during Client Hello processing. 173The servername callback is executed first, followed by the \s-1ALPN\s0 callback. 174.SH "RETURN VALUES" 175.IX Header "RETURN VALUES" | 172is present. Currently the only supported type (defined in \s-1RFC3546\s0) is 173\&\fBTLSEXT_NAMETYPE_host_name\fR. 174.SH "NOTES" 175.IX Header "NOTES" 176The \s-1ALPN\s0 and \s-1SNI\s0 callbacks are both executed during Client Hello processing. 177The servername callback is executed first, followed by the \s-1ALPN\s0 callback. 178.SH "RETURN VALUES" 179.IX Header "RETURN VALUES" |
176\&\fISSL_CTX_set_tlsext_servername_callback()\fR and 177\&\fISSL_CTX_set_tlsext_servername_arg()\fR both always return 1 indicating success. | 180\&\fBSSL_CTX_set_tlsext_servername_callback()\fR and 181\&\fBSSL_CTX_set_tlsext_servername_arg()\fR both always return 1 indicating success. |
178.SH "SEE ALSO" 179.IX Header "SEE ALSO" | 182.SH "SEE ALSO" 183.IX Header "SEE ALSO" |
180\&\fIssl\fR\|(7), \fISSL_CTX_set_alpn_select_cb\fR\|(3), 181\&\fISSL_get0_alpn_selected\fR\|(3) | 184\&\fBssl\fR\|(7), \fBSSL_CTX_set_alpn_select_cb\fR\|(3), 185\&\fBSSL_get0_alpn_selected\fR\|(3) |
182.SH "COPYRIGHT" 183.IX Header "COPYRIGHT" 184Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. 185.PP 186Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use 187this file except in compliance with the License. You can obtain a copy 188in the file \s-1LICENSE\s0 in the source distribution or at 189<https://www.openssl.org/source/license.html>. | 186.SH "COPYRIGHT" 187.IX Header "COPYRIGHT" 188Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. 189.PP 190Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use 191this file except in compliance with the License. You can obtain a copy 192in the file \s-1LICENSE\s0 in the source distribution or at 193<https://www.openssl.org/source/license.html>. |