diff options
author | Jukka Rissanen <jukka.rissanen@linux.intel.com> | 2012-11-30 11:30:51 +0200 |
---|---|---|
committer | Patrik Flykt <patrik.flykt@linux.intel.com> | 2012-11-30 15:01:19 +0200 |
commit | c6dc437648097c21965ca87016365a7d6616ad32 (patch) | |
tree | fe0ea4c82fc07c9c272605d4b3c024041d3c57cd | |
parent | d27c42180b7d0d6fe0e7516019d61d6022421799 (diff) | |
download | connman-c6dc437648097c21965ca87016365a7d6616ad32.tar.gz connman-c6dc437648097c21965ca87016365a7d6616ad32.tar.bz2 connman-c6dc437648097c21965ca87016365a7d6616ad32.zip |
vpn: Driver disconnect needs provider information
The provider pointer needs to be passed to VPN driver when
disconnecting. Otherwise we cannot find the correct provider
that is being disconnected.
-rw-r--r-- | vpn/plugins/vpn.c | 2 | ||||
-rw-r--r-- | vpn/plugins/vpn.h | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/vpn/plugins/vpn.c b/vpn/plugins/vpn.c index a8603d92..05068f58 100644 --- a/vpn/plugins/vpn.c +++ b/vpn/plugins/vpn.c @@ -458,7 +458,7 @@ static int vpn_disconnect(struct vpn_provider *provider) vpn_driver_data = g_hash_table_lookup(driver_hash, name); if (vpn_driver_data->vpn_driver->disconnect) - vpn_driver_data->vpn_driver->disconnect(); + vpn_driver_data->vpn_driver->disconnect(provider); if (data->watch != 0) { vpn_provider_unref(provider); diff --git a/vpn/plugins/vpn.h b/vpn/plugins/vpn.h index d1e322c1..6f86aac5 100644 --- a/vpn/plugins/vpn.h +++ b/vpn/plugins/vpn.h @@ -46,7 +46,7 @@ struct vpn_driver { int (*connect) (struct vpn_provider *provider, struct connman_task *task, const char *if_name, vpn_provider_connect_cb_t cb, void *user_data); - void (*disconnect) (void); + void (*disconnect) (struct vpn_provider *provider); int (*error_code) (int exit_code); int (*save) (struct vpn_provider *provider, GKeyFile *keyfile); }; |