Merge commit 'origin/vendor/PAM_PASSWDQC'
[dragonfly.git] / secure / lib / libssl / man / SSL_clear.3
1 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.32
2 .\"
3 .\" Standard preamble:
4 .\" ========================================================================
5 .de Sh \" Subsection heading
6 .br
7 .if t .Sp
8 .ne 5
9 .PP
10 \fB\\$1\fR
11 .PP
12 ..
13 .de Sp \" Vertical space (when we can't use .PP)
14 .if t .sp .5v
15 .if n .sp
16 ..
17 .de Vb \" Begin verbatim text
18 .ft CW
19 .nf
20 .ne \\$1
21 ..
22 .de Ve \" End verbatim text
23 .ft R
24 .fi
25 ..
26 .\" Set up some character translations and predefined strings.  \*(-- will
27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
28 .\" double quote, and \*(R" will give a right double quote.  | will give a
29 .\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
30 .\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
31 .\" expand to `' in nroff, nothing in troff, for use with C<>.
32 .tr \(*W-|\(bv\*(Tr
33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
34 .ie n \{\
35 .    ds -- \(*W-
36 .    ds PI pi
37 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
38 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
39 .    ds L" ""
40 .    ds R" ""
41 .    ds C` ""
42 .    ds C' ""
43 'br\}
44 .el\{\
45 .    ds -- \|\(em\|
46 .    ds PI \(*p
47 .    ds L" ``
48 .    ds R" ''
49 'br\}
50 .\"
51 .\" If the F register is turned on, we'll generate index entries on stderr for
52 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
53 .\" entries marked with X<> in POD.  Of course, you'll have to process the
54 .\" output yourself in some meaningful fashion.
55 .if \nF \{\
56 .    de IX
57 .    tm Index:\\$1\t\\n%\t"\\$2"
58 ..
59 .    nr % 0
60 .    rr F
61 .\}
62 .\"
63 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
64 .\" way too many mistakes in technical documents.
65 .hy 0
66 .if n .na
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
75 .    ds #[ \f1
76 .    ds #] \fP
77 .\}
78 .if t \{\
79 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
80 .    ds #V .6m
81 .    ds #F 0
82 .    ds #[ \&
83 .    ds #] \&
84 .\}
85 .    \" simple accents for nroff and troff
86 .if n \{\
87 .    ds ' \&
88 .    ds ` \&
89 .    ds ^ \&
90 .    ds , \&
91 .    ds ~ ~
92 .    ds /
93 .\}
94 .if t \{\
95 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
96 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
97 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
98 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
99 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
100 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
101 .\}
102 .    \" troff and (daisy-wheel) nroff accents
103 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
104 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
105 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
106 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
107 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
108 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
109 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
110 .ds ae a\h'-(\w'a'u*4/10)'e
111 .ds Ae A\h'-(\w'A'u*4/10)'E
112 .    \" corrections for vroff
113 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
114 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
115 .    \" for low resolution devices (crt and lpr)
116 .if \n(.H>23 .if \n(.V>19 \
117 \{\
118 .    ds : e
119 .    ds 8 ss
120 .    ds o a
121 .    ds d- d\h'-1'\(ga
122 .    ds D- D\h'-1'\(hy
123 .    ds th \o'bp'
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_clear 3"
132 .TH SSL_clear 3 "2008-09-27" "0.9.8i" "OpenSSL"
133 .SH "NAME"
134 SSL_clear \- reset SSL object to allow another connection
135 .SH "SYNOPSIS"
136 .IX Header "SYNOPSIS"
137 .Vb 1
138 \& #include <openssl/ssl.h>
139 .Ve
140 .PP
141 .Vb 1
142 \& int SSL_clear(SSL *ssl);
143 .Ve
144 .SH "DESCRIPTION"
145 .IX Header "DESCRIPTION"
146 Reset \fBssl\fR to allow another connection. All settings (method, ciphers,
147 BIOs) are kept.
148 .SH "NOTES"
149 .IX Header "NOTES"
150 SSL_clear is used to prepare an \s-1SSL\s0 object for a new connection. While all
151 settings are kept, a side effect is the handling of the current \s-1SSL\s0 session.
152 If a session is still \fBopen\fR, it is considered bad and will be removed
153 from the session cache, as required by \s-1RFC2246\s0. A session is considered open,
154 if \fISSL_shutdown\fR\|(3) was not called for the connection
155 or at least \fISSL_set_shutdown\fR\|(3) was used to
156 set the \s-1SSL_SENT_SHUTDOWN\s0 state.
157 .PP
158 If a session was closed cleanly, the session object will be kept and all
159 settings corresponding. This explicitly means, that e.g. the special method
160 used during the session will be kept for the next handshake. So if the
161 session was a TLSv1 session, a \s-1SSL\s0 client object will use a TLSv1 client
162 method for the next handshake and a \s-1SSL\s0 server object will use a TLSv1
163 server method, even if SSLv23_*_methods were chosen on startup. This
164 will might lead to connection failures (see \fISSL_new\fR\|(3))
165 for a description of the method's properties.
166 .SH "WARNINGS"
167 .IX Header "WARNINGS"
168 \&\fISSL_clear()\fR resets the \s-1SSL\s0 object to allow for another connection. The
169 reset operation however keeps several settings of the last sessions
170 (some of these settings were made automatically during the last
171 handshake). It only makes sense when opening a new session (or reusing
172 an old one) with the same peer that shares these settings.
173 \&\fISSL_clear()\fR is not a short form for the sequence
174 \&\fISSL_free\fR\|(3); \fISSL_new\fR\|(3); .
175 .SH "RETURN VALUES"
176 .IX Header "RETURN VALUES"
177 The following return values can occur:
178 .IP "0" 4
179 The \fISSL_clear()\fR operation could not be performed. Check the error stack to
180 find out the reason.
181 .IP "1" 4
182 .IX Item "1"
183 The \fISSL_clear()\fR operation was successful.
184 .PP
185 \&\fISSL_new\fR\|(3), \fISSL_free\fR\|(3),
186 \&\fISSL_shutdown\fR\|(3), \fISSL_set_shutdown\fR\|(3),
187 \&\fISSL_CTX_set_options\fR\|(3), \fIssl\fR\|(3),
188 \&\fISSL_CTX_set_client_cert_cb\fR\|(3)