summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortb <>2018-08-24 19:16:03 +0000
committertb <>2018-08-24 19:16:03 +0000
commit2dec73f6172102deef727388b6788dc04fa0c164 (patch)
tree749ad996bc15435c83b92e7fe56f7384345ffdf0 /src
parent84fe391fb9021a6be2b592ffb9543ccc421a80be (diff)
downloadopenbsd-2dec73f6172102deef727388b6788dc04fa0c164.tar.gz
openbsd-2dec73f6172102deef727388b6788dc04fa0c164.tar.bz2
openbsd-2dec73f6172102deef727388b6788dc04fa0c164.zip
Let CRYPTO_mem_leaks{,_fp,_cb}() return -1.
These functions are no-ops. Their signature was changed by OpenSSL to allow error checking. This way we return an error and do not indicate the (non-)existence of memory leaks. tested in a bulk by sthen ok jsing
Diffstat (limited to 'src')
-rw-r--r--src/lib/libcrypto/crypto.h10
-rw-r--r--src/lib/libcrypto/mem_dbg.c14
2 files changed, 12 insertions, 12 deletions
diff --git a/src/lib/libcrypto/crypto.h b/src/lib/libcrypto/crypto.h
index be5f92b1a3..e614c6ad65 100644
--- a/src/lib/libcrypto/crypto.h
+++ b/src/lib/libcrypto/crypto.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: crypto.h,v 1.46 2018/05/13 13:48:08 jsing Exp $ */ 1/* $OpenBSD: crypto.h,v 1.47 2018/08/24 19:16:03 tb Exp $ */
2/* ==================================================================== 2/* ====================================================================
3 * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. 3 * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved.
4 * 4 *
@@ -495,11 +495,11 @@ long CRYPTO_dbg_get_options(void)
495 __attribute__ ((deprecated)); 495 __attribute__ ((deprecated));
496 496
497 497
498void CRYPTO_mem_leaks_fp(FILE *); 498int CRYPTO_mem_leaks_fp(FILE *);
499void CRYPTO_mem_leaks(struct bio_st *bio); 499int CRYPTO_mem_leaks(struct bio_st *bio);
500/* unsigned long order, char *file, int line, int num_bytes, char *addr */ 500/* unsigned long order, char *file, int line, int num_bytes, char *addr */
501typedef void *CRYPTO_MEM_LEAK_CB(unsigned long, const char *, int, int, void *); 501typedef int *CRYPTO_MEM_LEAK_CB(unsigned long, const char *, int, int, void *);
502void CRYPTO_mem_leaks_cb(CRYPTO_MEM_LEAK_CB *cb); 502int CRYPTO_mem_leaks_cb(CRYPTO_MEM_LEAK_CB *cb);
503 503
504/* die if we have to */ 504/* die if we have to */
505void OpenSSLDie(const char *file, int line, const char *assertion); 505void OpenSSLDie(const char *file, int line, const char *assertion);
diff --git a/src/lib/libcrypto/mem_dbg.c b/src/lib/libcrypto/mem_dbg.c
index cae02a6f21..64bc46a5dc 100644
--- a/src/lib/libcrypto/mem_dbg.c
+++ b/src/lib/libcrypto/mem_dbg.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: mem_dbg.c,v 1.22 2014/06/12 15:49:27 deraadt Exp $ */ 1/* $OpenBSD: mem_dbg.c,v 1.23 2018/08/24 19:16:03 tb 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 *
@@ -181,21 +181,21 @@ CRYPTO_dbg_realloc(void *addr1, void *addr2, int num,
181 abort(); 181 abort();
182} 182}
183 183
184void 184int
185CRYPTO_mem_leaks(BIO *b) 185CRYPTO_mem_leaks(BIO *b)
186{ 186{
187 return; 187 return -1;
188} 188}
189 189
190void 190int
191CRYPTO_mem_leaks_fp(FILE *fp) 191CRYPTO_mem_leaks_fp(FILE *fp)
192{ 192{
193 return; 193 return -1;
194} 194}
195 195
196 196
197void 197int
198CRYPTO_mem_leaks_cb(CRYPTO_MEM_LEAK_CB *cb) 198CRYPTO_mem_leaks_cb(CRYPTO_MEM_LEAK_CB *cb)
199{ 199{
200 return; 200 return -1;
201} 201}