summaryrefslogtreecommitdiffstats
path: root/src/openvpn/cryptoapi.c
diff options
context:
space:
mode:
authorSteffan Karger <steffan@karger.me>2015-09-21 20:48:33 +0200
committerGert Doering <gert@greenie.muc.de>2015-10-04 21:58:06 +0200
commit6d4920e9d36675ff515da17c1eb301d22d07b489 (patch)
tree419f752e1c0176146a5c230426f6ada452b10f57 /src/openvpn/cryptoapi.c
parent60287662bbdb1a29d9bd6244917a050410fa6b49 (diff)
downloadopenvpn-6d4920e9d36675ff515da17c1eb301d22d07b489.tar.gz
openvpn-6d4920e9d36675ff515da17c1eb301d22d07b489.tar.xz
openvpn-6d4920e9d36675ff515da17c1eb301d22d07b489.zip
Replace strdup() calls for string_alloc() calls
As reported by Bill Parker in trac #600, strdup() return values are not always correctly checked for failed allocations. This patch adds missing checks by using string_alloc(), which performs the required checks. Signed-off-by: Steffan Karger <steffan@karger.me> Acked-by: Gert Doering <gert@greenie.muc.de> Message-Id: <561130FC.8090008@karger.me> URL: http://article.gmane.org/gmane.network.openvpn.devel/10176 Signed-off-by: Gert Doering <gert@greenie.muc.de> (cherry picked from commit ddc7692d245017c71adc40ad5cc195617e39fce0)
Diffstat (limited to 'src/openvpn/cryptoapi.c')
-rw-r--r--src/openvpn/cryptoapi.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/openvpn/cryptoapi.c b/src/openvpn/cryptoapi.c
index b7fc11e..1d54ee7 100644
--- a/src/openvpn/cryptoapi.c
+++ b/src/openvpn/cryptoapi.c
@@ -46,6 +46,8 @@
#include <ctype.h>
#include <assert.h>
+#include "buffer.h"
+
/* MinGW w32api 3.17 is still incomplete when it comes to CryptoAPI while
* MinGW32-w64 defines all macros used. This is a hack around that problem.
*/
@@ -116,7 +118,7 @@ static char *ms_error_text(DWORD ms_err)
(LPTSTR) &lpMsgBuf, 0, NULL);
if (lpMsgBuf) {
char *p;
- rv = strdup(lpMsgBuf);
+ rv = string_alloc(lpMsgBuf, NULL);
LocalFree(lpMsgBuf);
/* trim to the left */
if (rv)