diff options
author | tuexen <tuexen@FreeBSD.org> | 2011-08-14 20:55:32 +0000 |
---|---|---|
committer | tuexen <tuexen@FreeBSD.org> | 2011-08-14 20:55:32 +0000 |
commit | 2a294422d7cbc769259a70bfdc56ef00645605a2 (patch) | |
tree | 0cf6d630bf1b965d8d20ba9c0f82eaf1aec7b1f1 /sys/netinet/sctp_pcb.c | |
parent | f05ee4368a00ea0456bb093923ed94e412c7a7a3 (diff) | |
download | FreeBSD-src-2a294422d7cbc769259a70bfdc56ef00645605a2.zip FreeBSD-src-2a294422d7cbc769259a70bfdc56ef00645605a2.tar.gz |
Add support for the spp_dscp field in the SCTP_PEER_ADDR_PARAMS
socket option. Backwards compatibility is provided by still
supporting the spp_ipv4_tos field.
Approved by: re@
MFC after: 2 months.
Diffstat (limited to 'sys/netinet/sctp_pcb.c')
-rw-r--r-- | sys/netinet/sctp_pcb.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/sys/netinet/sctp_pcb.c b/sys/netinet/sctp_pcb.c index 728fa7c..912e348 100644 --- a/sys/netinet/sctp_pcb.c +++ b/sys/netinet/sctp_pcb.c @@ -4009,20 +4009,13 @@ sctp_add_remote_addr(struct sctp_tcb *stcb, struct sockaddr *newaddr, stcb->asoc.numnets++; *(&net->ref_count) = 1; net->cwr_window_tsn = net->last_cwr_tsn = stcb->asoc.sending_seq - 1; - net->tos_flowlabel = 0; if (SCTP_BASE_SYSCTL(sctp_udp_tunneling_for_client_enable)) { net->port = htons(SCTP_BASE_SYSCTL(sctp_udp_tunneling_port)); } else { net->port = 0; } -#ifdef INET - if (newaddr->sa_family == AF_INET) - net->tos_flowlabel = stcb->asoc.default_tos; -#endif -#ifdef INET6 - if (newaddr->sa_family == AF_INET6) - net->tos_flowlabel = stcb->asoc.default_flowlabel; -#endif + net->dscp = stcb->asoc.default_dscp; + net->flowlabel = stcb->asoc.default_flowlabel; if (sctp_is_feature_on(stcb->sctp_ep, SCTP_PCB_FLAGS_DONOT_HEARTBEAT)) { net->dest_state |= SCTP_ADDR_NOHB; } else { |