diff options
| author | Stefan Schmidt <stefan@osg.samsung.com> | 2015-12-09 16:46:26 -0500 |
|---|---|---|
| committer | Marcel Holtmann <marcel@holtmann.org> | 2015-12-09 19:25:25 -0500 |
| commit | 20616a5a1e3bb47c385c6d5f27520e7a3cc82864 (patch) | |
| tree | 2e2dd6dc4e12c819de9167852ef1d10d15ddf33e /net/6lowpan | |
| parent | c39da3bb5b978ca03f1702c99965f3db1204516a (diff) | |
6lowpan: add nhc module for GHC destination extension header detection
Acked-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Signed-off-by: Stefan Schmidt <stefan@osg.samsung.com>
Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/6lowpan')
| -rw-r--r-- | net/6lowpan/Kconfig | 6 | ||||
| -rw-r--r-- | net/6lowpan/Makefile | 1 | ||||
| -rw-r--r-- | net/6lowpan/nhc_ghc_ext_dest.c | 27 |
3 files changed, 34 insertions, 0 deletions
diff --git a/net/6lowpan/Kconfig b/net/6lowpan/Kconfig index 0a3f5a8b0f6d..e5184e65d4d3 100644 --- a/net/6lowpan/Kconfig +++ b/net/6lowpan/Kconfig | |||
| @@ -75,4 +75,10 @@ config 6LOWPAN_GHC_ICMPV6 | |||
| 75 | ---help--- | 75 | ---help--- |
| 76 | 6LoWPAN IPv6 ICMPv6 generic header compression according to RFC7400. | 76 | 6LoWPAN IPv6 ICMPv6 generic header compression according to RFC7400. |
| 77 | 77 | ||
| 78 | config 6LOWPAN_GHC_EXT_HDR_DEST | ||
| 79 | tristate "GHC Destination Options Header Support" | ||
| 80 | ---help--- | ||
| 81 | 6LoWPAN IPv6 destination option generic header compression according | ||
| 82 | to RFC7400. | ||
| 83 | |||
| 78 | endif | 84 | endif |
diff --git a/net/6lowpan/Makefile b/net/6lowpan/Makefile index 86af3fd141a1..fc4bac00bd20 100644 --- a/net/6lowpan/Makefile +++ b/net/6lowpan/Makefile | |||
| @@ -15,3 +15,4 @@ obj-$(CONFIG_6LOWPAN_NHC_UDP) += nhc_udp.o | |||
| 15 | obj-$(CONFIG_6LOWPAN_GHC_EXT_HDR_HOP) += nhc_ghc_ext_hop.o | 15 | obj-$(CONFIG_6LOWPAN_GHC_EXT_HDR_HOP) += nhc_ghc_ext_hop.o |
| 16 | obj-$(CONFIG_6LOWPAN_GHC_UDP) += nhc_ghc_udp.o | 16 | obj-$(CONFIG_6LOWPAN_GHC_UDP) += nhc_ghc_udp.o |
| 17 | obj-$(CONFIG_6LOWPAN_GHC_ICMPV6) += nhc_ghc_icmpv6.o | 17 | obj-$(CONFIG_6LOWPAN_GHC_ICMPV6) += nhc_ghc_icmpv6.o |
| 18 | obj-$(CONFIG_6LOWPAN_GHC_EXT_HDR_DEST) += nhc_ghc_ext_dest.o | ||
diff --git a/net/6lowpan/nhc_ghc_ext_dest.c b/net/6lowpan/nhc_ghc_ext_dest.c new file mode 100644 index 000000000000..9887b3a15348 --- /dev/null +++ b/net/6lowpan/nhc_ghc_ext_dest.c | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | /* | ||
| 2 | * 6LoWPAN Extension Header compression according to RFC7400 | ||
| 3 | * | ||
| 4 | * This program is free software; you can redistribute it and/or | ||
| 5 | * modify it under the terms of the GNU General Public License | ||
| 6 | * as published by the Free Software Foundation; either version | ||
| 7 | * 2 of the License, or (at your option) any later version. | ||
| 8 | */ | ||
| 9 | |||
| 10 | #include "nhc.h" | ||
| 11 | |||
| 12 | #define LOWPAN_GHC_EXT_DEST_IDLEN 1 | ||
| 13 | #define LOWPAN_GHC_EXT_DEST_ID_0 0xb6 | ||
| 14 | #define LOWPAN_GHC_EXT_DEST_MASK_0 0xfe | ||
| 15 | |||
| 16 | static void dest_ghid_setup(struct lowpan_nhc *nhc) | ||
| 17 | { | ||
| 18 | nhc->id[0] = LOWPAN_GHC_EXT_DEST_ID_0; | ||
| 19 | nhc->idmask[0] = LOWPAN_GHC_EXT_DEST_MASK_0; | ||
| 20 | } | ||
| 21 | |||
| 22 | LOWPAN_NHC(ghc_ext_dest, "RFC7400 Destination Extension Header", NEXTHDR_DEST, | ||
| 23 | 0, dest_ghid_setup, LOWPAN_GHC_EXT_DEST_IDLEN, NULL, NULL); | ||
| 24 | |||
| 25 | module_lowpan_nhc(ghc_ext_dest); | ||
| 26 | MODULE_DESCRIPTION("6LoWPAN generic header destination extension compression"); | ||
| 27 | MODULE_LICENSE("GPL"); | ||
