2 * SPDX-License-Identifier: BSD-3-Clause
4 * Copyright (c) 1982, 1986, 1993
5 * The Regents of the University of California. All rights reserved.
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 * 2. Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 * 3. Neither the name of the University nor the names of its contributors
16 * may be used to endorse or promote products derived from this software
17 * without specific prior written permission.
19 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
20 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
23 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * @(#)tcp_debug.h 8.1 (Berkeley) 6/10/93
35 #ifndef _NETINET_TCP_DEBUG_H_
36 #define _NETINET_TCP_DEBUG_H_
39 uint32_t td_time; /* network format */
45 * Co-existense of td_ti and td_ti6 below is ugly, but it is necessary
46 * to achieve backword compatibility to some extent.
48 struct tcpiphdr td_ti;
50 #define IP6_HDR_LEN 40 /* sizeof(struct ip6_hdr) */
51 #if !defined(_KERNEL) && defined(INET6)
54 u_char ip6buf[IP6_HDR_LEN];
58 #define td_ip6buf td_ti6.ip6buf
70 static const char *tanames[] =
71 { "input", "output", "user", "respond", "drop" };
74 #define TCP_NDEBUG 100
76 /* These older constants are still present in order to support TCP debugging. */
77 #define PRU_ATTACH 0 /* attach protocol to up */
78 #define PRU_DETACH 1 /* detach protocol from up */
79 #define PRU_BIND 2 /* bind socket to address */
80 #define PRU_LISTEN 3 /* listen for connection */
81 #define PRU_CONNECT 4 /* establish connection to peer */
82 #define PRU_ACCEPT 5 /* accept connection from peer */
83 #define PRU_DISCONNECT 6 /* disconnect from peer */
84 #define PRU_SHUTDOWN 7 /* won't send any more data */
85 #define PRU_RCVD 8 /* have taken data; more room now */
86 #define PRU_SEND 9 /* send this data */
87 #define PRU_ABORT 10 /* abort (fast DISCONNECT, DETATCH) */
88 #define PRU_CONTROL 11 /* control operations on protocol */
89 #define PRU_SENSE 12 /* return status into m */
90 #define PRU_RCVOOB 13 /* retrieve out of band data */
91 #define PRU_SENDOOB 14 /* send out of band data */
92 #define PRU_SOCKADDR 15 /* fetch socket's address */
93 #define PRU_PEERADDR 16 /* fetch peer's address */
94 #define PRU_CONNECT2 17 /* connect two sockets */
95 /* begin for protocols internal use */
96 #define PRU_FASTTIMO 18 /* 200ms timeout */
97 #define PRU_SLOWTIMO 19 /* 500ms timeout */
98 #define PRU_PROTORCV 20 /* receive from below */
99 #define PRU_PROTOSEND 21 /* send to below */
100 /* end for protocol's internal use */
101 #define PRU_SEND_EOF 22 /* send and close */
102 #define PRU_SOSETLABEL 23 /* MAC label change */
103 #define PRU_CLOSE 24 /* socket close */
104 #define PRU_FLUSH 25 /* flush the socket */
108 const char *prurequests[] = {
109 "ATTACH", "DETACH", "BIND", "LISTEN",
110 "CONNECT", "ACCEPT", "DISCONNECT", "SHUTDOWN",
111 "RCVD", "SEND", "ABORT", "CONTROL",
112 "SENSE", "RCVOOB", "SENDOOB", "SOCKADDR",
113 "PEERADDR", "CONNECT2", "FASTTIMO", "SLOWTIMO",
114 "PROTORCV", "PROTOSEND", "SEND_EOF", "SOSETLABEL",
119 #endif /* !_NETINET_TCP_DEBUG_H_ */