On Tue, Apr 06, 2021 at 10:57:37AM +0800, Firo Yang wrote: > The 04/03/2021 20:22, Pablo Neira Ayuso wrote: > > On Sat, Apr 03, 2021 at 08:15:17PM +0200, Pablo Neira Ayuso wrote: > > > Hi, > > > > > > On Thu, Apr 01, 2021 at 12:07:40PM +0800, Firo Yang wrote: > > > > Our customer reported a following issue: > > > > If '--concurrent' was passed to ebtables command behind other arguments, > > > > '--concurrent' will not take effect sometimes; for a simple example, > > > > ebtables -L --concurrent. This is becuase the handling of '--concurrent' > > > > is implemented in a passing-order-dependent way. > > > > > > > > So we can fix this problem by processing it before other arguments. > > > > > > Would you instead make a patch to spew an error if --concurrent is the > > > first argument? > > > > Wrong wording: > > > > Would you instead make a patch to spew an error if --concurrent is > > _not_ the first argument? > > Hi Pablo, I think it would make more sense if we don't introduce this > inconvenice to users. If you insist, I would go create the patch as you > intended. See ebtables.c line 579. /* The scenario induced by this loop makes that: * '-t' ,'-M' and --atomic (if specified) have to come * before '-A' and the like */ There are other options following this approach, please align --concurrent with those. Have a look at 'M' and 't' for the error that is reported. case 'M': /* Modprobe */ if (OPT_COMMANDS) ebt_print_error2("Please put the -M option earlier"); Thanks.