diff options
Diffstat (limited to 'vpn/plugins/ipsec.c')
-rw-r--r-- | vpn/plugins/ipsec.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/vpn/plugins/ipsec.c b/vpn/plugins/ipsec.c index e4bbf2b3..cd8b625a 100644 --- a/vpn/plugins/ipsec.c +++ b/vpn/plugins/ipsec.c @@ -722,7 +722,7 @@ static char *load_file_from_path(const char *path) size_t file_size = 0; char *file_buff = NULL; - if (path) { + if (!path) { connman_error("File path is NULL\n"); return NULL; } @@ -841,6 +841,7 @@ static int ipsec_load_cert(struct vpn_provider *provider) DBG("CertType: %s, CertFalg: %s,CertData: %s", type, flag, data); if (!type || ! flag || !data) { connman_error("invalid certification information"); + g_free(data); return -EINVAL; } @@ -971,6 +972,9 @@ done: if(err != 0 && cb) cb(provider, data->user_data, -err); + if (data) + g_free(data); + return; } |