[iptables PATCH v2 00/17] Eliminate dedicated arptables-nft parser

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Commandline parsing was widely identical with iptables and ip6tables.
This series adds the necessary code-changes to unify the parsers into a
common one.

Changes since v1:
- Fix patch 12, the parser has to check existence of proto_parse
  callback before dereferencing it. Otherwise arptables-nft segfaults if
  '-p' option is given.
- Patches 13-17 add all the arptables quirks to restore compatibility
  with arptables-legacy. I didn't consider them important enough to push
  them unless someone complains. Yet breaking existing scripts is bad
  indeed. Please consider them RFC: If you consider (one of) them not
  important, please NACk and I will drop them before pushing.

Phil Sutter (17):
  nft: Introduce builtin_tables_lookup()
  xshared: Store optstring in xtables_globals
  nft-shared: Introduce init_cs family ops callback
  xtables: Simplify addr_mask freeing
  nft: Add family ops callbacks wrapping different nft_cmd_* functions
  xtables-standalone: Drop version number from init errors
  libxtables: Introduce xtables_globals print_help callback
  arptables: Use standard data structures when parsing
  nft-arp: Introduce post_parse callback
  nft-shared: Make nft_check_xt_legacy() family agnostic
  xtables: Derive xtables_globals from family
  nft: Merge xtables-arp-standalone.c into xtables-standalone.c
  xtables: arptables doesn't warn about empty interface
  xtables: arptables accepts but ignores '-m'
  xtables: arptables ignores wrong -t values
  xtables: Support '!' betwen option and argument
  nft: Store maximum allowed chain name length in family ops

 include/xtables.h                 |   2 +
 iptables/Makefile.am              |   2 +-
 iptables/nft-arp.c                | 253 +++++++++-
 iptables/nft-ipv4.c               |  94 ++++
 iptables/nft-ipv6.c               | 105 +++++
 iptables/nft-shared.c             |   5 +
 iptables/nft-shared.h             |  25 +
 iptables/nft.c                    |  19 +-
 iptables/nft.h                    |   2 +-
 iptables/xshared.h                |   2 +
 iptables/xtables-arp-standalone.c |  65 ---
 iptables/xtables-arp.c            | 749 +-----------------------------
 iptables/xtables-eb-translate.c   |   1 -
 iptables/xtables-eb.c             |   7 +-
 iptables/xtables-monitor.c        |   2 +-
 iptables/xtables-multi.h          |   3 +
 iptables/xtables-restore.c        |   9 +-
 iptables/xtables-save.c           |   6 +-
 iptables/xtables-standalone.c     |  54 ++-
 iptables/xtables-translate.c      |   7 +-
 iptables/xtables.c                | 336 +++++---------
 21 files changed, 701 insertions(+), 1047 deletions(-)
 delete mode 100644 iptables/xtables-arp-standalone.c

-- 
2.33.0




[Index of Archives]     [Netfitler Users]     [Berkeley Packet Filter]     [LARTC]     [Bugtraq]     [Yosemite Forum]

  Powered by Linux