From 04fa8f58f98362127ab08a7a5b8bbe39eaeb9b08 Mon Sep 17 00:00:00 2001 From: "7u83@mail.ru" <7u83@mail.ru@noemail.net> Date: Tue, 13 Jan 2015 19:53:39 +0000 Subject: [PATCH] Cetching segfault, if no password for pem key given. FossilOrigin-Name: a996a773e8001040020a438ab2a71ba646f1dff16b886989d1f9a189e00514e9 --- src/capwap/dtls_openssl.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/capwap/dtls_openssl.c b/src/capwap/dtls_openssl.c index 959495d5..4b0f71d9 100644 --- a/src/capwap/dtls_openssl.c +++ b/src/capwap/dtls_openssl.c @@ -50,9 +50,14 @@ static void dtls_debug_cb(int write_p,int version,int type, const void * buf,siz int pem_passwd_cb(char *buf, int size, int rwflag, void *password) { - strncpy(buf, (char *)(password), size); - buf[size - 1] = '\0'; - return(strlen(buf)); + if (!password){ + cw_dbg(DBG_DTLS, "DTLS - No password given to decrypt privat key"); + return 0; + } + + strncpy(buf, (char *)(password), size); + buf[size - 1] = '\0'; + return(strlen(buf)); } /* Set up ephemeral RSA stuff */