diff options
| author | Sam Varshavchik | 2018-09-26 08:12:19 -0400 | 
|---|---|---|
| committer | Sam Varshavchik | 2018-09-26 08:12:19 -0400 | 
| commit | 9e7f4cb275f04c59dd187b4a39b00832d2b2817e (patch) | |
| tree | 02802ac8d874abacc2486042aad71d4e9ec056a7 /tcpd | |
| parent | ec5264047dfaf66c61cd0f4c9b8dd40463693722 (diff) | |
| download | courier-libs-9e7f4cb275f04c59dd187b4a39b00832d2b2817e.tar.bz2 | |
Additional fixes.
Diffstat (limited to 'tcpd')
| -rw-r--r-- | tcpd/libcouriergnutls.c | 6 | ||||
| -rw-r--r-- | tcpd/libcouriertls.c | 7 | 
2 files changed, 8 insertions, 5 deletions
| diff --git a/tcpd/libcouriergnutls.c b/tcpd/libcouriergnutls.c index da57d1f..7f65b04 100644 --- a/tcpd/libcouriergnutls.c +++ b/tcpd/libcouriergnutls.c @@ -1151,8 +1151,6 @@ static int get_client_cert(gnutls_session_t session,  	{  		rc=set_cert(ssl, session, st, certfilename, keyfilename);  		free(certfilename); -		if (keyfilename) -			free(keyfilename);  	}  	else  	{ @@ -1161,6 +1159,10 @@ static int get_client_cert(gnutls_session_t session,  		if (rc > 0)  			rc=0;  	} + +	if (keyfilename) +		free(keyfilename); +  	return rc;  } diff --git a/tcpd/libcouriertls.c b/tcpd/libcouriertls.c index 2eb2f96..03f819c 100644 --- a/tcpd/libcouriertls.c +++ b/tcpd/libcouriertls.c @@ -346,6 +346,7 @@ static char *get_servername_concated_readable_file(const char *filename,  	char *p;  	if (!filename || !servername) return NULL; +	if (!*filename || !*servername) return NULL;  	filename_buffer=malloc(strlen(filename)+strlen(servername)+2);  	if (!filename_buffer) @@ -376,11 +377,12 @@ static char *get_servername_concated_readable_file(const char *filename,  static char *get_ip_concated_readable_file(SSL_CTX *ctx, const char *filename, const char *ip)  { -	if (!filename || !ip) return NULL; -  	char *test_file;  	const struct tls_info *info=SSL_CTX_get_app_data(ctx); +	if (!filename || !ip) return NULL; +	if (!*filename || !*ip) return NULL; +  	test_file= malloc(strlen(filename)+strlen(ip)+2);  	if (!test_file)  	{ @@ -452,7 +454,6 @@ static int process_certfile(SSL_CTX *ctx, const char *certfile,  			return rc;  		} -		free(test_file);  		if (test_private_key_file) free(test_private_key_file);  	} | 
