nhc_ghc_icmpv6.c 823 B

12345678910111213141516171819202122232425262728
  1. /*
  2. * 6LoWPAN ICMPv6 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. #include "nhc.h"
  10. #define LOWPAN_GHC_ICMPV6_IDLEN 1
  11. #define LOWPAN_GHC_ICMPV6_ID_0 0xdf
  12. #define LOWPAN_GHC_ICMPV6_MASK_0 0xff
  13. static void icmpv6_ghid_setup(struct lowpan_nhc *nhc)
  14. {
  15. nhc->id[0] = LOWPAN_GHC_ICMPV6_ID_0;
  16. nhc->idmask[0] = LOWPAN_GHC_ICMPV6_MASK_0;
  17. }
  18. LOWPAN_NHC(ghc_icmpv6, "RFC7400 ICMPv6", NEXTHDR_ICMP, 0,
  19. icmpv6_ghid_setup, LOWPAN_GHC_ICMPV6_IDLEN, NULL, NULL);
  20. module_lowpan_nhc(ghc_icmpv6);
  21. MODULE_DESCRIPTION("6LoWPAN generic header ICMPv6 compression");
  22. MODULE_LICENSE("GPL");