diff options
author | Ben Laurie <ben@links.org> | 2014-05-20 13:52:31 +0100 |
---|---|---|
committer | Ben Laurie <ben@links.org> | 2014-05-20 13:53:35 +0100 |
commit | 4ceb430a468e8226175aa3f169c0e746877c17e1 (patch) | |
tree | be6e77c4a66a181121247afe83e077f76de16968 /crypto/buffer | |
parent | 81ce94f8dc4ed4dd6d7ed7f53734f9355aed3ce5 (diff) |
Don't allocate more than is needed in BUF_strndup().
Diffstat (limited to 'crypto/buffer')
-rw-r--r-- | crypto/buffer/buf_str.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/crypto/buffer/buf_str.c b/crypto/buffer/buf_str.c index 151f5ea971..84236c7671 100644 --- a/crypto/buffer/buf_str.c +++ b/crypto/buffer/buf_str.c @@ -69,9 +69,14 @@ char *BUF_strdup(const char *str) char *BUF_strndup(const char *str, size_t siz) { char *ret; + size_t len; if (str == NULL) return(NULL); + len = strlen(str); + if (siz > len) + siz = len; + ret=OPENSSL_malloc(siz+1); if (ret == NULL) { |