aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGleb Smirnoff <glebius@FreeBSD.org>2026-03-12 04:44:25 +0000
committerGleb Smirnoff <glebius@FreeBSD.org>2026-03-12 16:37:53 +0000
commitc0462c2deafdcfe885e8d6f91b529d8cbddc6014 (patch)
treedced7e88f4f4c35d5d6c9738d140a84ccb9c2eca
parenta68e3a8ae8401fe3ba6c0a85bbd3de87bd2e36f2 (diff)
tcp: make sack_filter.c compilable without _WANT_TCPCB
This file can be compiled as a standalone program for debugging purposes. Achieve that without exposing hack from tcp_var.h that is destined for removal.
-rw-r--r--sys/netinet/tcp_stacks/sack_filter.c29
1 files changed, 15 insertions, 14 deletions
diff --git a/sys/netinet/tcp_stacks/sack_filter.c b/sys/netinet/tcp_stacks/sack_filter.c
index 2b70548f3cc6..71875c58989d 100644
--- a/sys/netinet/tcp_stacks/sack_filter.c
+++ b/sys/netinet/tcp_stacks/sack_filter.c
@@ -24,28 +24,19 @@
*
*/
#include <sys/cdefs.h>
-#ifndef _KERNEL
-#define _WANT_TCPCB 1
-#endif
#include <sys/types.h>
#include <sys/queue.h>
#include <sys/socket.h>
+#include <netinet/in.h>
+#include <netinet/tcp.h>
+#include <netinet/tcp_seq.h>
+
#ifdef _KERNEL
#include <sys/mbuf.h>
#include <sys/sockopt.h>
-#endif
-#include <netinet/in.h>
-#ifdef _KERNEL
#include <netinet/in_pcb.h>
-#else
-struct inpcb {
- uint32_t stuff;
-};
-#endif
-#include <netinet/tcp.h>
#include <netinet/tcp_var.h>
-#include <netinet/tcp_seq.h>
-#ifndef _KERNEL
+#else /* ! _KERNEL */
#include <stdio.h>
#include <unistd.h>
#include <string.h>
@@ -53,7 +44,17 @@ struct inpcb {
#include <stdlib.h>
#include <limits.h>
#include <getopt.h>
+struct sackblk {
+ tcp_seq start; /* start seq no. of sack block */
+ tcp_seq end; /* end seq no. */
+};
+struct tcpcb {
+ tcp_seq snd_una;
+ tcp_seq snd_max;
+ uint32_t t_maxseg;
+};
#endif
+
#include "sack_filter.h"
/*