summaryrefslogtreecommitdiff
path: root/vpn/vpn-provider.h
diff options
context:
space:
mode:
authorJukka Rissanen <jukka.rissanen@linux.intel.com>2012-11-30 11:30:35 +0200
committerPatrik Flykt <patrik.flykt@linux.intel.com>2012-11-30 15:01:18 +0200
commita4c8f6b74733d0cf1d8c730aabd2ff5a7be0c124 (patch)
tree482caff971b44e952ae053cbd40e02c346c28d55 /vpn/vpn-provider.h
parent2e9c60a0539679ac982282ebe9fc9c9cc43e492c (diff)
downloadconnman-a4c8f6b74733d0cf1d8c730aabd2ff5a7be0c124.tar.gz
connman-a4c8f6b74733d0cf1d8c730aabd2ff5a7be0c124.tar.bz2
connman-a4c8f6b74733d0cf1d8c730aabd2ff5a7be0c124.zip
vpn: Add initial support for async connect
Needed for agent VPN support.
Diffstat (limited to 'vpn/vpn-provider.h')
-rw-r--r--vpn/vpn-provider.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/vpn/vpn-provider.h b/vpn/vpn-provider.h
index 0f139b09..b462042d 100644
--- a/vpn/vpn-provider.h
+++ b/vpn/vpn-provider.h
@@ -101,12 +101,16 @@ int vpn_provider_append_route(struct vpn_provider *provider,
const char *vpn_provider_get_driver_name(struct vpn_provider *provider);
const char *vpn_provider_get_save_group(struct vpn_provider *provider);
+typedef void (* vpn_provider_connect_cb_t) (struct vpn_provider *provider,
+ void *user_data, int error);
+
struct vpn_provider_driver {
const char *name;
enum vpn_provider_type type;
int (*probe) (struct vpn_provider *provider);
int (*remove) (struct vpn_provider *provider);
- int (*connect) (struct vpn_provider *provider);
+ int (*connect) (struct vpn_provider *provider,
+ vpn_provider_connect_cb_t cb, void *user_data);
int (*disconnect) (struct vpn_provider *provider);
int (*save) (struct vpn_provider *provider, GKeyFile *keyfile);
};