^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) // SPDX-License-Identifier: GPL-2.0-or-later
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) * 6LoWPAN IPv6 Destination Options Header compression according to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) * RFC6282
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) #include "nhc.h"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) #define LOWPAN_NHC_DEST_IDLEN 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) #define LOWPAN_NHC_DEST_ID_0 0xe6
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) #define LOWPAN_NHC_DEST_MASK_0 0xfe
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) static void dest_nhid_setup(struct lowpan_nhc *nhc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) nhc->id[0] = LOWPAN_NHC_DEST_ID_0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) nhc->idmask[0] = LOWPAN_NHC_DEST_MASK_0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) LOWPAN_NHC(nhc_dest, "RFC6282 Destination Options", NEXTHDR_DEST, 0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) dest_nhid_setup, LOWPAN_NHC_DEST_IDLEN, NULL, NULL);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) module_lowpan_nhc(nhc_dest);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) MODULE_DESCRIPTION("6LoWPAN next header RFC6282 Destination Options compression");
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) MODULE_LICENSE("GPL");