Fix support for tunemu on iOS devices.

The actual code was fine but the #ifdefs tested for the wrong preprocessor
variable.

Conflicts:
	src/bsd/device.c
	src/process.c
This commit is contained in:
Guus Sliepen 2012-12-16 15:36:06 +01:00
parent c26581e29f
commit 17a0b3a890

View file

@ -29,7 +29,7 @@
#include "utils.h" #include "utils.h"
#include "xalloc.h" #include "xalloc.h"
#ifdef HAVE_TUNEMU #ifdef ENABLE_TUNEMU
#include "bsd/tunemu.h" #include "bsd/tunemu.h"
#endif #endif
@ -44,7 +44,7 @@ typedef enum device_type {
DEVICE_TYPE_TUN, DEVICE_TYPE_TUN,
DEVICE_TYPE_TUNIFHEAD, DEVICE_TYPE_TUNIFHEAD,
DEVICE_TYPE_TAP, DEVICE_TYPE_TAP,
#ifdef HAVE_TUNEMU #ifdef ENABLE_TUNEMU
DEVICE_TYPE_TUNEMU, DEVICE_TYPE_TUNEMU,
#endif #endif
} device_type_t; } device_type_t;
@ -55,7 +55,7 @@ char *iface = NULL;
static char *device_info = NULL; static char *device_info = NULL;
static uint64_t device_total_in = 0; static uint64_t device_total_in = 0;
static uint64_t device_total_out = 0; static uint64_t device_total_out = 0;
#if defined(TUNEMU) #if defined(ENABLE_TUNEMU)
static device_type_t device_type = DEVICE_TYPE_TUNEMU; static device_type_t device_type = DEVICE_TYPE_TUNEMU;
#elif defined(HAVE_OPENBSD) || defined(HAVE_FREEBSD) || defined(HAVE_DRAGONFLY) #elif defined(HAVE_OPENBSD) || defined(HAVE_FREEBSD) || defined(HAVE_DRAGONFLY)
static device_type_t device_type = DEVICE_TYPE_TUNIFHEAD; static device_type_t device_type = DEVICE_TYPE_TUNIFHEAD;
@ -79,7 +79,7 @@ static bool setup_device(void) {
if(get_config_string(lookup_config(config_tree, "DeviceType"), &type)) { if(get_config_string(lookup_config(config_tree, "DeviceType"), &type)) {
if(!strcasecmp(type, "tun")) if(!strcasecmp(type, "tun"))
/* use default */; /* use default */;
#ifdef HAVE_TUNEMU #ifdef ENABLE_TUNEMU
else if(!strcasecmp(type, "tunemu")) else if(!strcasecmp(type, "tunemu"))
device_type = DEVICE_TYPE_TUNEMU; device_type = DEVICE_TYPE_TUNEMU;
#endif #endif
@ -99,7 +99,7 @@ static bool setup_device(void) {
} }
switch(device_type) { switch(device_type) {
#ifdef HAVE_TUNEMU #ifdef ENABLE_TUNEMU
case DEVICE_TYPE_TUNEMU: { case DEVICE_TYPE_TUNEMU: {
char dynamic_name[256] = ""; char dynamic_name[256] = "";
device_fd = tunemu_open(dynamic_name); device_fd = tunemu_open(dynamic_name);
@ -176,7 +176,7 @@ static bool setup_device(void) {
#endif #endif
break; break;
#ifdef HAVE_TUNEMU #ifdef ENABLE_TUNEMU
case DEVICE_TYPE_TUNEMU: case DEVICE_TYPE_TUNEMU:
device_info = "BSD tunemu device"; device_info = "BSD tunemu device";
break; break;
@ -190,7 +190,7 @@ static bool setup_device(void) {
static void close_device(void) { static void close_device(void) {
switch(device_type) { switch(device_type) {
#ifdef HAVE_TUNEMU #ifdef ENABLE_TUNEMU
case DEVICE_TYPE_TUNEMU: case DEVICE_TYPE_TUNEMU:
tunemu_close(device_fd); tunemu_close(device_fd);
break; break;
@ -208,7 +208,7 @@ static bool read_packet(vpn_packet_t *packet) {
switch(device_type) { switch(device_type) {
case DEVICE_TYPE_TUN: case DEVICE_TYPE_TUN:
#ifdef HAVE_TUNEMU #ifdef ENABLE_TUNEMU
case DEVICE_TYPE_TUNEMU: case DEVICE_TYPE_TUNEMU:
if(device_type == DEVICE_TYPE_TUNEMU) if(device_type == DEVICE_TYPE_TUNEMU)
inlen = tunemu_read(device_fd, packet->data + 14, MTU - 14); inlen = tunemu_read(device_fd, packet->data + 14, MTU - 14);
@ -347,7 +347,7 @@ static bool write_packet(vpn_packet_t *packet) {
} }
break; break;
#ifdef HAVE_TUNEMU #ifdef ENABLE_TUNEMU
case DEVICE_TYPE_TUNEMU: case DEVICE_TYPE_TUNEMU:
if(tunemu_write(device_fd, packet->data + 14, packet->len - 14) < 0) { if(tunemu_write(device_fd, packet->data + 14, packet->len - 14) < 0) {
logger(DEBUG_ALWAYS, LOG_ERR, "Error while writing to %s %s: %s", device_info, logger(DEBUG_ALWAYS, LOG_ERR, "Error while writing to %s %s: %s", device_info,