summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/asn1/a_bytes.c
diff options
context:
space:
mode:
authortedu <>2014-07-09 22:55:17 +0000
committertedu <>2014-07-09 22:55:17 +0000
commit5ec69e74aa00653b339f3f526529cd3c926c657a (patch)
tree1abb2b63f090ef7e75fd385ebcb478b3f21f5c06 /src/lib/libcrypto/asn1/a_bytes.c
parent555f9c8f48cb40e936e75dc7774680f7ba3e608d (diff)
downloadopenbsd-5ec69e74aa00653b339f3f526529cd3c926c657a.tar.gz
openbsd-5ec69e74aa00653b339f3f526529cd3c926c657a.tar.bz2
openbsd-5ec69e74aa00653b339f3f526529cd3c926c657a.zip
ASN1_STRING_free can handle NULL, so callers don't need to check. ok miod
Diffstat (limited to 'src/lib/libcrypto/asn1/a_bytes.c')
-rw-r--r--src/lib/libcrypto/asn1/a_bytes.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/lib/libcrypto/asn1/a_bytes.c b/src/lib/libcrypto/asn1/a_bytes.c
index 5b669bf07a..61910be5fe 100644
--- a/src/lib/libcrypto/asn1/a_bytes.c
+++ b/src/lib/libcrypto/asn1/a_bytes.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: a_bytes.c,v 1.14 2014/06/12 15:49:27 deraadt Exp $ */ 1/* $OpenBSD: a_bytes.c,v 1.15 2014/07/09 22:55:17 tedu Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -121,7 +121,7 @@ d2i_ASN1_type_bytes(ASN1_STRING **a, const unsigned char **pp,
121 121
122err: 122err:
123 ASN1err(ASN1_F_D2I_ASN1_TYPE_BYTES, i); 123 ASN1err(ASN1_F_D2I_ASN1_TYPE_BYTES, i);
124 if ((ret != NULL) && ((a == NULL) || (*a != ret))) 124 if (a == NULL || *a != ret)
125 ASN1_STRING_free(ret); 125 ASN1_STRING_free(ret);
126 return (NULL); 126 return (NULL);
127} 127}
@@ -230,7 +230,7 @@ d2i_ASN1_bytes(ASN1_STRING **a, const unsigned char **pp,
230 return (ret); 230 return (ret);
231 231
232err: 232err:
233 if ((ret != NULL) && ((a == NULL) || (*a != ret))) 233 if (a == NULL || *a != ret)
234 ASN1_STRING_free(ret); 234 ASN1_STRING_free(ret);
235 ASN1err(ASN1_F_D2I_ASN1_BYTES, i); 235 ASN1err(ASN1_F_D2I_ASN1_BYTES, i);
236 return (NULL); 236 return (NULL);
@@ -292,14 +292,12 @@ asn1_collate_primitive(ASN1_STRING *a, ASN1_const_CTX *c)
292 a->length = num; 292 a->length = num;
293 free(a->data); 293 free(a->data);
294 a->data = (unsigned char *)b.data; 294 a->data = (unsigned char *)b.data;
295 if (os != NULL) 295 ASN1_STRING_free(os);
296 ASN1_STRING_free(os);
297 return (1); 296 return (1);
298 297
299err: 298err:
300 ASN1err(ASN1_F_ASN1_COLLATE_PRIMITIVE, c->error); 299 ASN1err(ASN1_F_ASN1_COLLATE_PRIMITIVE, c->error);
301 if (os != NULL) 300 ASN1_STRING_free(os);
302 ASN1_STRING_free(os);
303 free(b.data); 301 free(b.data);
304 return (0); 302 return (0);
305} 303}