Support multi-valued signatures in CSRs.
authorDamien Goutte-Gattat via Gnupg-devel <gnupg-devel@gnupg.org>
Fri, 16 Nov 2018 01:27:38 +0000 (01:27 +0000)
committerNIIBE Yutaka <gniibe@fsij.org>
Wed, 13 Feb 2019 23:57:20 +0000 (08:57 +0900)
commit98882064f45778927d38c6fdbe008f5858b36813
tree7e0fad7650b834c3f1027d4d9960dbaae558bac2
parent3f99f332ada603468eb30d77649c4fdf84b383e6
Support multi-valued signatures in CSRs.

* src/certreq.c (ksba_certreq_set_sig_val): Support signatures
made of several values.
--

The current implementation of ksba_certreq_set_sig_val takes
only the first MPI value in the provided S-expression to build
the CSR signature. This is enough for RSA, but not for ECDSA
since a ECDSA signature is made of two values.

This patch makes sure all values are taken into account. It
also partially replaces some of the ad-hoc parsing code by
the helper functions defined in sexp-parse.h.

GnuPG-bug-id: 4092
Signed-off-by: Damien Goutte-Gattat <dgouttegattat@incenp.org>
src/certreq.c