diff options
author | Mark McLoughlin <markmc@redhat.com> | 2009-10-22 17:49:14 +0100 |
---|---|---|
committer | Anthony Liguori <aliguori@us.ibm.com> | 2009-10-30 08:39:28 -0500 |
commit | dc69004c7d89afb6ede02ca9379075c062c0c091 (patch) | |
tree | 3a365fe328d765619951dbf732b43f39d7226262 /net | |
parent | net: move tap_set_sndbuf() to tap-linux.c (diff) | |
download | qemu-kvm-dc69004c7d89afb6ede02ca9379075c062c0c091.tar.gz qemu-kvm-dc69004c7d89afb6ede02ca9379075c062c0c091.tar.bz2 qemu-kvm-dc69004c7d89afb6ede02ca9379075c062c0c091.zip |
net: move tap_probe_vnet_hdr() to tap-linux.c
Only Linux has support for IFF_VNET_HDR
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'net')
-rw-r--r-- | net/tap-aix.c | 4 | ||||
-rw-r--r-- | net/tap-bsd.c | 5 | ||||
-rw-r--r-- | net/tap-linux.c | 12 | ||||
-rw-r--r-- | net/tap-solaris.c | 5 | ||||
-rw-r--r-- | net/tap.c | 12 | ||||
-rw-r--r-- | net/tap.h | 1 |
6 files changed, 27 insertions, 12 deletions
diff --git a/net/tap-aix.c b/net/tap-aix.c index 3f9ccddda..27143ff36 100644 --- a/net/tap-aix.c +++ b/net/tap-aix.c @@ -36,3 +36,7 @@ int tap_set_sndbuf(int fd, QemuOpts *opts) return 0; } +int tap_probe_vnet_hdr(int fd) +{ + return 0; +} diff --git a/net/tap-bsd.c b/net/tap-bsd.c index e28615fba..1cdde9000 100644 --- a/net/tap-bsd.c +++ b/net/tap-bsd.c @@ -65,3 +65,8 @@ int tap_set_sndbuf(int fd, QemuOpts *opts) { return 0; } + +int tap_probe_vnet_hdr(int fd) +{ + return 0; +} diff --git a/net/tap-linux.c b/net/tap-linux.c index 6c3b6e311..005940406 100644 --- a/net/tap-linux.c +++ b/net/tap-linux.c @@ -99,3 +99,15 @@ int tap_set_sndbuf(int fd, QemuOpts *opts) } return 0; } + +int tap_probe_vnet_hdr(int fd) +{ + struct ifreq ifr; + + if (ioctl(fd, TUNGETIFF, &ifr) != 0) { + qemu_error("TUNGETIFF ioctl() failed: %s\n", strerror(errno)); + return 0; + } + + return ifr.ifr_flags & IFF_VNET_HDR; +} diff --git a/net/tap-solaris.c b/net/tap-solaris.c index de5855aa0..3f48e5732 100644 --- a/net/tap-solaris.c +++ b/net/tap-solaris.c @@ -188,3 +188,8 @@ int tap_set_sndbuf(int fd, QemuOpts *opts) { return 0; } + +int tap_probe_vnet_hdr(int fd) +{ + return 0; +} @@ -239,18 +239,6 @@ void tap_using_vnet_hdr(VLANClientState *vc, int using_vnet_hdr) s->using_vnet_hdr = using_vnet_hdr; } -static int tap_probe_vnet_hdr(int fd) -{ - struct ifreq ifr; - - if (ioctl(fd, TUNGETIFF, &ifr) != 0) { - qemu_error("TUNGETIFF ioctl() failed: %s\n", strerror(errno)); - return 0; - } - - return ifr.ifr_flags & IFF_VNET_HDR; -} - void tap_set_offload(VLANClientState *vc, int csum, int tso4, int tso6, int ecn, int ufo) { @@ -44,5 +44,6 @@ void tap_using_vnet_hdr(VLANClientState *vc, int using_vnet_hdr); void tap_set_offload(VLANClientState *vc, int csum, int tso4, int tso6, int ecn, int ufo); int tap_set_sndbuf(int fd, QemuOpts *opts); +int tap_probe_vnet_hdr(int fd); #endif /* QEMU_NET_TAP_H */ |