From 3909f166fb41fba2521bf84ed5fc87d367c163b8 Mon Sep 17 00:00:00 2001 From: Marcel Holtmann Date: Thu, 1 Jan 2009 18:52:16 +0100 Subject: Allow transport definition for device mode --- src/detect.c | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) (limited to 'src/detect.c') diff --git a/src/detect.c b/src/detect.c index 781b8fa9..57ea83ee 100644 --- a/src/detect.c +++ b/src/detect.c @@ -130,6 +130,7 @@ static void detect_newlink(unsigned short type, int index, unsigned flags, unsigned change) { enum connman_device_type devtype = CONNMAN_DEVICE_TYPE_UNKNOWN; + enum connman_device_mode mode; struct connman_device *device; gchar *name, *devname; @@ -198,15 +199,28 @@ static void detect_newlink(unsigned short type, int index, } switch (devtype) { + case CONNMAN_DEVICE_TYPE_UNKNOWN: + case CONNMAN_DEVICE_TYPE_VENDOR: + mode = CONNMAN_DEVICE_MODE_UNKNOWN; + break; + case CONNMAN_DEVICE_TYPE_ETHERNET: + mode = CONNMAN_DEVICE_MODE_TRANSPORT_IP; + break; + case CONNMAN_DEVICE_TYPE_WIFI: + case CONNMAN_DEVICE_TYPE_WIMAX: + mode = CONNMAN_DEVICE_MODE_NETWORK_SINGLE; + break; + case CONNMAN_DEVICE_TYPE_BLUETOOTH: + mode = CONNMAN_DEVICE_MODE_NETWORK_MULTIPLE; + break; case CONNMAN_DEVICE_TYPE_HSO: + mode = CONNMAN_DEVICE_MODE_NETWORK_SINGLE; connman_device_set_policy(device, CONNMAN_DEVICE_POLICY_MANUAL); - connman_device_set_mode(device, - CONNMAN_DEVICE_MODE_SINGLE_NETWORK); - break; - default: break; } + connman_device_set_mode(device, mode); + connman_device_set_index(device, index); connman_device_set_interface(device, devname); -- cgit v1.2.3