store and print out message digest peer signed with in TLS 1.2
diff --git a/ssl/s3_lib.c b/ssl/s3_lib.c
index 0147e41..9484a76 100644
--- a/ssl/s3_lib.c
+++ b/ssl/s3_lib.c
@@ -3458,6 +3458,25 @@
case SSL_CTRL_SET_CHAIN_CERT_STORE:
return ssl_cert_set_cert_store(s->cert, parg, 1, larg);
+ case SSL_CTRL_GET_PEER_SIGNATURE_NID:
+ if (TLS1_get_version(s) >= TLS1_2_VERSION)
+ {
+ if (s->session && s->session->sess_cert)
+ {
+ const EVP_MD *sig;
+ sig = s->session->sess_cert->peer_key->digest;
+ if (sig)
+ {
+ *(int *)parg = EVP_MD_type(sig);
+ return 1;
+ }
+ }
+ return 0;
+ }
+ /* Might want to do something here for other versions */
+ else
+ return 0;
+
default:
break;
}