Sigh....
authorJordan K. Hubbard <jkh@FreeBSD.org>
Wed, 18 May 1994 16:22:04 +0000 (16:22 +0000)
committerJordan K. Hubbard <jkh@FreeBSD.org>
Wed, 18 May 1994 16:22:04 +0000 (16:22 +0000)
I'm going to reverse myself on the earlier decision to disable vat
compatibility by default.  Why?  Three reasons:

1. The "incompatibility" wasn't anywhere near as bad as I thought.
   When ftp/rlogin/et al go to setsockopt() their TOS (Type Of Service)
   and it fails, they don't abort or anything drastic, they simply whinge
   to syslog and continue.  I can live with the occasional message on this,
   especially when a make world for the person in question will fix it.

2. My attempt to make this conditional with IOP_VAT_COMPAT was bogus; I
   simply wasn't thinking!  Making it a kernel config option won't do squat
   for things like ftp and rlogin unless I go and add the option to _their_
   Makefiles too, which would be obviously evil and bad.  Conservative is all
   well and good, but this was just stupid.  There's really no easy way to do
   this for the minor error message it would avoid.  Forget it.

3. I can avoid a doc hit on turning this on for 1.1.5 users - just setting
   the multicast options and recompiling the kernel is easy, remaking the world
   would have been a bit much to ask (and folks getting 1.1.5 bindist won't
   get the syslogd warnings anyway).

sys/netinet/in.h

index 4bab052..a7d3a8a 100644 (file)
@@ -31,7 +31,7 @@
  * SUCH DAMAGE.
  *
  *     from: @(#)in.h  7.11 (Berkeley) 4/20/91
  * SUCH DAMAGE.
  *
  *     from: @(#)in.h  7.11 (Berkeley) 4/20/91
- *     $Id: in.h,v 1.5 1994/05/17 22:31:04 jkh Exp $
+ *     $Id: in.h,v 1.6 1994/05/18 00:04:14 jkh Exp $
  */
 
 #ifndef _NETINET_IN_H_
  */
 
 #ifndef _NETINET_IN_H_
@@ -42,6 +42,9 @@
  * Per RFC 790, September 1981.
  */
 
  * Per RFC 790, September 1981.
  */
 
+/* Enable this if you don't want to be IP_TOS compatible with BSDI/NetBSD */
+/* #define NO_VAT_COMPAT       1 */
+
 /*
  * Protocols
  */
 /*
  * Protocols
  */
@@ -159,7 +162,7 @@ struct ip_opts {
  * First word of comment is data type; bool is stored in int.
  */
 #define        IP_OPTIONS      1       /* buf/ip_opts; set/get IP per-packet options */
  * First word of comment is data type; bool is stored in int.
  */
 #define        IP_OPTIONS      1       /* buf/ip_opts; set/get IP per-packet options */
-#ifdef IP_VAT_COMPAT
+#ifndef NO_VAT_COMPAT
 #define        IP_MULTICAST_IF 2       /* set/get IP multicast interfcae */
 #define        IP_MULTICAST_TTL 3      /* set/get IP multicast timetolive */
 #define        IP_MULTICAST_LOOP 4     /* set/get IP m'cast loopback */
 #define        IP_MULTICAST_IF 2       /* set/get IP multicast interfcae */
 #define        IP_MULTICAST_TTL 3      /* set/get IP multicast timetolive */
 #define        IP_MULTICAST_LOOP 4     /* set/get IP m'cast loopback */