diff --git a/netio.c b/netio.c index 4f0a5fd..31331b9 100644 --- a/netio.c +++ b/netio.c @@ -374,7 +374,7 @@ void set_sock_priority(int sock, enum dropbear_prio prio) { /* Don't log ENOTSOCK errors so that this can harmlessly be called * on a client '-J' proxy pipe */ -#ifdef IPTOS_DSCP_AF21 +#ifdef IP_TOS /* Set the DSCP field for outbound IP packet priority. rfc4594 has some guidance to meanings. @@ -388,11 +388,14 @@ void set_sock_priority(int sock, enum dropbear_prio prio) { Old Dropbear/OpenSSH and Debian/Ubuntu OpenSSH (at Jan 2022) use IPTOS_LOWDELAY/IPTOS_THROUGHPUT + + DSCP constants are from Linux headers, applicable to other platforms + such as macos. */ if (prio == DROPBEAR_PRIO_LOWDELAY) { - val = IPTOS_DSCP_AF21; + val = 0x48; /* IPTOS_DSCP_AF21 */ } else if (prio == DROPBEAR_PRIO_BULK) { - val = IPTOS_DSCP_AF11; + val = 0x28; /* IPTOS_DSCP_AF11; */ } else { val = 0; /* default */ } @@ -406,7 +409,7 @@ void set_sock_priority(int sock, enum dropbear_prio prio) { if (rc < 0 && errno != ENOTSOCK) { TRACE(("Couldn't set IP_TOS (%s)", strerror(errno))); } -#endif +#endif /* IP_TOS */ #ifdef HAVE_LINUX_PKT_SCHED_H /* Set scheduling priority within the local Linux network stack */