return -EINVAL;
name = connman_provider_get_driver_name(provider);
+ if (name == NULL)
+ return -EINVAL;
+
vpn_driver_data = g_hash_table_lookup(driver_hash, name);
if (vpn_driver_data != NULL && vpn_driver_data->vpn_driver != NULL &&
vpn_exit:
if (state != VPN_STATE_READY && state != VPN_STATE_DISCONNECT) {
const char *name;
- struct vpn_driver_data *vpn_data;
+ struct vpn_driver_data *vpn_data = NULL;
name = connman_provider_get_driver_name(provider);
- vpn_data = g_hash_table_lookup(driver_hash, name);
+ if (name != NULL)
+ vpn_data = g_hash_table_lookup(driver_hash, name);
+
if (vpn_data != NULL &&
vpn_data->vpn_driver->error_code != NULL)
ret = vpn_data->vpn_driver->error_code(exit_code);
data = connman_provider_get_data(provider);
name = connman_provider_get_driver_name(provider);
+ if (name == NULL)
+ return;
+
vpn_driver_data = g_hash_table_lookup(driver_hash, name);
if (vpn_driver_data == NULL)
return;
connman_provider_set_data(provider, data);
name = connman_provider_get_driver_name(provider);
+ if (name == NULL)
+ return -EINVAL;
+
vpn_driver_data = g_hash_table_lookup(driver_hash, name);
if (vpn_driver_data != NULL && vpn_driver_data->vpn_driver != NULL &&
return 0;
name = connman_provider_get_driver_name(provider);
+ if (name == NULL)
+ return 0;
+
vpn_driver_data = g_hash_table_lookup(driver_hash, name);
if (vpn_driver_data->vpn_driver->disconnect)
vpn_driver_data->vpn_driver->disconnect();