summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjsing <>2017-03-10 15:16:20 +0000
committerjsing <>2017-03-10 15:16:20 +0000
commit1cc414278817073fb56449c3b1ad7386acb12601 (patch)
tree2eda6f5591b3e034e7532c3961f4b54f38bdf3ba
parentb780869a8a125d401ae824d507f25f3bf53f3707 (diff)
downloadopenbsd-1cc414278817073fb56449c3b1ad7386acb12601.tar.gz
openbsd-1cc414278817073fb56449c3b1ad7386acb12601.tar.bz2
openbsd-1cc414278817073fb56449c3b1ad7386acb12601.zip
Switch CBB to use recallocarray() - this ensures that we do not leak
secrets via realloc(). ok inoguchi@
-rw-r--r--src/lib/libssl/bs_cbb.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lib/libssl/bs_cbb.c b/src/lib/libssl/bs_cbb.c
index 3f8e08e0e3..a84299f8a2 100644
--- a/src/lib/libssl/bs_cbb.c
+++ b/src/lib/libssl/bs_cbb.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: bs_cbb.c,v 1.13 2015/09/01 13:35:39 jsing Exp $ */ 1/* $OpenBSD: bs_cbb.c,v 1.14 2017/03/10 15:16:20 jsing Exp $ */
2/* 2/*
3 * Copyright (c) 2014, Google Inc. 3 * Copyright (c) 2014, Google Inc.
4 * 4 *
@@ -110,7 +110,7 @@ cbb_buffer_add(struct cbb_buffer_st *base, uint8_t **out, size_t len)
110 if (newcap < base->cap || newcap < newlen) 110 if (newcap < base->cap || newcap < newlen)
111 newcap = newlen; 111 newcap = newlen;
112 112
113 newbuf = realloc(base->buf, newcap); 113 newbuf = recallocarray(base->buf, base->cap, newcap, 1);
114 if (newbuf == NULL) 114 if (newbuf == NULL)
115 return 0; 115 return 0;
116 116