summaryrefslogtreecommitdiffstats
path: root/lib/sockopt.c
diff options
context:
space:
mode:
authorStephen Hemminger <stephen.hemminger@vyatta.com>2008-07-08 22:29:18 -0700
committerStephen Hemminger <stephen.hemminger@vyatta.com>2008-07-08 22:29:18 -0700
commit7ddd7a8c51f05287919e9c4e39756f9a52dac99c (patch)
tree470a9fe7f1ad83fb3fe275af7fac7f8f78cdbc35 /lib/sockopt.c
parent28de8497e34585088d74d739d8f6d9ca27eb311d (diff)
downloadquagga-7ddd7a8c51f05287919e9c4e39756f9a52dac99c.tar.bz2
quagga-7ddd7a8c51f05287919e9c4e39756f9a52dac99c.tar.xz
Set IPv4 TOS value for BGP
Bugfix 2847 Set TOS to internet control for BGP traffic
Diffstat (limited to 'lib/sockopt.c')
-rw-r--r--lib/sockopt.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/sockopt.c b/lib/sockopt.c
index 985c3a38..e0027e88 100644
--- a/lib/sockopt.c
+++ b/lib/sockopt.c
@@ -342,6 +342,19 @@ setsockopt_ipv4_ifindex (int sock, int val)
}
int
+setsockopt_ipv4_tos(int sock, int tos)
+{
+ int ret;
+
+ ret = setsockopt (sock, IPPROTO_IP, IP_TOS, &tos, sizeof (tos));
+ if (ret < 0)
+ zlog_warn ("Can't set IP_TOS option for fd %d to %#x: %s",
+ sock, tos, safe_strerror(errno));
+ return ret;
+}
+
+
+int
setsockopt_ifindex (int af, int sock, int val)
{
int ret = -1;