diff options
Diffstat (limited to 'src/lib/libcrypto/buffer/buffer.c')
-rw-r--r-- | src/lib/libcrypto/buffer/buffer.c | 31 |
1 files changed, 6 insertions, 25 deletions
diff --git a/src/lib/libcrypto/buffer/buffer.c b/src/lib/libcrypto/buffer/buffer.c index 3bf03c7eff..d96487e7db 100644 --- a/src/lib/libcrypto/buffer/buffer.c +++ b/src/lib/libcrypto/buffer/buffer.c | |||
@@ -149,7 +149,7 @@ int BUF_MEM_grow_clean(BUF_MEM *str, int len) | |||
149 | ret=OPENSSL_realloc_clean(str->data,str->max,n); | 149 | ret=OPENSSL_realloc_clean(str->data,str->max,n); |
150 | if (ret == NULL) | 150 | if (ret == NULL) |
151 | { | 151 | { |
152 | BUFerr(BUF_F_BUF_MEM_GROW_CLEAN,ERR_R_MALLOC_FAILURE); | 152 | BUFerr(BUF_F_BUF_MEM_GROW,ERR_R_MALLOC_FAILURE); |
153 | len=0; | 153 | len=0; |
154 | } | 154 | } |
155 | else | 155 | else |
@@ -164,41 +164,22 @@ int BUF_MEM_grow_clean(BUF_MEM *str, int len) | |||
164 | 164 | ||
165 | char *BUF_strdup(const char *str) | 165 | char *BUF_strdup(const char *str) |
166 | { | 166 | { |
167 | if (str == NULL) return(NULL); | ||
168 | return BUF_strndup(str, strlen(str)); | ||
169 | } | ||
170 | |||
171 | char *BUF_strndup(const char *str, size_t siz) | ||
172 | { | ||
173 | char *ret; | 167 | char *ret; |
168 | int n; | ||
174 | 169 | ||
175 | if (str == NULL) return(NULL); | 170 | if (str == NULL) return(NULL); |
176 | 171 | ||
177 | ret=OPENSSL_malloc(siz+1); | 172 | n=strlen(str); |
173 | ret=OPENSSL_malloc(n+1); | ||
178 | if (ret == NULL) | 174 | if (ret == NULL) |
179 | { | 175 | { |
180 | BUFerr(BUF_F_BUF_STRNDUP,ERR_R_MALLOC_FAILURE); | 176 | BUFerr(BUF_F_BUF_STRDUP,ERR_R_MALLOC_FAILURE); |
181 | return(NULL); | 177 | return(NULL); |
182 | } | 178 | } |
183 | BUF_strlcpy(ret,str,siz+1); | 179 | memcpy(ret,str,n+1); |
184 | return(ret); | 180 | return(ret); |
185 | } | 181 | } |
186 | 182 | ||
187 | void *BUF_memdup(const void *data, size_t siz) | ||
188 | { | ||
189 | void *ret; | ||
190 | |||
191 | if (data == NULL) return(NULL); | ||
192 | |||
193 | ret=OPENSSL_malloc(siz); | ||
194 | if (ret == NULL) | ||
195 | { | ||
196 | BUFerr(BUF_F_BUF_MEMDUP,ERR_R_MALLOC_FAILURE); | ||
197 | return(NULL); | ||
198 | } | ||
199 | return memcpy(ret, data, siz); | ||
200 | } | ||
201 | |||
202 | size_t BUF_strlcpy(char *dst, const char *src, size_t size) | 183 | size_t BUF_strlcpy(char *dst, const char *src, size_t size) |
203 | { | 184 | { |
204 | size_t l = 0; | 185 | size_t l = 0; |