rpl.h 839 B

12345678910111213141516171819202122232425262728293031323334353637
  1. /* SPDX-License-Identifier: GPL-2.0-or-later */
  2. /*
  3. * RPL implementation
  4. *
  5. * Author:
  6. * (C) 2020 Alexander Aring <[email protected]>
  7. */
  8. #ifndef _NET_RPL_H
  9. #define _NET_RPL_H
  10. #include <linux/rpl.h>
  11. #if IS_ENABLED(CONFIG_IPV6_RPL_LWTUNNEL)
  12. extern int rpl_init(void);
  13. extern void rpl_exit(void);
  14. #else
  15. static inline int rpl_init(void)
  16. {
  17. return 0;
  18. }
  19. static inline void rpl_exit(void) {}
  20. #endif
  21. size_t ipv6_rpl_srh_size(unsigned char n, unsigned char cmpri,
  22. unsigned char cmpre);
  23. void ipv6_rpl_srh_decompress(struct ipv6_rpl_sr_hdr *outhdr,
  24. const struct ipv6_rpl_sr_hdr *inhdr,
  25. const struct in6_addr *daddr, unsigned char n);
  26. void ipv6_rpl_srh_compress(struct ipv6_rpl_sr_hdr *outhdr,
  27. const struct ipv6_rpl_sr_hdr *inhdr,
  28. const struct in6_addr *daddr, unsigned char n);
  29. #endif /* _NET_RPL_H */