summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorschwarze <>2024-12-24 09:48:56 +0000
committerschwarze <>2024-12-24 09:48:56 +0000
commit6a844cf69ae4b0d31a8e2b18b94524ec66ec58df (patch)
treecd07364a35ff218ceb5fe7855106d8eb823a47d6 /src
parent095767444d291c0674b124252ae2b4e97e823d21 (diff)
downloadopenbsd-6a844cf69ae4b0d31a8e2b18b94524ec66ec58df.tar.gz
openbsd-6a844cf69ae4b0d31a8e2b18b94524ec66ec58df.tar.bz2
openbsd-6a844cf69ae4b0d31a8e2b18b94524ec66ec58df.zip
new manual page v2i_ASN1_BIT_STRING(3) written from scratch
Diffstat (limited to 'src')
-rw-r--r--src/lib/libcrypto/man/ASN1_BIT_STRING_set.37
-rw-r--r--src/lib/libcrypto/man/Makefile3
-rw-r--r--src/lib/libcrypto/man/X509V3_EXT_get_nid.35
-rw-r--r--src/lib/libcrypto/man/X509V3_parse_list.37
-rw-r--r--src/lib/libcrypto/man/s2i_ASN1_INTEGER.35
-rw-r--r--src/lib/libcrypto/man/v2i_ASN1_BIT_STRING.3125
6 files changed, 141 insertions, 11 deletions
diff --git a/src/lib/libcrypto/man/ASN1_BIT_STRING_set.3 b/src/lib/libcrypto/man/ASN1_BIT_STRING_set.3
index 5d863d19df..a916ca3ab2 100644
--- a/src/lib/libcrypto/man/ASN1_BIT_STRING_set.3
+++ b/src/lib/libcrypto/man/ASN1_BIT_STRING_set.3
@@ -1,4 +1,4 @@
1.\" $OpenBSD: ASN1_BIT_STRING_set.3,v 1.4 2023/07/28 05:53:10 tb Exp $ 1.\" $OpenBSD: ASN1_BIT_STRING_set.3,v 1.5 2024/12/24 09:48:56 schwarze Exp $
2.\" 2.\"
3.\" Copyright (c) 2021 Ingo Schwarze <schwarze@openbsd.org> 3.\" Copyright (c) 2021 Ingo Schwarze <schwarze@openbsd.org>
4.\" 4.\"
@@ -14,7 +14,7 @@
14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16.\" 16.\"
17.Dd $Mdocdate: July 28 2023 $ 17.Dd $Mdocdate: December 24 2024 $
18.Dt ASN1_BIT_STRING_SET 3 18.Dt ASN1_BIT_STRING_SET 3
19.Os 19.Os
20.Sh NAME 20.Sh NAME
@@ -126,7 +126,8 @@ or if the requested bit is not set.
126.Sh SEE ALSO 126.Sh SEE ALSO
127.Xr ASN1_BIT_STRING_new 3 , 127.Xr ASN1_BIT_STRING_new 3 ,
128.Xr ASN1_STRING_set 3 , 128.Xr ASN1_STRING_set 3 ,
129.Xr d2i_ASN1_BIT_STRING 3 129.Xr d2i_ASN1_BIT_STRING 3 ,
130.Xr v2i_ASN1_BIT_STRING 3
130.Sh HISTORY 131.Sh HISTORY
131.Fn ASN1_BIT_STRING_set 132.Fn ASN1_BIT_STRING_set
132first appeared in SSLeay 0.6.5. 133first appeared in SSLeay 0.6.5.
diff --git a/src/lib/libcrypto/man/Makefile b/src/lib/libcrypto/man/Makefile
index fef17409c7..4c7c5891eb 100644
--- a/src/lib/libcrypto/man/Makefile
+++ b/src/lib/libcrypto/man/Makefile
@@ -1,4 +1,4 @@
1# $OpenBSD: Makefile,v 1.303 2024/12/23 08:39:57 schwarze Exp $ 1# $OpenBSD: Makefile,v 1.304 2024/12/24 09:48:56 schwarze Exp $
2 2
3.include <bsd.own.mk> 3.include <bsd.own.mk>
4 4
@@ -426,6 +426,7 @@ MAN= \
426 lh_new.3 \ 426 lh_new.3 \
427 openssl.cnf.5 \ 427 openssl.cnf.5 \
428 s2i_ASN1_INTEGER.3 \ 428 s2i_ASN1_INTEGER.3 \
429 v2i_ASN1_BIT_STRING.3 \
429 x509v3.cnf.5 430 x509v3.cnf.5
430 431
431all clean cleandir depend includes obj tags: 432all clean cleandir depend includes obj tags:
diff --git a/src/lib/libcrypto/man/X509V3_EXT_get_nid.3 b/src/lib/libcrypto/man/X509V3_EXT_get_nid.3
index fc0342d19b..ad153c36d0 100644
--- a/src/lib/libcrypto/man/X509V3_EXT_get_nid.3
+++ b/src/lib/libcrypto/man/X509V3_EXT_get_nid.3
@@ -1,4 +1,4 @@
1.\" $OpenBSD: X509V3_EXT_get_nid.3,v 1.7 2024/12/23 08:26:27 tb Exp $ 1.\" $OpenBSD: X509V3_EXT_get_nid.3,v 1.8 2024/12/24 09:48:56 schwarze Exp $
2.\" 2.\"
3.\" Copyright (c) 2024 Theo Buehler <tb@openbsd.org> 3.\" Copyright (c) 2024 Theo Buehler <tb@openbsd.org>
4.\" 4.\"
@@ -14,7 +14,7 @@
14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16.\" 16.\"
17.Dd $Mdocdate: December 23 2024 $ 17.Dd $Mdocdate: December 24 2024 $
18.Dt X509V3_EXT_GET_NID 3 18.Dt X509V3_EXT_GET_NID 3
19.Os 19.Os
20.Sh NAME 20.Sh NAME
@@ -69,6 +69,7 @@ if there is none.
69.Sh SEE ALSO 69.Sh SEE ALSO
70.Xr i2s_ASN1_ENUMERATED_TABLE 3 , 70.Xr i2s_ASN1_ENUMERATED_TABLE 3 ,
71.Xr OBJ_create 3 , 71.Xr OBJ_create 3 ,
72.Xr v2i_ASN1_BIT_STRING 3 ,
72.Xr X509_EXTENSION_get_object 3 , 73.Xr X509_EXTENSION_get_object 3 ,
73.Xr X509V3_get_d2i 3 74.Xr X509V3_get_d2i 3
74.Sh STANDARDS 75.Sh STANDARDS
diff --git a/src/lib/libcrypto/man/X509V3_parse_list.3 b/src/lib/libcrypto/man/X509V3_parse_list.3
index 7bb508ac7b..447f1a5e94 100644
--- a/src/lib/libcrypto/man/X509V3_parse_list.3
+++ b/src/lib/libcrypto/man/X509V3_parse_list.3
@@ -1,4 +1,4 @@
1.\" $OpenBSD: X509V3_parse_list.3,v 1.1 2024/12/23 08:39:57 schwarze Exp $ 1.\" $OpenBSD: X509V3_parse_list.3,v 1.2 2024/12/24 09:48:56 schwarze Exp $
2.\" 2.\"
3.\" Copyright (c) 2024 Ingo Schwarze <schwarze@openbsd.org> 3.\" Copyright (c) 2024 Ingo Schwarze <schwarze@openbsd.org>
4.\" 4.\"
@@ -14,7 +14,7 @@
14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16.\" 16.\"
17.Dd $Mdocdate: December 23 2024 $ 17.Dd $Mdocdate: December 24 2024 $
18.Dt X509V3_PARSE_LIST 3 18.Dt X509V3_PARSE_LIST 3
19.Os 19.Os
20.Sh NAME 20.Sh NAME
@@ -91,7 +91,8 @@ or if memory allocation fails.
91.Sh SEE ALSO 91.Sh SEE ALSO
92.Xr isspace 3 , 92.Xr isspace 3 ,
93.Xr sk_pop_free 3 , 93.Xr sk_pop_free 3 ,
94.Xr STACK_OF 3 94.Xr STACK_OF 3 ,
95.Xr v2i_ASN1_BIT_STRING 3
95.Sh HISTORY 96.Sh HISTORY
96.Fn X509V3_parse_list 97.Fn X509V3_parse_list
97and 98and
diff --git a/src/lib/libcrypto/man/s2i_ASN1_INTEGER.3 b/src/lib/libcrypto/man/s2i_ASN1_INTEGER.3
index 5455b5d224..0aae94e07d 100644
--- a/src/lib/libcrypto/man/s2i_ASN1_INTEGER.3
+++ b/src/lib/libcrypto/man/s2i_ASN1_INTEGER.3
@@ -1,4 +1,4 @@
1.\" $OpenBSD: s2i_ASN1_INTEGER.3,v 1.7 2024/12/23 03:03:45 schwarze Exp $ 1.\" $OpenBSD: s2i_ASN1_INTEGER.3,v 1.8 2024/12/24 09:48:56 schwarze Exp $
2.\" 2.\"
3.\" Copyright (c) 2023 Theo Buehler <tb@openbsd.org> 3.\" Copyright (c) 2023 Theo Buehler <tb@openbsd.org>
4.\" 4.\"
@@ -14,7 +14,7 @@
14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16.\" 16.\"
17.Dd $Mdocdate: December 23 2024 $ 17.Dd $Mdocdate: December 24 2024 $
18.Dt S2I_ASN1_INTEGER 3 18.Dt S2I_ASN1_INTEGER 3
19.Os 19.Os
20.Sh NAME 20.Sh NAME
@@ -200,6 +200,7 @@ Error codes can sometimes be obtained by
200.Xr ASN1_INTEGER_to_BN 3 , 200.Xr ASN1_INTEGER_to_BN 3 ,
201.Xr ASN1_OCTET_STRING_new 3 , 201.Xr ASN1_OCTET_STRING_new 3 ,
202.Xr crypto 3 , 202.Xr crypto 3 ,
203.Xr v2i_ASN1_BIT_STRING 3 ,
203.Xr X509V3_get_d2i 3 204.Xr X509V3_get_d2i 3
204.Sh HISTORY 205.Sh HISTORY
205These functions first appeared in OpenSSL 0.9.4 and 206These functions first appeared in OpenSSL 0.9.4 and
diff --git a/src/lib/libcrypto/man/v2i_ASN1_BIT_STRING.3 b/src/lib/libcrypto/man/v2i_ASN1_BIT_STRING.3
new file mode 100644
index 0000000000..36d9f7496b
--- /dev/null
+++ b/src/lib/libcrypto/man/v2i_ASN1_BIT_STRING.3
@@ -0,0 +1,125 @@
1.\" $OpenBSD: v2i_ASN1_BIT_STRING.3,v 1.1 2024/12/24 09:48:56 schwarze Exp $
2.\"
3.\" Copyright (c) 2024 Ingo Schwarze <schwarze@openbsd.org>
4.\"
5.\" Permission to use, copy, modify, and distribute this software for any
6.\" purpose with or without fee is hereby granted, provided that the above
7.\" copyright notice and this permission notice appear in all copies.
8.\"
9.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16.\"
17.Dd $Mdocdate: December 24 2024 $
18.Dt V2I_ASN1_BIT_STRING 3
19.Os
20.Sh NAME
21.Nm v2i_ASN1_BIT_STRING ,
22.Nm i2v_ASN1_BIT_STRING
23.Nd ASN.1 BIT STRING utility functions for certificate extensions
24.Sh SYNOPSIS
25.In openssl/x509v3.h
26.Ft ASN1_BIT_STRING *
27.Fo v2i_ASN1_BIT_STRING
28.Fa "X509V3_EXT_METHOD *method"
29.Fa "X509V3_CTX *ctx"
30.Fa "STACK_OF(CONF_VALUE) *nval"
31.Fc
32.Ft STACK_OF(CONF_VALUE) *
33.Fo i2v_ASN1_BIT_STRING
34.Fa "X509V3_EXT_METHOD *method"
35.Fa "ASN1_BIT_STRING *bit_string"
36.Fa "STACK_OF(CONF_VALUE) *nval"
37.Fc
38.Sh DESCRIPTION
39.Fn v2i_ASN1_BIT_STRING
40allocates a new ASN.1
41.Vt BIT STRING
42object and initializes it from a list of bit names.
43The
44.Fa nval
45argument is essentially used as the list of the names of the bits to set.
46Both long names and short names can be used.
47One name is taken from each element of
48.Fa nval .
49The
50.Fa ctx
51argument and any section names or values contained in the elements of
52.Fa nval
53are ignored.
54To convert a C string containing a comma-separated list of names
55to the input format of this function,
56.Xr X509V3_parse_list 3
57can be used.
58.Pp
59.Fn i2v_ASN1_BIT_STRING
60translates the numbers of the bits that are set in the
61.Fa bit_string
62to long names.
63For each bit that is set,
64one element containing the corresponding long name is added to
65.Fa nval .
66If a
67.Dv NULL
68pointer is passed for the
69.Fa nval
70argument, a new
71.Vt STACK_OF(CONF_VALUE)
72is allocated.
73.Pp
74For both functions, the
75.Fa method
76argument is only used for the translation of bit names to bit numbers
77and vice versa.
78Any names and bit numbers that do not occur in the
79.Fa usr_data
80translation table in the
81.Fa method
82are silently ignored.
83.Pp
84For the following arguments,
85.Xr X509V3_EXT_get_nid 3
86returns static constant
87.Fa method
88objects supporting these functions:
89.Pp
90.Bl -tag -width NID_netscape_cert_type -compact
91.It Dv NID_crl_reason
92reason codes, RFC 5280 section 5.3.1
93.It Dv NID_key_usage
94key usage purposes, RFC 5280 section 4.2.1.3
95.It Dv NID_netscape_cert_type
96Netscape certificate types (obsolete)
97.El
98.Pp
99While an application program could theoretically provide its own
100.Fa method
101object containing a custom translation table, that is unlikely to be
102useful for any practical purpose.
103.Sh RETURN VALUES
104.Fn v2i_ASN1_BIT_STRING
105returns the new
106.Vt BIT STRING
107object and
108.Fn i2v_ASN1_BIT_STRING
109the modified or new list of bit names.
110Both functions return
111.Dv NULL
112if an error occurs, in particular if memory allocation fails.
113.Sh SEE ALSO
114.Xr ASN1_BIT_STRING_new 3 ,
115.Xr ASN1_BIT_STRING_set 3 ,
116.Xr i2s_ASN1_ENUMERATED_TABLE 3 ,
117.Xr STACK_OF 3 ,
118.Xr tls_peer_ocsp_crl_reason 3 ,
119.Xr X509_get_key_usage 3 ,
120.Xr X509V3_EXT_get_nid 3 ,
121.Xr X509V3_get_d2i 3 ,
122.Xr X509V3_parse_list 3
123.Sh HISTORY
124These functions first appeared in OpenSSL 0.9.8 and have been available since
125.Ox 4.5 .