diff options
author | Laszlo Attila Toth <panther@balabit.hu> | 2008-01-30 22:08:16 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-31 22:27:19 -0500 |
commit | 4a19ec5800fc3bb64e2d87c4d9fdd9e636086fe0 (patch) | |
tree | 610bd4e7dbcbdae25ba3806f4256745e98617825 /include/net/route.h | |
parent | 036c2e27bc3a6498afb35de017d810194032d765 (diff) |
[NET]: Introducing socket mark socket option.
A userspace program may wish to set the mark for each packets its send
without using the netfilter MARK target. Changing the mark can be used
for mark based routing without netfilter or for packet filtering.
It requires CAP_NET_ADMIN capability.
Signed-off-by: Laszlo Attila Toth <panther@balabit.hu>
Acked-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/route.h')
-rw-r--r-- | include/net/route.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/net/route.h b/include/net/route.h index 4eabf008413b..fcc6d5b35863 100644 --- a/include/net/route.h +++ b/include/net/route.h | |||
@@ -27,6 +27,7 @@ | |||
27 | #include <net/dst.h> | 27 | #include <net/dst.h> |
28 | #include <net/inetpeer.h> | 28 | #include <net/inetpeer.h> |
29 | #include <net/flow.h> | 29 | #include <net/flow.h> |
30 | #include <net/sock.h> | ||
30 | #include <linux/in_route.h> | 31 | #include <linux/in_route.h> |
31 | #include <linux/rtnetlink.h> | 32 | #include <linux/rtnetlink.h> |
32 | #include <linux/route.h> | 33 | #include <linux/route.h> |
@@ -149,6 +150,7 @@ static inline int ip_route_connect(struct rtable **rp, __be32 dst, | |||
149 | int flags) | 150 | int flags) |
150 | { | 151 | { |
151 | struct flowi fl = { .oif = oif, | 152 | struct flowi fl = { .oif = oif, |
153 | .mark = sk->sk_mark, | ||
152 | .nl_u = { .ip4_u = { .daddr = dst, | 154 | .nl_u = { .ip4_u = { .daddr = dst, |
153 | .saddr = src, | 155 | .saddr = src, |
154 | .tos = tos } }, | 156 | .tos = tos } }, |