summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorYOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>2008-03-24 10:28:39 +0100
committerYOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>2008-04-03 03:06:00 +0200
commit300aaeeaab5f447fcf40e911afe96df3de28f0db (patch)
tree43bc6509b745561e538972c168f1cf8d7abd4bf1 /include
parent[IPV6] SIT: Disallow 0.0.0.0 in PRL and Flush PRL if given for DEL. (diff)
downloadlinux-300aaeeaab5f447fcf40e911afe96df3de28f0db.tar.xz
linux-300aaeeaab5f447fcf40e911afe96df3de28f0db.zip
[IPV6] SIT: Add SIOCGETPRL ioctl to get/dump PRL.
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Diffstat (limited to 'include')
-rw-r--r--include/linux/if_tunnel.h4
-rw-r--r--include/net/ipip.h5
2 files changed, 8 insertions, 1 deletions
diff --git a/include/linux/if_tunnel.h b/include/linux/if_tunnel.h
index f20c224d544c..f1fbe9c930d7 100644
--- a/include/linux/if_tunnel.h
+++ b/include/linux/if_tunnel.h
@@ -7,6 +7,7 @@
#define SIOCADDTUNNEL (SIOCDEVPRIVATE + 1)
#define SIOCDELTUNNEL (SIOCDEVPRIVATE + 2)
#define SIOCCHGTUNNEL (SIOCDEVPRIVATE + 3)
+#define SIOCGETPRL (SIOCDEVPRIVATE + 4)
#define SIOCADDPRL (SIOCDEVPRIVATE + 5)
#define SIOCDELPRL (SIOCDEVPRIVATE + 6)
#define SIOCCHGPRL (SIOCDEVPRIVATE + 7)
@@ -38,6 +39,9 @@ struct ip_tunnel_prl {
__be32 addr;
__u16 flags;
__u16 __reserved;
+ __u32 datalen;
+ __u32 __reserved2;
+ void __user *data;
};
/* PRL flags */
diff --git a/include/net/ipip.h b/include/net/ipip.h
index 205536a014e8..633ed4def8e3 100644
--- a/include/net/ipip.h
+++ b/include/net/ipip.h
@@ -24,13 +24,16 @@ struct ip_tunnel
int mlink;
struct ip_tunnel_parm parms;
+
struct ip_tunnel_prl_entry *prl; /* potential router list */
+ unsigned int prl_count; /* # of entries in PRL */
};
struct ip_tunnel_prl_entry
{
struct ip_tunnel_prl_entry *next;
- struct ip_tunnel_prl entry;
+ __be32 addr;
+ u16 flags;
};
#define IPTUNNEL_XMIT() do { \