device.c -- Interaction with Solaris tun device
Copyright (C) 2001-2005 Ivo Timmermans,
2002-2010 OpenVPN Technologies, Inc. <sales@openvpn.net>
- 2001-2013 Guus Sliepen <guus@tinc-vpn.org>
+ 2001-2014 Guus Sliepen <guus@tinc-vpn.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
#define DEFAULT_TUN_DEVICE "/dev/tun"
#define DEFAULT_TAP_DEVICE "/dev/tap"
+#define IP_DEVICE "/dev/udp"
static enum {
DEVICE_TYPE_TUN,
/* The following is black magic copied from OpenVPN. */
- if((ip_fd = open("/dev/ip", O_RDWR, 0)) < 0) {
- logger(LOG_ERR, "Could not open %s: %s\n", "/dev/ip", strerror(errno));
+ if((ip_fd = open(IP_DEVICE, O_RDWR, 0)) < 0) {
+ logger(LOG_ERR, "Could not open %s: %s\n", IP_DEVICE, strerror(errno));
return false;
}
/* Push arp module to ip_fd */
if(ioctl(ip_fd, I_PUSH, "arp") < 0) {
- logger(LOG_ERR, "Could not push ARP module onto %s!", "/dev/ip");
+ logger(LOG_ERR, "Could not push ARP module onto %s!", IP_DEVICE);
return false;
}