52 lines
1.6 KiB
Diff
52 lines
1.6 KiB
Diff
From: "Alexey I. Froloff" <raorn@raorn.name>
|
|
Date: Fri, 6 Apr 2012 05:50:58 +0000
|
|
Subject: Treat ND option 31 as userland (DNSSL support)
|
|
|
|
commit e35f30c131a562bafd069820a6983fd4023e606e upstream.
|
|
|
|
As specified in RFC6106, DNSSL option contains one or more domain names
|
|
of DNS suffixes. 8-bit identifier of the DNSSL option type as assigned
|
|
by the IANA is 31. This option should also be treated as userland.
|
|
|
|
Signed-off-by: Alexey I. Froloff <raorn@raorn.name>
|
|
Signed-off-by: David S. Miller <davem@davemloft.net>
|
|
---
|
|
include/net/ndisc.h | 1 +
|
|
net/ipv6/ndisc.c | 4 +++-
|
|
2 files changed, 4 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/include/net/ndisc.h b/include/net/ndisc.h
|
|
index 6f9c25a..c02b6ad 100644
|
|
--- a/include/net/ndisc.h
|
|
+++ b/include/net/ndisc.h
|
|
@@ -34,6 +34,7 @@ enum {
|
|
__ND_OPT_ARRAY_MAX,
|
|
ND_OPT_ROUTE_INFO = 24, /* RFC4191 */
|
|
ND_OPT_RDNSS = 25, /* RFC5006 */
|
|
+ ND_OPT_DNSSL = 31, /* RFC6106 */
|
|
__ND_OPT_MAX
|
|
};
|
|
|
|
diff --git a/net/ipv6/ndisc.c b/net/ipv6/ndisc.c
|
|
index 1d6fb0c..7cb236e 100644
|
|
--- a/net/ipv6/ndisc.c
|
|
+++ b/net/ipv6/ndisc.c
|
|
@@ -15,6 +15,7 @@
|
|
/*
|
|
* Changes:
|
|
*
|
|
+ * Alexey I. Froloff : RFC6106 (DNSSL) support
|
|
* Pierre Ynard : export userland ND options
|
|
* through netlink (RDNSS support)
|
|
* Lars Fenneberg : fixed MTU setting on receipt
|
|
@@ -228,7 +229,8 @@ static struct nd_opt_hdr *ndisc_next_option(struct nd_opt_hdr *cur,
|
|
|
|
static inline int ndisc_is_useropt(struct nd_opt_hdr *opt)
|
|
{
|
|
- return opt->nd_opt_type == ND_OPT_RDNSS;
|
|
+ return opt->nd_opt_type == ND_OPT_RDNSS ||
|
|
+ opt->nd_opt_type == ND_OPT_DNSSL;
|
|
}
|
|
|
|
static struct nd_opt_hdr *ndisc_next_useropt(struct nd_opt_hdr *cur,
|