git: d9f6ac882a95 - main - protosw: retire PRU_ flags and their char names
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 17 Aug 2022 18:52:26 UTC
The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=d9f6ac882a9597a660f83bac088a485b42fbba2c commit d9f6ac882a9597a660f83bac088a485b42fbba2c Author: Gleb Smirnoff <glebius@FreeBSD.org> AuthorDate: 2022-08-17 18:50:32 +0000 Commit: Gleb Smirnoff <glebius@FreeBSD.org> CommitDate: 2022-08-17 18:50:32 +0000 protosw: retire PRU_ flags and their char names For many years only TCP debugging used them, but relatively recently TCP DTrace probes also start to use them. Move their declarations into tcp_debug.h, but start including tcp_debug.h unconditionally, so that compilation with DTrace and without TCPDEBUG is possible. --- sys/netinet/tcp_debug.c | 1 - sys/netinet/tcp_debug.h | 43 ++++++++++++++++++++++++++++++++++++++++++ sys/netinet/tcp_input.c | 2 -- sys/netinet/tcp_timer.c | 2 -- sys/netinet/tcp_usrreq.c | 2 -- sys/sys/protosw.h | 49 ------------------------------------------------ 6 files changed, 43 insertions(+), 56 deletions(-) diff --git a/sys/netinet/tcp_debug.c b/sys/netinet/tcp_debug.c index 1c8924ea09dd..0708d3ebb29d 100644 --- a/sys/netinet/tcp_debug.c +++ b/sys/netinet/tcp_debug.c @@ -53,7 +53,6 @@ __FBSDID("$FreeBSD$"); #include <sys/lock.h> #include <sys/mbuf.h> #include <sys/mutex.h> -#include <sys/protosw.h> #include <sys/socket.h> #include <netinet/in.h> diff --git a/sys/netinet/tcp_debug.h b/sys/netinet/tcp_debug.h index 0b3c895e9909..6bb296ea0e52 100644 --- a/sys/netinet/tcp_debug.h +++ b/sys/netinet/tcp_debug.h @@ -73,4 +73,47 @@ static const char *tanames[] = #define TCP_NDEBUG 100 +/* These older constants are still present in order to support TCP debugging. */ +#define PRU_ATTACH 0 /* attach protocol to up */ +#define PRU_DETACH 1 /* detach protocol from up */ +#define PRU_BIND 2 /* bind socket to address */ +#define PRU_LISTEN 3 /* listen for connection */ +#define PRU_CONNECT 4 /* establish connection to peer */ +#define PRU_ACCEPT 5 /* accept connection from peer */ +#define PRU_DISCONNECT 6 /* disconnect from peer */ +#define PRU_SHUTDOWN 7 /* won't send any more data */ +#define PRU_RCVD 8 /* have taken data; more room now */ +#define PRU_SEND 9 /* send this data */ +#define PRU_ABORT 10 /* abort (fast DISCONNECT, DETATCH) */ +#define PRU_CONTROL 11 /* control operations on protocol */ +#define PRU_SENSE 12 /* return status into m */ +#define PRU_RCVOOB 13 /* retrieve out of band data */ +#define PRU_SENDOOB 14 /* send out of band data */ +#define PRU_SOCKADDR 15 /* fetch socket's address */ +#define PRU_PEERADDR 16 /* fetch peer's address */ +#define PRU_CONNECT2 17 /* connect two sockets */ +/* begin for protocols internal use */ +#define PRU_FASTTIMO 18 /* 200ms timeout */ +#define PRU_SLOWTIMO 19 /* 500ms timeout */ +#define PRU_PROTORCV 20 /* receive from below */ +#define PRU_PROTOSEND 21 /* send to below */ +/* end for protocol's internal use */ +#define PRU_SEND_EOF 22 /* send and close */ +#define PRU_SOSETLABEL 23 /* MAC label change */ +#define PRU_CLOSE 24 /* socket close */ +#define PRU_FLUSH 25 /* flush the socket */ +#define PRU_NREQ 25 + +#ifdef PRUREQUESTS +const char *prurequests[] = { + "ATTACH", "DETACH", "BIND", "LISTEN", + "CONNECT", "ACCEPT", "DISCONNECT", "SHUTDOWN", + "RCVD", "SEND", "ABORT", "CONTROL", + "SENSE", "RCVOOB", "SENDOOB", "SOCKADDR", + "PEERADDR", "CONNECT2", "FASTTIMO", "SLOWTIMO", + "PROTORCV", "PROTOSEND", "SEND_EOF", "SOSETLABEL", + "CLOSE", "FLUSH", +}; +#endif + #endif /* !_NETINET_TCP_DEBUG_H_ */ diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index 8aed90be69a0..12f78e9f3248 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -117,9 +117,7 @@ __FBSDID("$FreeBSD$"); #include <netinet/tcp_pcap.h> #endif #include <netinet/tcp_syncache.h> -#ifdef TCPDEBUG #include <netinet/tcp_debug.h> -#endif /* TCPDEBUG */ #ifdef TCP_OFFLOAD #include <netinet/tcp_offload.h> #endif diff --git a/sys/netinet/tcp_timer.c b/sys/netinet/tcp_timer.c index e5af5cf5afef..6828364deea1 100644 --- a/sys/netinet/tcp_timer.c +++ b/sys/netinet/tcp_timer.c @@ -77,9 +77,7 @@ __FBSDID("$FreeBSD$"); #include <netinet6/tcp6_var.h> #endif #include <netinet/tcpip.h> -#ifdef TCPDEBUG #include <netinet/tcp_debug.h> -#endif int tcp_persmin; SYSCTL_PROC(_net_inet_tcp, OID_AUTO, persmin, diff --git a/sys/netinet/tcp_usrreq.c b/sys/netinet/tcp_usrreq.c index d77f37efad7c..1245995724e1 100644 --- a/sys/netinet/tcp_usrreq.c +++ b/sys/netinet/tcp_usrreq.c @@ -103,9 +103,7 @@ __FBSDID("$FreeBSD$"); #ifdef TCPPCAP #include <netinet/tcp_pcap.h> #endif -#ifdef TCPDEBUG #include <netinet/tcp_debug.h> -#endif #ifdef TCP_OFFLOAD #include <netinet/tcp_offload.h> #endif diff --git a/sys/sys/protosw.h b/sys/sys/protosw.h index 2fd7a0b30412..965c363afce1 100644 --- a/sys/sys/protosw.h +++ b/sys/sys/protosw.h @@ -145,55 +145,6 @@ struct protosw { #define PR_CAPATTACH 0x80 /* socket can attach in cap mode */ #define PR_SOCKBUF 0x100 /* private implementation of buffers */ -/* - * In earlier BSD network stacks, a single pr_usrreq() function pointer was - * invoked with an operation number indicating what operation was desired. - * We now provide individual function pointers which protocols can implement, - * which offers a number of benefits (such as type checking for arguments). - * These older constants are still present in order to support TCP debugging. - */ -#define PRU_ATTACH 0 /* attach protocol to up */ -#define PRU_DETACH 1 /* detach protocol from up */ -#define PRU_BIND 2 /* bind socket to address */ -#define PRU_LISTEN 3 /* listen for connection */ -#define PRU_CONNECT 4 /* establish connection to peer */ -#define PRU_ACCEPT 5 /* accept connection from peer */ -#define PRU_DISCONNECT 6 /* disconnect from peer */ -#define PRU_SHUTDOWN 7 /* won't send any more data */ -#define PRU_RCVD 8 /* have taken data; more room now */ -#define PRU_SEND 9 /* send this data */ -#define PRU_ABORT 10 /* abort (fast DISCONNECT, DETATCH) */ -#define PRU_CONTROL 11 /* control operations on protocol */ -#define PRU_SENSE 12 /* return status into m */ -#define PRU_RCVOOB 13 /* retrieve out of band data */ -#define PRU_SENDOOB 14 /* send out of band data */ -#define PRU_SOCKADDR 15 /* fetch socket's address */ -#define PRU_PEERADDR 16 /* fetch peer's address */ -#define PRU_CONNECT2 17 /* connect two sockets */ -/* begin for protocols internal use */ -#define PRU_FASTTIMO 18 /* 200ms timeout */ -#define PRU_SLOWTIMO 19 /* 500ms timeout */ -#define PRU_PROTORCV 20 /* receive from below */ -#define PRU_PROTOSEND 21 /* send to below */ -/* end for protocol's internal use */ -#define PRU_SEND_EOF 22 /* send and close */ -#define PRU_SOSETLABEL 23 /* MAC label change */ -#define PRU_CLOSE 24 /* socket close */ -#define PRU_FLUSH 25 /* flush the socket */ -#define PRU_NREQ 25 - -#ifdef PRUREQUESTS -const char *prurequests[] = { - "ATTACH", "DETACH", "BIND", "LISTEN", - "CONNECT", "ACCEPT", "DISCONNECT", "SHUTDOWN", - "RCVD", "SEND", "ABORT", "CONTROL", - "SENSE", "RCVOOB", "SENDOOB", "SOCKADDR", - "PEERADDR", "CONNECT2", "FASTTIMO", "SLOWTIMO", - "PROTORCV", "PROTOSEND", "SEND_EOF", "SOSETLABEL", - "CLOSE", "FLUSH", -}; -#endif - #ifdef _KERNEL /* users shouldn't see this decl */ struct ifnet;