version 1.1.1.2, 2018/04/24 18:32:48
|
version 1.1.1.3, 2018/04/24 18:42:29
|
Line 37
|
Line 37
|
#include <util.h> |
#include <util.h> |
#endif |
#endif |
|
|
#if defined(__OpenBSD__) |
|
#include <util.h> |
|
#endif |
|
|
|
int tap_open(char *ifname, int ifname_size, int *vnet_hdr, int vnet_hdr_required) |
int tap_open(char *ifname, int ifname_size, int *vnet_hdr, int vnet_hdr_required) |
{ |
{ |
int fd; |
int fd; |
char *dev; |
char *dev; |
struct stat s; |
struct stat s; |
|
|
#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) |
#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__OpenBSD__) |
/* if no ifname is given, always start the search from tap0. */ |
/* if no ifname is given, always start the search from tap0/tun0. */ |
int i; |
int i; |
char dname[100]; |
char dname[100]; |
|
|
Line 56 int tap_open(char *ifname, int ifname_si
|
Line 52 int tap_open(char *ifname, int ifname_si
|
if (*ifname) { |
if (*ifname) { |
snprintf(dname, sizeof dname, "/dev/%s", ifname); |
snprintf(dname, sizeof dname, "/dev/%s", ifname); |
} else { |
} else { |
|
#if defined(__OpenBSD__) |
|
snprintf(dname, sizeof dname, "/dev/tun%d", i); |
|
#else |
snprintf(dname, sizeof dname, "/dev/tap%d", i); |
snprintf(dname, sizeof dname, "/dev/tap%d", i); |
|
#endif |
} |
} |
TFR(fd = open(dname, O_RDWR)); |
TFR(fd = open(dname, O_RDWR)); |
if (fd >= 0) { |
if (fd >= 0) { |
Line 116 int tap_probe_has_ufo(int fd)
|
Line 116 int tap_probe_has_ufo(int fd)
|
return 0; |
return 0; |
} |
} |
|
|
|
int tap_probe_vnet_hdr_len(int fd, int len) |
|
{ |
|
return 0; |
|
} |
|
|
|
void tap_fd_set_vnet_hdr_len(int fd, int len) |
|
{ |
|
} |
|
|
void tap_fd_set_offload(int fd, int csum, int tso4, |
void tap_fd_set_offload(int fd, int csum, int tso4, |
int tso6, int ecn, int ufo) |
int tso6, int ecn, int ufo) |
{ |
{ |