Subject: [RFCv4 bluetooth-next 2/2] ipv6: add 6co as icmpv6 userspace option

From: Alexander Aring <[email-masked]>
Date: Mon, 14 Dec 2015 15:00:54 +0100

This patch adds the 6LoWPAN Context Option (6CO) as userspace option to
processing such options inside RA messages in userspace.

Cc: David S. Miller <[email-masked]>
Cc: Alexey Kuznetsov <[email-masked]>
Cc: James Morris <[email-masked]>
Cc: Hideaki YOSHIFUJI <[email-masked]>
Cc: Patrick McHardy <[email-masked]>
Signed-off-by: Alexander Aring <[email-masked]>
---
 include/net/ndisc.h | 1 +
 net/ipv6/ndisc.c    | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/include/net/ndisc.h b/include/net/ndisc.h
index 2d8edaa..944258d 100644
--- a/include/net/ndisc.h
+++ b/include/net/ndisc.h
@@ -35,6 +35,7 @@ enum {
 	ND_OPT_ROUTE_INFO = 24,		/* RFC4191 */
 	ND_OPT_RDNSS = 25,		/* RFC5006 */
 	ND_OPT_DNSSL = 31,		/* RFC6106 */
+	ND_OPT_6CO = 34,		/* RFC6775 */
 	__ND_OPT_MAX
 };
 
diff --git a/net/ipv6/ndisc.c b/net/ipv6/ndisc.c
index d6161e1..bed154e 100644
--- a/net/ipv6/ndisc.c
+++ b/net/ipv6/ndisc.c
@@ -188,7 +188,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 ||
-		opt->nd_opt_type == ND_OPT_DNSSL;
+		opt->nd_opt_type == ND_OPT_DNSSL ||
+		opt->nd_opt_type == ND_OPT_6CO;
 }
 
 static struct nd_opt_hdr *ndisc_next_useropt(struct nd_opt_hdr *cur,
-- 
2.6.1