diff options
Diffstat (limited to 'src/lib/libcrypto/x509v3/v3_info.c')
| -rw-r--r-- | src/lib/libcrypto/x509v3/v3_info.c | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/src/lib/libcrypto/x509v3/v3_info.c b/src/lib/libcrypto/x509v3/v3_info.c index 34ffb1c539..27b5415b2a 100644 --- a/src/lib/libcrypto/x509v3/v3_info.c +++ b/src/lib/libcrypto/x509v3/v3_info.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: v3_info.c,v 1.24 2016/12/30 15:54:49 jsing Exp $ */ | 1 | /* $OpenBSD: v3_info.c,v 1.25 2017/01/29 17:49:23 beck Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 1999. | 3 | * project 1999. |
| 4 | */ | 4 | */ |
| @@ -221,8 +221,7 @@ i2v_AUTHORITY_INFO_ACCESS(X509V3_EXT_METHOD *method, | |||
| 221 | nlen = strlen(objtmp) + strlen(vtmp->name) + 5; | 221 | nlen = strlen(objtmp) + strlen(vtmp->name) + 5; |
| 222 | ntmp = malloc(nlen); | 222 | ntmp = malloc(nlen); |
| 223 | if (!ntmp) { | 223 | if (!ntmp) { |
| 224 | X509V3err(X509V3_F_I2V_AUTHORITY_INFO_ACCESS, | 224 | X509V3error(ERR_R_MALLOC_FAILURE); |
| 225 | ERR_R_MALLOC_FAILURE); | ||
| 226 | return NULL; | 225 | return NULL; |
| 227 | } | 226 | } |
| 228 | strlcpy(ntmp, objtmp, nlen); | 227 | strlcpy(ntmp, objtmp, nlen); |
| @@ -248,27 +247,23 @@ v2i_AUTHORITY_INFO_ACCESS(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, | |||
| 248 | char *objtmp, *ptmp; | 247 | char *objtmp, *ptmp; |
| 249 | 248 | ||
| 250 | if (!(ainfo = sk_ACCESS_DESCRIPTION_new_null())) { | 249 | if (!(ainfo = sk_ACCESS_DESCRIPTION_new_null())) { |
| 251 | X509V3err(X509V3_F_V2I_AUTHORITY_INFO_ACCESS, | 250 | X509V3error(ERR_R_MALLOC_FAILURE); |
| 252 | ERR_R_MALLOC_FAILURE); | ||
| 253 | return NULL; | 251 | return NULL; |
| 254 | } | 252 | } |
| 255 | for (i = 0; i < sk_CONF_VALUE_num(nval); i++) { | 253 | for (i = 0; i < sk_CONF_VALUE_num(nval); i++) { |
| 256 | cnf = sk_CONF_VALUE_value(nval, i); | 254 | cnf = sk_CONF_VALUE_value(nval, i); |
| 257 | if ((acc = ACCESS_DESCRIPTION_new()) == NULL) { | 255 | if ((acc = ACCESS_DESCRIPTION_new()) == NULL) { |
| 258 | X509V3err(X509V3_F_V2I_AUTHORITY_INFO_ACCESS, | 256 | X509V3error(ERR_R_MALLOC_FAILURE); |
| 259 | ERR_R_MALLOC_FAILURE); | ||
| 260 | goto err; | 257 | goto err; |
| 261 | } | 258 | } |
| 262 | if (sk_ACCESS_DESCRIPTION_push(ainfo, acc) == 0) { | 259 | if (sk_ACCESS_DESCRIPTION_push(ainfo, acc) == 0) { |
| 263 | ACCESS_DESCRIPTION_free(acc); | 260 | ACCESS_DESCRIPTION_free(acc); |
| 264 | X509V3err(X509V3_F_V2I_AUTHORITY_INFO_ACCESS, | 261 | X509V3error(ERR_R_MALLOC_FAILURE); |
| 265 | ERR_R_MALLOC_FAILURE); | ||
| 266 | goto err; | 262 | goto err; |
| 267 | } | 263 | } |
| 268 | ptmp = strchr(cnf->name, ';'); | 264 | ptmp = strchr(cnf->name, ';'); |
| 269 | if (!ptmp) { | 265 | if (!ptmp) { |
| 270 | X509V3err(X509V3_F_V2I_AUTHORITY_INFO_ACCESS, | 266 | X509V3error(X509V3_R_INVALID_SYNTAX); |
| 271 | X509V3_R_INVALID_SYNTAX); | ||
| 272 | goto err; | 267 | goto err; |
| 273 | } | 268 | } |
| 274 | objlen = ptmp - cnf->name; | 269 | objlen = ptmp - cnf->name; |
| @@ -277,15 +272,13 @@ v2i_AUTHORITY_INFO_ACCESS(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, | |||
| 277 | if (!v2i_GENERAL_NAME_ex(acc->location, method, ctx, &ctmp, 0)) | 272 | if (!v2i_GENERAL_NAME_ex(acc->location, method, ctx, &ctmp, 0)) |
| 278 | goto err; | 273 | goto err; |
| 279 | if (!(objtmp = malloc(objlen + 1))) { | 274 | if (!(objtmp = malloc(objlen + 1))) { |
| 280 | X509V3err(X509V3_F_V2I_AUTHORITY_INFO_ACCESS, | 275 | X509V3error(ERR_R_MALLOC_FAILURE); |
| 281 | ERR_R_MALLOC_FAILURE); | ||
| 282 | goto err; | 276 | goto err; |
| 283 | } | 277 | } |
| 284 | strlcpy(objtmp, cnf->name, objlen + 1); | 278 | strlcpy(objtmp, cnf->name, objlen + 1); |
| 285 | acc->method = OBJ_txt2obj(objtmp, 0); | 279 | acc->method = OBJ_txt2obj(objtmp, 0); |
| 286 | if (!acc->method) { | 280 | if (!acc->method) { |
| 287 | X509V3err(X509V3_F_V2I_AUTHORITY_INFO_ACCESS, | 281 | X509V3error(X509V3_R_BAD_OBJECT); |
| 288 | X509V3_R_BAD_OBJECT); | ||
| 289 | ERR_asprintf_error_data("value=%s", objtmp); | 282 | ERR_asprintf_error_data("value=%s", objtmp); |
| 290 | free(objtmp); | 283 | free(objtmp); |
| 291 | goto err; | 284 | goto err; |
