diff options
Diffstat (limited to 'sys/sys/mbuf.h')
-rw-r--r-- | sys/sys/mbuf.h | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/sys/sys/mbuf.h b/sys/sys/mbuf.h index a54b003..5b1c711 100644 --- a/sys/sys/mbuf.h +++ b/sys/sys/mbuf.h @@ -1,4 +1,4 @@ -/* $OpenBSD: mbuf.h,v 1.246 2020/01/22 22:56:35 dlg Exp $ */ +/* $OpenBSD: mbuf.h,v 1.250 2020/08/08 19:53:02 florian Exp $ */ /* $NetBSD: mbuf.h,v 1.19 1996/02/09 18:25:14 christos Exp $ */ /* @@ -190,7 +190,6 @@ struct mbuf { /* mbuf pkthdr flags, also in m_flags */ #define M_VLANTAG 0x0020 /* ether_vtag is valid */ #define M_LOOP 0x0040 /* packet has been sent from local machine */ -#define M_ACAST 0x0080 /* received as IPv6 anycast */ #define M_BCAST 0x0100 /* sent/received as link-level broadcast */ #define M_MCAST 0x0200 /* sent/received as link-level multicast */ #define M_CONF 0x0400 /* payload was encrypted (ESP-transport) */ @@ -203,14 +202,13 @@ struct mbuf { #ifdef _KERNEL #define M_BITS \ ("\20\1M_EXT\2M_PKTHDR\3M_EOR\4M_EXTWR\5M_PROTO1\6M_VLANTAG\7M_LOOP" \ - "\10M_ACAST\11M_BCAST\12M_MCAST\13M_CONF\14M_AUTH\15M_TUNNEL" \ + "\11M_BCAST\12M_MCAST\13M_CONF\14M_AUTH\15M_TUNNEL" \ "\16M_ZEROIZE\17M_COMP\20M_LINK0") #endif /* flags copied when copying m_pkthdr */ #define M_COPYFLAGS (M_PKTHDR|M_EOR|M_PROTO1|M_BCAST|M_MCAST|M_CONF|M_COMP|\ - M_AUTH|M_LOOP|M_TUNNEL|M_LINK0|M_VLANTAG|M_ACAST|\ - M_ZEROIZE) + M_AUTH|M_LOOP|M_TUNNEL|M_LINK0|M_VLANTAG|M_ZEROIZE) /* Checksumming flags */ #define M_IPV4_CSUM_OUT 0x0001 /* IPv4 checksum needed */ @@ -227,13 +225,14 @@ struct mbuf { #define M_ICMP_CSUM_IN_BAD 0x0800 /* ICMP/ICMPv6 checksum bad */ #define M_IPV6_DF_OUT 0x1000 /* don't fragment outgoing IPv6 */ #define M_TIMESTAMP 0x2000 /* ph_timestamp is set */ +#define M_FLOWID 0x4000 /* ph_flowid is set */ #ifdef _KERNEL #define MCS_BITS \ ("\20\1IPV4_CSUM_OUT\2TCP_CSUM_OUT\3UDP_CSUM_OUT\4IPV4_CSUM_IN_OK" \ "\5IPV4_CSUM_IN_BAD\6TCP_CSUM_IN_OK\7TCP_CSUM_IN_BAD\10UDP_CSUM_IN_OK" \ "\11UDP_CSUM_IN_BAD\12ICMP_CSUM_OUT\13ICMP_CSUM_IN_OK\14ICMP_CSUM_IN_BAD" \ - "\15IPV6_NODF_OUT" "\16TIMESTAMP") + "\15IPV6_NODF_OUT" "\16TIMESTAMP" "\17FLOWID") #endif /* mbuf types */ @@ -247,10 +246,6 @@ struct mbuf { #define MT_OOBDATA 7 /* expedited data */ #define MT_NTYPES 8 -/* flowid field */ -#define M_FLOWID_VALID 0x8000 /* is the flowid set */ -#define M_FLOWID_MASK 0x7fff /* flow id to map to path */ - /* flags to m_get/MGET */ #include <sys/malloc.h> #define M_DONTWAIT M_NOWAIT @@ -474,7 +469,7 @@ struct m_tag *m_tag_next(struct mbuf *, struct m_tag *); /* Packet tag types */ #define PACKET_TAG_IPSEC_IN_DONE 0x0001 /* IPsec applied, in */ #define PACKET_TAG_IPSEC_OUT_DONE 0x0002 /* IPsec applied, out */ -#define PACKET_TAG_GIF 0x0040 /* GIF processing done */ +#define PACKET_TAG_WIREGUARD 0x0040 /* WireGuard data */ #define PACKET_TAG_GRE 0x0080 /* GRE processing done */ #define PACKET_TAG_DLT 0x0100 /* data link layer type */ #define PACKET_TAG_PF_DIVERT 0x0200 /* pf(4) diverted packet */ @@ -485,7 +480,7 @@ struct m_tag *m_tag_next(struct mbuf *, struct m_tag *); #define MTAG_BITS \ ("\20\1IPSEC_IN_DONE\2IPSEC_OUT_DONE\3IPSEC_IN_CRYPTO_DONE" \ - "\4IPSEC_OUT_CRYPTO_NEEDED\5IPSEC_PENDING_TDB\6BRIDGE\7GIF\10GRE\11DLT" \ + "\4IPSEC_OUT_CRYPTO_NEEDED\5IPSEC_PENDING_TDB\6BRIDGE\7WG\10GRE\11DLT" \ "\12PF_DIVERT\14PF_REASSEMBLED\15SRCROUTE\16TUNNEL\17CARP_BAL_IP") /* @@ -494,7 +489,7 @@ struct m_tag *m_tag_next(struct mbuf *, struct m_tag *); * length for an existing packet tag type or when adding a new one that * has payload larger than the value below. */ -#define PACKET_TAG_MAXSIZE 60 +#define PACKET_TAG_MAXSIZE 80 /* Detect mbufs looping in the kernel when spliced too often. */ #define M_MAXLOOP 128 @@ -532,6 +527,7 @@ unsigned int ml_hdatalen(struct mbuf_list *); { MUTEX_INITIALIZER(_ipl), MBUF_LIST_INITIALIZER(), (_maxlen), 0 } void mq_init(struct mbuf_queue *, u_int, int); +int mq_push(struct mbuf_queue *, struct mbuf *); int mq_enqueue(struct mbuf_queue *, struct mbuf *); struct mbuf * mq_dequeue(struct mbuf_queue *); int mq_enlist(struct mbuf_queue *, struct mbuf_list *); |