-.\" $OpenBSD: ECDSA_SIG_new.3,v 1.15 2019/08/25 14:11:41 schwarze Exp $
+.\" $OpenBSD: ECDSA_SIG_new.3,v 1.16 2023/03/06 13:34:53 tb Exp $
.\" full merge up to: OpenSSL e9b77246 Jan 20 19:58:49 2017 +0100
.\" selective merge up to: OpenSSL da4ea0cf Aug 5 16:13:24 2019 +0100
.\"
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
.\" OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd $Mdocdate: August 25 2019 $
+.Dd $Mdocdate: March 6 2023 $
.Dt ECDSA_SIG_NEW 3
.Os
.Sh NAME
.Nm ECDSA_SIG_new ,
.Nm ECDSA_SIG_free ,
.Nm ECDSA_SIG_get0 ,
+.Nm ECDSA_SIG_get0_r ,
+.Nm ECDSA_SIG_get0_s ,
.Nm ECDSA_SIG_set0 ,
.Nm i2d_ECDSA_SIG ,
.Nm d2i_ECDSA_SIG ,
.Fa "const BIGNUM **r"
.Fa "const BIGNUM **s"
.Fc
+.Ft "const BIGNUM *"
+.Fo ECDSA_SIG_get0_r
+.Fa "const ECDSA_SIG *sig"
+.Fc
+.Ft "const BIGNUM *"
+.Fo ECDSA_SIG_get0_s
+.Fa "const ECDSA_SIG *sig"
+.Fc
.Ft int
.Fo ECDSA_SIG_set0
.Fa "ECDSA_SIG *sig"
.Fa s
values contained in
.Fa sig .
+The values
+.Fa r
+and
+.Fa s
+can also be retrieved separately by the corresponding function
+.Fn ECDSA_SIG_get0_r
+and
+.Fn ECDSA_SIG_get0_s ,
+respectively.
.Pp
.Fn ECDSA_SIG_set0
sets the
.Fn ECDSA_size
returns the maximum length signature or 0 on error.
.Pp
+.Fn ECDSA_SIG_get0_r
+and
+.Fn ECDSA_SIG_get0_s
+return a pointer owned by the
+.Vt ECDSA_SIG
+object if it has been set or
+.Dv NULL
+otherwise.
+.Pp
.Fn ECDSA_SIG_set0 ,
.Fn ECDSA_sign ,
.Fn ECDSA_sign_ex ,
.Fn ECDSA_SIG_set0
first appeared in OpenSSL 1.1.0 and have been available since
.Ox 6.3 .
+.Fn ECDSA_SIG_get0_r
+and
+.Fn ECDSA_SIG_get0_s
+first appeared in OpenSSL 1.1.0 and have been available since
+.Ox 7.1 .
.Sh AUTHORS
.An Nils Larsch
for the OpenSSL project.