xref: /linux/net/6lowpan/nhc_ghc_ext_route.c (revision 48dea9a700c8728cc31a1dd44588b97578de86ee)
1 // SPDX-License-Identifier: GPL-2.0-or-later
2 /*
3  *	6LoWPAN Extension Header compression according to RFC7400
4  */
5 
6 #include "nhc.h"
7 
8 #define LOWPAN_GHC_EXT_ROUTE_IDLEN	1
9 #define LOWPAN_GHC_EXT_ROUTE_ID_0	0xb2
10 #define LOWPAN_GHC_EXT_ROUTE_MASK_0	0xfe
11 
12 static void route_ghid_setup(struct lowpan_nhc *nhc)
13 {
14 	nhc->id[0] = LOWPAN_GHC_EXT_ROUTE_ID_0;
15 	nhc->idmask[0] = LOWPAN_GHC_EXT_ROUTE_MASK_0;
16 }
17 
18 LOWPAN_NHC(ghc_ext_route, "RFC7400 Routing Extension Header", NEXTHDR_ROUTING,
19 	   0, route_ghid_setup, LOWPAN_GHC_EXT_ROUTE_IDLEN, NULL, NULL);
20 
21 module_lowpan_nhc(ghc_ext_route);
22 MODULE_DESCRIPTION("6LoWPAN generic header routing extension compression");
23 MODULE_LICENSE("GPL");
24