aboutsummaryrefslogtreecommitdiffstats
path: root/src/gb/gprs_ns.c
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2013-03-25 11:59:58 +0100
committerHolger Hans Peter Freyther <zecke@selfish.org>2013-03-25 12:06:36 +0100
commit2c3393d9e3fc1999641d8dab3b59418393c4b616 (patch)
tree9c6468a3a3697401968fcf9e08f1c80cd8624dcf /src/gb/gprs_ns.c
parent1c83e36cc930f5efc17fd66ccb9a6c541e44c5de (diff)
gprs_ns: Allow to set the DSCP for the UDP socket.
Allow to tag the NS service with a custom DSCP.
Diffstat (limited to 'src/gb/gprs_ns.c')
-rw-r--r--src/gb/gprs_ns.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gb/gprs_ns.c b/src/gb/gprs_ns.c
index cdcf36e1..ef937d9e 100644
--- a/src/gb/gprs_ns.c
+++ b/src/gb/gprs_ns.c
@@ -1051,6 +1051,13 @@ int gprs_ns_nsip_listen(struct gprs_ns_inst *nsi)
if (ret < 0)
return ret;
+ ret = setsockopt(nsi->nsip.fd.fd, IPPROTO_IP, IP_TOS,
+ &nsi->nsip.dscp, sizeof(nsi->nsip.dscp));
+ if (ret < 0)
+ LOGP(DNS, LOGL_ERROR,
+ "Failed to set the DSCP to %d with ret(%d) errno(%d)\n",
+ nsi->nsip.dscp, ret, errno);
+
return ret;
}