Page MenuHomeFreeBSD

D34154.id102324.diff
No OneTemporary

D34154.id102324.diff

Index: share/man/man4/ip.4
===================================================================
--- share/man/man4/ip.4
+++ share/man/man4/ip.4
@@ -92,8 +92,8 @@
.Dv IP_TOS
and
.Dv IP_TTL
-may be used to set the type-of-service and time-to-live
-fields in the
+may be used to set the differential service codepoint (DSCP) and
+time-to-live (TTL) fields in the
.Tn IP
header for
.Dv SOCK_STREAM , SOCK_DGRAM ,
@@ -102,8 +102,8 @@
sockets.
For example,
.Bd -literal
-int tos = IPTOS_LOWDELAY; /* see <netinet/ip.h> */
-setsockopt(s, IPPROTO_IP, IP_TOS, &tos, sizeof(tos));
+int dscp = IPTOS_DSCP_EF; /* see <netinet/ip.h> */
+setsockopt(s, IPPROTO_IP, IP_TOS, &dscp, sizeof(dscp));
int ttl = 60; /* max = 255 */
setsockopt(s, IPPROTO_IP, IP_TTL, &ttl, sizeof(ttl));
Index: sys/netinet/ip.h
===================================================================
--- sys/netinet/ip.h
+++ sys/netinet/ip.h
@@ -79,7 +79,7 @@
#define IPTOS_LOWDELAY 0x10
#define IPTOS_THROUGHPUT 0x08
#define IPTOS_RELIABILITY 0x04
-#define IPTOS_MINCOST 0x02
+#define IPTOS_MINCOST IPTOS_DSCP_CS0
/*
* Definitions for IP precedence (also in ip_tos) (deprecated).
Index: sys/netinet/tcp_usrreq.c
===================================================================
--- sys/netinet/tcp_usrreq.c
+++ sys/netinet/tcp_usrreq.c
@@ -82,6 +82,7 @@
#include <netinet/in_pcb.h>
#include <netinet/in_systm.h>
#include <netinet/in_var.h>
+#include <netinet/ip.h>
#include <netinet/ip_var.h>
#ifdef INET6
#include <netinet/ip6.h>
@@ -1757,6 +1758,12 @@
case IPPROTO_IP:
switch (sopt->sopt_name) {
case IP_TOS:
+ int optval;
+ if (sooptcopyin(sopt, &optval, sizeof optval,
+ sizeof optval))
+ break;
+ inp->inp_ip_tos = optval & ~IPTOS_ECN_MASK;
+ break;
case IP_TTL:
/* Notify tcp stacks that care (e.g. RACK). */
break;

File Metadata

Mime Type
text/plain
Expires
Sat, May 2, 11:38 AM (16 h, 4 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
32617527
Default Alt Text
D34154.id102324.diff (1 KB)

Event Timeline