On Fri, Nov 24, 2023 at 12:13:22PM +0100, Phil Sutter wrote: > Faced with the need to extend optflags, inverse_for_options and > commands_v_options arrays in order to integrate ebtables-specific > options, I chose to get rid of them all instead. > > Patch 1 replaces opt2char() function which didn't work well since not > every option has printable short-option character. The callback-based > replacement returns the long-option and should make error messages more > readable this way. > > Patch 2 elminates the inverse_for_options array along with the loop > turning a given option into its bit's position for use in the array. The > switch statement in the replacing callback is much easier to maintain > and extend. > > Patch 3 makes use of the fact that no command has a mandatory option > anymore. So every combination is either allowed or not, and a single bit > may indicate that. > > Phil Sutter (3): > xshared: Introduce xt_cmd_parse_ops::option_name > xshared: Introduce xt_cmd_parse_ops::option_invert > xshared: Simplify generic_opt_check() Series applied.