tc_skbmod.h 778 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /*
  2. * Copyright (c) 2016, Jamal Hadi Salim
  3. *
  4. * This program is free software; you can redistribute it and/or modify
  5. * it under the terms of the GNU General Public License as published by
  6. * the Free Software Foundation; either version 2 of the License, or
  7. * (at your option) any later version.
  8. */
  9. #ifndef __LINUX_TC_SKBMOD_H
  10. #define __LINUX_TC_SKBMOD_H
  11. #include <linux/pkt_cls.h>
  12. #define TCA_ACT_SKBMOD 15
  13. #define SKBMOD_F_DMAC 0x1
  14. #define SKBMOD_F_SMAC 0x2
  15. #define SKBMOD_F_ETYPE 0x4
  16. #define SKBMOD_F_SWAPMAC 0x8
  17. struct tc_skbmod {
  18. tc_gen;
  19. __u64 flags;
  20. };
  21. enum {
  22. TCA_SKBMOD_UNSPEC,
  23. TCA_SKBMOD_TM,
  24. TCA_SKBMOD_PARMS,
  25. TCA_SKBMOD_DMAC,
  26. TCA_SKBMOD_SMAC,
  27. TCA_SKBMOD_ETYPE,
  28. TCA_SKBMOD_PAD,
  29. __TCA_SKBMOD_MAX
  30. };
  31. #define TCA_SKBMOD_MAX (__TCA_SKBMOD_MAX - 1)
  32. #endif