diff --git a/drivers/cdmamodem/connman.c b/drivers/cdmamodem/connman.c index ce9a7483..0df93eb5 100644 --- a/drivers/cdmamodem/connman.c +++ b/drivers/cdmamodem/connman.c @@ -28,6 +28,7 @@ #include #include #include +#include #include @@ -41,6 +42,8 @@ #include "cdmamodem.h" +#define TUN_SYSFS_DIR "/sys/devices/virtual/misc/tun" + #define STATIC_IP_NETMASK "255.255.255.255" static const char *none_prefix[] = { NULL }; @@ -240,9 +243,15 @@ static int cdma_connman_probe(struct ofono_cdma_connman *cm, { GAtChat *chat = data; struct connman_data *cd; + struct stat st; DBG(""); + if (stat(TUN_SYSFS_DIR, &st) < 0) { + ofono_error("Missing support for TUN/TAP devices"); + return -ENODEV; + } + cd = g_try_new0(struct connman_data, 1); if (cd == NULL) return -ENOMEM;