Author: kmacy
Date: Wed Apr 15 22:09:42 2009
New Revision: 191126
URL: http://svn.freebsd.org/changeset/base/191126

Log:
  - add second flags field to to inpcb
  - update comments in vflag

Modified:
  head/UPDATING
  head/sys/netinet/in_pcb.h
  head/sys/sys/param.h

Modified: head/UPDATING
==============================================================================
--- head/UPDATING       Wed Apr 15 21:39:56 2009        (r191125)
+++ head/UPDATING       Wed Apr 15 22:09:42 2009        (r191126)
@@ -23,6 +23,11 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 8.
        ln -s aj /etc/malloc.conf.)
 
 20090415:
+       Anticipate overflowing inp_flags - add inp_flags2. 
+       This changes most offsets in inpcb, so checking v4 connection
+       state will require a world rebuild. 
+       Bump __FreeBSD_version to 800080.
+20090415:
        Add an llentry to struct route and struct route_in6. Modules
        embedding a struct route will need to be recompiled. 
        Bump __FreeBSD_version to 800079.

Modified: head/sys/netinet/in_pcb.h
==============================================================================
--- head/sys/netinet/in_pcb.h   Wed Apr 15 21:39:56 2009        (r191125)
+++ head/sys/netinet/in_pcb.h   Wed Apr 15 22:09:42 2009        (r191126)
@@ -163,6 +163,7 @@ struct inpcb {
        struct  ucred   *inp_cred;      /* (c) cache of socket cred */
        u_int32_t inp_flow;             /* (i) IPv6 flow information */
        int     inp_flags;              /* (i) generic IP/datagram flags */
+       int     inp_flags2;             /* (i) generic IP/datagram flags #2*/
        u_char  inp_vflag;              /* (i) IP version flag (v4/v6) */
        u_char  inp_ip_ttl;             /* (i) time to live proto */
        u_char  inp_ip_p;               /* (c) protocol proto */
@@ -380,16 +381,14 @@ void      inp_4tuple_get(struct inpcb *inp, 
        (ntohs((lport)) & (mask))
 
 /*
- * Flags for inp_vflags -- historically version flags only, but now quite a
- * bit more due to an overflow of inp_flag, leading to some locking ambiguity
- * as some bits are stable from initial allocation, and others may change.
+ * Flags for inp_vflags -- historically version flags only
  */
 #define        INP_IPV4        0x1
 #define        INP_IPV6        0x2
 #define        INP_IPV6PROTO   0x4             /* opened under IPv6 protocol */
 
 /*
- * Flags for inp_flag.
+ * Flags for inp_flags.
  */
 #define        INP_RECVOPTS            0x00000001 /* receive incoming IP 
options */
 #define        INP_RECVRETOPTS         0x00000002 /* receive IP options for 
reply */
@@ -431,6 +430,10 @@ void       inp_4tuple_get(struct inpcb *inp, 
                                 IN6P_TCLASS|IN6P_AUTOFLOWLABEL|IN6P_RFC2292|\
                                 IN6P_MTU)
 
+/*
+ * Flags for inp_flags2.
+ */
+
 #define        INPLOOKUP_WILDCARD      1
 #define        sotoinpcb(so)   ((struct inpcb *)(so)->so_pcb)
 #define        sotoin6pcb(so)  sotoinpcb(so) /* for KAME src sync over BSD*'s 
*/

Modified: head/sys/sys/param.h
==============================================================================
--- head/sys/sys/param.h        Wed Apr 15 21:39:56 2009        (r191125)
+++ head/sys/sys/param.h        Wed Apr 15 22:09:42 2009        (r191126)
@@ -57,7 +57,7 @@
  *             is created, otherwise 1.
  */
 #undef __FreeBSD_version
-#define __FreeBSD_version 800079       /* Master, propagated to newvers */
+#define __FreeBSD_version 800080       /* Master, propagated to newvers */
 
 #ifndef LOCORE
 #include <sys/types.h>
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to