Fix insufficient initialization in Curl_clone_ssl_config()
which could have caused a double free when reusing curl handle.
This commit is contained in:

committed by
Kamil Dudka

parent
1609685fc2
commit
abcea311e3
10
lib/sslgen.c
10
lib/sslgen.c
@@ -105,30 +105,40 @@ Curl_clone_ssl_config(struct ssl_config_data *source,
|
||||
if(!dest->CAfile)
|
||||
return FALSE;
|
||||
}
|
||||
else
|
||||
dest->CAfile = NULL;
|
||||
|
||||
if(source->CApath) {
|
||||
dest->CApath = strdup(source->CApath);
|
||||
if(!dest->CApath)
|
||||
return FALSE;
|
||||
}
|
||||
else
|
||||
dest->CApath = NULL;
|
||||
|
||||
if(source->cipher_list) {
|
||||
dest->cipher_list = strdup(source->cipher_list);
|
||||
if(!dest->cipher_list)
|
||||
return FALSE;
|
||||
}
|
||||
else
|
||||
dest->cipher_list = NULL;
|
||||
|
||||
if(source->egdsocket) {
|
||||
dest->egdsocket = strdup(source->egdsocket);
|
||||
if(!dest->egdsocket)
|
||||
return FALSE;
|
||||
}
|
||||
else
|
||||
dest->egdsocket = NULL;
|
||||
|
||||
if(source->random_file) {
|
||||
dest->random_file = strdup(source->random_file);
|
||||
if(!dest->random_file)
|
||||
return FALSE;
|
||||
}
|
||||
else
|
||||
dest->random_file = NULL;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
Reference in New Issue
Block a user