]> git.ipfire.org Git - thirdparty/openvpn.git/commitdiff
log error message and exit for "win32, tun mode, tap driver version 9.8"
authorGert Doering <gert@greenie.muc.de>
Wed, 23 Nov 2011 10:11:54 +0000 (11:11 +0100)
committerDavid Sommerseth <davids@redhat.com>
Wed, 23 Nov 2011 15:10:21 +0000 (16:10 +0100)
(driver is known-buggy for small IPv4 packets in tun mode)

Signed-off-by: Gert Doering <gert@greenie.muc.de>
Acked-by: David Sommerseth <davids@redhat.com>
Signed-off-by: David Sommerseth <davids@redhat.com>
(cherry-picked from commit 03ab4ead8295e005f72dbffcffdaa74487d9668c)

tun.c

diff --git a/tun.c b/tun.c
index 28aa36853de104291d6461c2f72eb000d1aa6ade..d03e8c7778d2d76f5262f9cb8b4d746bac6d061a 100644 (file)
--- a/tun.c
+++ b/tun.c
@@ -4100,6 +4100,14 @@ open_tun (const char *dev, const char *dev_type, const char *dev_node, bool ipv6
       msg (M_FATAL, "ERROR:  This version of " PACKAGE_NAME " requires a TAP-Win32 driver that is at least version %d.%d -- If you recently upgraded your " PACKAGE_NAME " distribution, a reboot is probably required at this point to get Windows to see the new driver.",
           TAP_WIN32_MIN_MAJOR,
           TAP_WIN32_MIN_MINOR);
+
+    /* tap driver 9.8 (2.2.0 and 2.2.1 release) is buggy
+     */
+    if ( tt->type == DEV_TYPE_TUN &&
+        info[0] == 9 && info[1] == 8)
+      {
+       msg( M_FATAL, "ERROR:  Tap-Win32 driver version %d.%d is buggy regarding small IPv4 packets in TUN mode.  Upgrade to Tap-Win32 9.9 (2.2.2 release or later) or use TAP mode", (int) info[0], (int) info[1] );
+      }
   }
 
   /* get driver MTU */