diff options
Diffstat (limited to 'src/lib/libcrypto/x509/x509_v3.c')
| -rw-r--r-- | src/lib/libcrypto/x509/x509_v3.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/lib/libcrypto/x509/x509_v3.c b/src/lib/libcrypto/x509/x509_v3.c index 67b1796a92..42e6f0ab05 100644 --- a/src/lib/libcrypto/x509/x509_v3.c +++ b/src/lib/libcrypto/x509/x509_v3.c | |||
| @@ -147,7 +147,13 @@ STACK_OF(X509_EXTENSION) *X509v3_add_ext(STACK_OF(X509_EXTENSION) **x, | |||
| 147 | int n; | 147 | int n; |
| 148 | STACK_OF(X509_EXTENSION) *sk=NULL; | 148 | STACK_OF(X509_EXTENSION) *sk=NULL; |
| 149 | 149 | ||
| 150 | if ((x != NULL) && (*x == NULL)) | 150 | if (x == NULL) |
| 151 | { | ||
| 152 | X509err(X509_F_X509V3_ADD_EXT,ERR_R_PASSED_NULL_PARAMETER); | ||
| 153 | goto err2; | ||
| 154 | } | ||
| 155 | |||
| 156 | if (*x == NULL) | ||
| 151 | { | 157 | { |
| 152 | if ((sk=sk_X509_EXTENSION_new_null()) == NULL) | 158 | if ((sk=sk_X509_EXTENSION_new_null()) == NULL) |
| 153 | goto err; | 159 | goto err; |
| @@ -163,7 +169,7 @@ STACK_OF(X509_EXTENSION) *X509v3_add_ext(STACK_OF(X509_EXTENSION) **x, | |||
| 163 | goto err2; | 169 | goto err2; |
| 164 | if (!sk_X509_EXTENSION_insert(sk,new_ex,loc)) | 170 | if (!sk_X509_EXTENSION_insert(sk,new_ex,loc)) |
| 165 | goto err; | 171 | goto err; |
| 166 | if ((x != NULL) && (*x == NULL)) | 172 | if (*x == NULL) |
| 167 | *x=sk; | 173 | *x=sk; |
| 168 | return(sk); | 174 | return(sk); |
| 169 | err: | 175 | err: |
