]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - secure/lib/libcrypto/man/X509_CRL_get0_by_serial.3
Merge OpenSSL 1.1.1a.
[FreeBSD/FreeBSD.git] / secure / lib / libcrypto / man / X509_CRL_get0_by_serial.3
1 .\" Automatically generated by Pod::Man 4.09 (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
10 .ft CW
11 .nf
12 .ne \\$1
13 ..
14 .de Ve \" End verbatim text
15 .ft R
16 .fi
17 ..
18 .\" Set up some character translations and predefined strings.  \*(-- will
19 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
20 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
21 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
22 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
23 .\" nothing in troff, for use with C<>.
24 .tr \(*W-
25 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
26 .ie n \{\
27 .    ds -- \(*W-
28 .    ds PI pi
29 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
30 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
31 .    ds L" ""
32 .    ds R" ""
33 .    ds C` ""
34 .    ds C' ""
35 'br\}
36 .el\{\
37 .    ds -- \|\(em\|
38 .    ds PI \(*p
39 .    ds L" ``
40 .    ds R" ''
41 .    ds C`
42 .    ds C'
43 'br\}
44 .\"
45 .\" Escape single quotes in literal strings from groff's Unicode transform.
46 .ie \n(.g .ds Aq \(aq
47 .el       .ds Aq '
48 .\"
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"
61 ..
62 .    if !\nF==2 \{\
63 .        nr % 0
64 .        nr F 2
65 .    \}
66 .\}
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 "X509_CRL_GET0_BY_SERIAL 3"
132 .TH X509_CRL_GET0_BY_SERIAL 3 "2018-11-20" "1.1.1a" "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"
138 X509_CRL_get0_by_serial, X509_CRL_get0_by_cert, X509_CRL_get_REVOKED, X509_REVOKED_get0_serialNumber, X509_REVOKED_get0_revocationDate, X509_REVOKED_set_serialNumber, X509_REVOKED_set_revocationDate, X509_CRL_add0_revoked, X509_CRL_sort \- CRL revoked entry utility functions
139 .SH "SYNOPSIS"
140 .IX Header "SYNOPSIS"
141 .Vb 1
142 \& #include <openssl/x509.h>
143 \&
144 \& int X509_CRL_get0_by_serial(X509_CRL *crl,
145 \&                             X509_REVOKED **ret, ASN1_INTEGER *serial);
146 \& int X509_CRL_get0_by_cert(X509_CRL *crl, X509_REVOKED **ret, X509 *x);
147 \&
148 \& STACK_OF(X509_REVOKED) *X509_CRL_get_REVOKED(X509_CRL *crl);
149 \&
150 \& const ASN1_INTEGER *X509_REVOKED_get0_serialNumber(const X509_REVOKED *r);
151 \& const ASN1_TIME *X509_REVOKED_get0_revocationDate(const X509_REVOKED *r);
152 \&
153 \& int X509_REVOKED_set_serialNumber(X509_REVOKED *r, ASN1_INTEGER *serial);
154 \& int X509_REVOKED_set_revocationDate(X509_REVOKED *r, ASN1_TIME *tm);
155 \&
156 \& int X509_CRL_add0_revoked(X509_CRL *crl, X509_REVOKED *rev);
157 \&
158 \& int X509_CRL_sort(X509_CRL *crl);
159 .Ve
160 .SH "DESCRIPTION"
161 .IX Header "DESCRIPTION"
162 \&\fIX509_CRL_get0_by_serial()\fR attempts to find a revoked entry in \fBcrl\fR for
163 serial number \fBserial\fR. If it is successful it sets \fB*ret\fR to the internal
164 pointer of the matching entry, as a result \fB*ret\fR must not be freed up
165 after the call.
166 .PP
167 \&\fIX509_CRL_get0_by_cert()\fR is similar to \fIX509_get0_by_serial()\fR except it
168 looks for a revoked entry using the serial number of certificate \fBx\fR.
169 .PP
170 \&\fIX509_CRL_get_REVOKED()\fR returns an internal pointer to a stack of all
171 revoked entries for \fBcrl\fR.
172 .PP
173 \&\fIX509_REVOKED_get0_serialNumber()\fR returns an internal pointer to the
174 serial number of \fBr\fR.
175 .PP
176 \&\fIX509_REVOKED_get0_revocationDate()\fR returns an internal pointer to the
177 revocation date of \fBr\fR.
178 .PP
179 \&\fIX509_REVOKED_set_serialNumber()\fR sets the serial number of \fBr\fR to \fBserial\fR.
180 The supplied \fBserial\fR pointer is not used internally so it should be
181 freed up after use.
182 .PP
183 \&\fIX509_REVOKED_set_revocationDate()\fR sets the revocation date of \fBr\fR to
184 \&\fBtm\fR. The supplied \fBtm\fR pointer is not used internally so it should be
185 freed up after use.
186 .PP
187 \&\fIX509_CRL_add0_revoked()\fR appends revoked entry \fBrev\fR to \s-1CRL\s0 \fBcrl\fR. The
188 pointer \fBrev\fR is used internally so it must not be freed up after the call:
189 it is freed when the parent \s-1CRL\s0 is freed.
190 .PP
191 \&\fIX509_CRL_sort()\fR sorts the revoked entries of \fBcrl\fR into ascending serial
192 number order.
193 .SH "NOTES"
194 .IX Header "NOTES"
195 Applications can determine the number of revoked entries returned by
196 \&\fIX509_CRL_get_revoked()\fR using \fIsk_X509_REVOKED_num()\fR and examine each one
197 in turn using \fIsk_X509_REVOKED_value()\fR.
198 .SH "RETURN VALUES"
199 .IX Header "RETURN VALUES"
200 \&\fIX509_CRL_get0_by_serial()\fR and \fIX509_CRL_get0_by_cert()\fR return 0 for failure,
201 1 on success except if the revoked entry has the reason \f(CW\*(C`removeFromCRL\*(C'\fR (8),
202 in which case 2 is returned.
203 .PP
204 \&\fIX509_REVOKED_set_serialNumber()\fR, \fIX509_REVOKED_set_revocationDate()\fR,
205 \&\fIX509_CRL_add0_revoked()\fR and \fIX509_CRL_sort()\fR return 1 for success and 0 for
206 failure.
207 .PP
208 \&\fIX509_REVOKED_get0_serialNumber()\fR returns an \fB\s-1ASN1_INTEGER\s0\fR pointer.
209 .PP
210 \&\fIX509_REVOKED_get0_revocationDate()\fR returns an \fB\s-1ASN1_TIME\s0\fR value.
211 .PP
212 \&\fIX509_CRL_get_REVOKED()\fR returns a \s-1STACK\s0 of revoked entries.
213 .SH "SEE ALSO"
214 .IX Header "SEE ALSO"
215 \&\fId2i_X509\fR\|(3),
216 \&\fIERR_get_error\fR\|(3),
217 \&\fIX509_get0_signature\fR\|(3),
218 \&\fIX509_get_ext_d2i\fR\|(3),
219 \&\fIX509_get_extension_flags\fR\|(3),
220 \&\fIX509_get_pubkey\fR\|(3),
221 \&\fIX509_get_subject_name\fR\|(3),
222 \&\fIX509_get_version\fR\|(3),
223 \&\fIX509_NAME_add_entry_by_txt\fR\|(3),
224 \&\fIX509_NAME_ENTRY_get_object\fR\|(3),
225 \&\fIX509_NAME_get_index_by_NID\fR\|(3),
226 \&\fIX509_NAME_print_ex\fR\|(3),
227 \&\fIX509_new\fR\|(3),
228 \&\fIX509_sign\fR\|(3),
229 \&\fIX509V3_get_d2i\fR\|(3),
230 \&\fIX509_verify_cert\fR\|(3)
231 .SH "COPYRIGHT"
232 .IX Header "COPYRIGHT"
233 Copyright 2015\-2016 The OpenSSL Project Authors. All Rights Reserved.
234 .PP
235 Licensed under the OpenSSL license (the \*(L"License\*(R").  You may not use
236 this file except in compliance with the License.  You can obtain a copy
237 in the file \s-1LICENSE\s0 in the source distribution or at
238 <https://www.openssl.org/source/license.html>.