From: Viktor Dukhovni Date: Sun, 23 Mar 2025 07:50:39 +0000 (+1100) Subject: Report IANA sigalg name in s_client X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=681528cbc41278a7bdc662cdb1ab286e07170a90;p=thirdparty%2Fopenssl.git Report IANA sigalg name in s_client Reviewed-by: Dmitry Belyavskiy Reviewed-by: Paul Dale Reviewed-by: Paul Yang Reviewed-by: Nicola Tuveri Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/27128) --- diff --git a/apps/lib/s_cb.c b/apps/lib/s_cb.c index 5aa57ea5fd4..9641e369e62 100644 --- a/apps/lib/s_cb.c +++ b/apps/lib/s_cb.c @@ -328,6 +328,7 @@ static int do_print_sigalgs(BIO *out, SSL *s, int shared) int ssl_print_sigalgs(BIO *out, SSL *s) { + const char *name; int nid; if (!SSL_is_server(s)) @@ -336,7 +337,9 @@ int ssl_print_sigalgs(BIO *out, SSL *s) do_print_sigalgs(out, s, 1); if (SSL_get_peer_signature_nid(s, &nid) && nid != NID_undef) BIO_printf(out, "Peer signing digest: %s\n", OBJ_nid2sn(nid)); - if (SSL_get_peer_signature_type_nid(s, &nid)) + if (SSL_get0_peer_signature_name(s, &name)) + BIO_printf(out, "Peer signature type: %s\n", name); + else if (SSL_get_peer_signature_type_nid(s, &nid)) BIO_printf(out, "Peer signature type: %s\n", get_sigtype(nid)); return 1; }