vmxnet3: make descriptor count checks more robust
[freebsd.git] / secure / lib / libcrypto / man / man3 / DSA_do_sign.3
1 .\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.42)
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 .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"
63 ..
64 .        if !\nF==2 \{\
65 .            nr % 0
66 .            nr F 2
67 .        \}
68 .    \}
69 .\}
70 .rr rF
71 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
72 .    \" fudge factors for nroff and troff
73 .if n \{\
74 .    ds #H 0
75 .    ds #V .8m
76 .    ds #F .3m
77 .    ds #[ \f1
78 .    ds #] \fP
79 .\}
80 .if t \{\
81 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
82 .    ds #V .6m
83 .    ds #F 0
84 .    ds #[ \&
85 .    ds #] \&
86 .\}
87 .    \" simple accents for nroff and troff
88 .if n \{\
89 .    ds ' \&
90 .    ds ` \&
91 .    ds ^ \&
92 .    ds , \&
93 .    ds ~ ~
94 .    ds /
95 .\}
96 .if t \{\
97 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
98 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
99 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
100 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
101 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
102 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
103 .\}
104 .    \" troff and (daisy-wheel) nroff accents
105 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
106 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
107 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
108 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
109 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
110 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
111 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
112 .ds ae a\h'-(\w'a'u*4/10)'e
113 .ds Ae A\h'-(\w'A'u*4/10)'E
114 .    \" corrections for vroff
115 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
116 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
117 .    \" for low resolution devices (crt and lpr)
118 .if \n(.H>23 .if \n(.V>19 \
119 \{\
120 .    ds : e
121 .    ds 8 ss
122 .    ds o a
123 .    ds d- d\h'-1'\(ga
124 .    ds D- D\h'-1'\(hy
125 .    ds th \o'bp'
126 .    ds Th \o'LP'
127 .    ds ae ae
128 .    ds Ae AE
129 .\}
130 .rm #[ #] #H #V #F C
131 .\" ========================================================================
132 .\"
133 .IX Title "DSA_DO_SIGN 3ossl"
134 .TH DSA_DO_SIGN 3ossl "2023-09-19" "3.0.11" "OpenSSL"
135 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
136 .\" way too many mistakes in technical documents.
137 .if n .ad l
138 .nh
139 .SH "NAME"
140 DSA_do_sign, DSA_do_verify \- raw DSA signature operations
141 .SH "SYNOPSIS"
142 .IX Header "SYNOPSIS"
143 .Vb 1
144 \& #include <openssl/dsa.h>
145 .Ve
146 .PP
147 The following functions have been deprecated since OpenSSL 3.0, and can be
148 hidden entirely by defining \fB\s-1OPENSSL_API_COMPAT\s0\fR with a suitable version value,
149 see \fBopenssl_user_macros\fR\|(7):
150 .PP
151 .Vb 1
152 \& DSA_SIG *DSA_do_sign(const unsigned char *dgst, int dlen, DSA *dsa);
153 \&
154 \& int DSA_do_verify(const unsigned char *dgst, int dgst_len,
155 \&                   DSA_SIG *sig, DSA *dsa);
156 .Ve
157 .SH "DESCRIPTION"
158 .IX Header "DESCRIPTION"
159 All of the functions described on this page are deprecated.
160 Applications should instead use \fBEVP_PKEY_sign_init\fR\|(3), \fBEVP_PKEY_sign\fR\|(3),
161 \&\fBEVP_PKEY_verify_init\fR\|(3) and \fBEVP_PKEY_verify\fR\|(3).
162 .PP
163 \&\fBDSA_do_sign()\fR computes a digital signature on the \fBlen\fR byte message
164 digest \fBdgst\fR using the private key \fBdsa\fR and returns it in a
165 newly allocated \fB\s-1DSA_SIG\s0\fR structure.
166 .PP
167 \&\fBDSA_sign_setup\fR\|(3) may be used to precompute part
168 of the signing operation in case signature generation is
169 time-critical.
170 .PP
171 \&\fBDSA_do_verify()\fR verifies that the signature \fBsig\fR matches a given
172 message digest \fBdgst\fR of size \fBlen\fR.  \fBdsa\fR is the signer's public
173 key.
174 .SH "RETURN VALUES"
175 .IX Header "RETURN VALUES"
176 \&\fBDSA_do_sign()\fR returns the signature, \s-1NULL\s0 on error.  \fBDSA_do_verify()\fR
177 returns 1 for a valid signature, 0 for an incorrect signature and \-1
178 on error. The error codes can be obtained by
179 \&\fBERR_get_error\fR\|(3).
180 .SH "SEE ALSO"
181 .IX Header "SEE ALSO"
182 \&\fBDSA_new\fR\|(3), \fBERR_get_error\fR\|(3), \fBRAND_bytes\fR\|(3),
183 \&\fBDSA_SIG_new\fR\|(3),
184 \&\fBDSA_sign\fR\|(3)
185 .SH "HISTORY"
186 .IX Header "HISTORY"
187 All of these functions were deprecated in OpenSSL 3.0.
188 .SH "COPYRIGHT"
189 .IX Header "COPYRIGHT"
190 Copyright 2000\-2021 The OpenSSL Project Authors. All Rights Reserved.
191 .PP
192 Licensed under the Apache License 2.0 (the \*(L"License\*(R").  You may not use
193 this file except in compliance with the License.  You can obtain a copy
194 in the file \s-1LICENSE\s0 in the source distribution or at
195 <https://www.openssl.org/source/license.html>.