New peername element in X509_VERIFY_PARAM_ID
[openssl.git] / crypto / x509 / x509_vpm.c
index d95943c22c0b0505bae06305f67d3b975fa5abb7..2a0a774c8f054b4fc6952830929e1e7385bc5d00 100644 (file)
@@ -149,6 +149,8 @@ static void x509_verify_param_zero(X509_VERIFY_PARAM *param)
                string_stack_free(paramid->hosts);
                paramid->hosts = NULL;
                }
+       if (paramid->peername)
+               OPENSSL_free(paramid->peername);
        if (paramid->email)
                {
                OPENSSL_free(paramid->email);
@@ -482,6 +484,11 @@ void X509_VERIFY_PARAM_set_hostflags(X509_VERIFY_PARAM *param,
        param->id->hostflags = flags;
        }
 
+char *X509_VERIFY_PARAM_get0_peername(X509_VERIFY_PARAM *param)
+       {
+       return param->id->peername;
+       }
+
 int X509_VERIFY_PARAM_set1_email(X509_VERIFY_PARAM *param,
                                const unsigned char *email, size_t emaillen)
        {
@@ -517,7 +524,7 @@ const char *X509_VERIFY_PARAM_get0_name(const X509_VERIFY_PARAM *param)
        return param->name;
        }
 
-static X509_VERIFY_PARAM_ID _empty_id = {NULL, 0U, NULL, 0, NULL, 0};
+static X509_VERIFY_PARAM_ID _empty_id = {NULL, 0U, NULL, NULL, 0, NULL, 0};
 
 #define vpm_empty_id (X509_VERIFY_PARAM_ID *)&_empty_id