svn commit: r191126 - in head: . sys/netinet sys/sys
Kip Macy
kmacy at FreeBSD.org
Wed Apr 15 22:09:44 UTC 2009
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>
More information about the svn-src-all
mailing list