Browse code

log error message and exit for "win32, tun mode, tap driver version 9.8"

(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>

Gert Doering authored on 2011/11/23 19:11:54
Showing 1 changed files
... ...
@@ -4584,6 +4584,14 @@ open_tun (const char *dev, const char *dev_type, const char *dev_node, struct tu
4584 4584
 	msg( M_INFO, "WARNING:  Tap-Win32 driver version %d.%d does not support IPv6 in TUN mode.  IPv6 will be disabled.  Upgrade to Tap-Win32 9.8 (2.2-beta3 release or later) or use TAP mode to get IPv6", (int) info[0], (int) info[1] );
4585 4585
 	tt->ipv6 = false;
4586 4586
       }
4587
+
4588
+    /* tap driver 9.8 (2.2.0 and 2.2.1 release) is buggy
4589
+     */
4590
+    if ( tt->type == DEV_TYPE_TUN &&
4591
+	 info[0] == 9 && info[1] == 8)
4592
+      {
4593
+	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] );
4594
+      }
4587 4595
   }
4588 4596
 
4589 4597
   /* get driver MTU */