Page MenuHomeFreeBSD

D40621.diff
No OneTemporary

D40621.diff

diff --git a/sys/netinet/tcp.h b/sys/netinet/tcp.h
--- a/sys/netinet/tcp.h
+++ b/sys/netinet/tcp.h
@@ -336,6 +336,7 @@
#define TCPI_OPT_ECN 0x08
#define TCPI_OPT_TOE 0x10
#define TCPI_OPT_TFO 0x20
+#define TCPI_OPT_ACE 0x40
/* Maximum length of log ID. */
#define TCP_LOG_ID_LEN 64
diff --git a/sys/netinet/tcp_usrreq.c b/sys/netinet/tcp_usrreq.c
--- a/sys/netinet/tcp_usrreq.c
+++ b/sys/netinet/tcp_usrreq.c
@@ -1556,8 +1556,20 @@
ti->tcpi_snd_wscale = tp->snd_scale;
ti->tcpi_rcv_wscale = tp->rcv_scale;
}
- if (tp->t_flags2 & (TF2_ECN_PERMIT | TF2_ACE_PERMIT))
- ti->tcpi_options |= TCPI_OPT_ECN;
+ switch (tp->t_flags2 & (TF2_ECN_PERMIT | TF2_ACE_PERMIT)) {
+ case TF2_ECN_PERMIT:
+ ti->tcpi_options |= TCPI_OPT_ECN;
+ break;
+ case TF2_ACE_PERMIT:
+ /* FALLTHROUGH */
+ case TF2_ECN_PERMIT | TF2_ACE_PERMIT:
+ ti->tcpi_options |= TCPI_OPT_ACE;
+ break;
+ default:
+ break;
+ }
+ if (IS_FASTOPEN(tp->t_flags))
+ ti->tcpi_options |= TCPI_OPT_TFO;
ti->tcpi_rto = tp->t_rxtcur * tick;
ti->tcpi_last_data_recv = ((uint32_t)ticks - tp->t_rcvtime) * tick;

File Metadata

Mime Type
text/plain
Expires
Fri, Oct 10, 9:49 AM (18 h, 39 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
23526929
Default Alt Text
D40621.diff (1 KB)

Event Timeline