^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 Fragment Header compression according to RFC6282
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) #include "nhc.h"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) #define LOWPAN_NHC_FRAGMENT_IDLEN 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) #define LOWPAN_NHC_FRAGMENT_ID_0 0xe4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) #define LOWPAN_NHC_FRAGMENT_MASK_0 0xfe
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) static void fragment_nhid_setup(struct lowpan_nhc *nhc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) nhc->id[0] = LOWPAN_NHC_FRAGMENT_ID_0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) nhc->idmask[0] = LOWPAN_NHC_FRAGMENT_MASK_0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) LOWPAN_NHC(nhc_fragment, "RFC6282 Fragment", NEXTHDR_FRAGMENT, 0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) fragment_nhid_setup, LOWPAN_NHC_FRAGMENT_IDLEN, NULL, NULL);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) module_lowpan_nhc(nhc_fragment);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) MODULE_DESCRIPTION("6LoWPAN next header RFC6282 Fragment compression");
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) MODULE_LICENSE("GPL");