On Mon, Mar 12, 2018 at 11:58:01PM +0100, Alban Vidal wrote:
[...]
> diff --git a/iptables/ip6tables-save.c b/iptables/ip6tables-save.c
> index 8e3a6afd..a94beffc 100644

Please, send us patches in git-format-patch, include a patch
description and add your Signed-off-by tag.

More comments below.

> --- a/iptables/ip6tables-save.c
> +++ b/iptables/ip6tables-save.c
> @@ -19,11 +19,15 @@
>  #include "ip6tables.h"
>  #include "ip6tables-multi.h"
>  
> -static int show_counters;
> +static int show_counters = false;

No need to initialize code that is implicitly initialized because of
being in the bss.

> +
> +/* if true (opt -Z, --zero): Reset to zero counters of the chains */

No need for comment.

> +static int rst_chain_counters = false;

I would call this:

        display_zero_counters

This is not resetting counters, it just displays them as zero. Same
comment applies to documentation.

>  static const struct option options[] = {
>       {.name = "counters", .has_arg = false, .val = 'c'},
>       {.name = "dump",     .has_arg = false, .val = 'd'},
> +     {.name = "zero",     .has_arg = false, .val = 'Z'},
>       {.name = "table",    .has_arg = true,  .val = 't'},
>       {.name = "modprobe", .has_arg = true,  .val = 'M'},
>       {.name = "file",     .has_arg = true,  .val = 'f'},
> @@ -96,7 +100,13 @@ static int do_output(const char *tablename)
>                       struct xt_counters count;
>                       printf("%s ",
>                              ip6tc_get_policy(chain, &count, h));
> -                     printf("[%llu:%llu]\n", (unsigned long long)count.pcnt, 
> (unsigned long long)count.bcnt);
> +                     if (!rst_chain_counters) {
> +                             /* Default value, print count */

No need for comment above.

> +                             printf("[%llu:%llu]\n", (unsigned long 
> long)count.pcnt, (unsigned long long)count.bcnt);
> +                     } else {
> +                             /* Reset to zero counters of the chains */
> +                             printf("[0:0]\n");
> +                     }
>               } else {
>                       printf("- [0:0]\n");
>               }
> @@ -146,15 +156,17 @@ int ip6tables_save_main(int argc, char *argv[])
>       init_extensions6();
>  #endif
>  
> -     while ((c = getopt_long(argc, argv, "bcdt:M:f:", options, NULL)) != -1) 
> {
> +     while ((c = getopt_long(argc, argv, "bcZdt:M:f:", options, NULL)) != 
> -1) {
>               switch (c) {
>               case 'b':
>                       fprintf(stderr, "-b/--binary option is not 
> implemented\n");
>                       break;
>               case 'c':
> -                     show_counters = 1;
> +                     show_counters = true;

Do this update in a separated patch: One patch per logical change.

> +                     break;
> +             case 'Z':
> +                     rst_chain_counters = true;
>                       break;
> -
>               case 't':
>                       /* Select specific table. */
>                       tablename = optarg;
> diff --git a/iptables/iptables-save.8.in b/iptables/iptables-save.8.in
> index 51e11f3e..200d6448 100644
> --- a/iptables/iptables-save.8.in
> +++ b/iptables/iptables-save.8.in
> @@ -24,10 +24,10 @@ iptables-save \(em dump iptables rules
>  ip6tables-save \(em dump iptables rules
>  .SH SYNOPSIS
>  \fBiptables\-save\fP [\fB\-M\fP \fImodprobe\fP] [\fB\-c\fP]
> -[\fB\-t\fP \fItable\fP] [\fB\-f\fP \fIfilename\fP]
> +[\fB\-Z\fP] [\fB\-t\fP \fItable\fP] [\fB\-f\fP \fIfilename\fP]
>  .P
>  \fBip6tables\-save\fP [\fB\-M\fP \fImodprobe\fP] [\fB\-c\fP]
> -[\fB\-t\fP \fItable\fP] [\fB\-f\fP \fIfilename\fP]
> +[\fB\-Z\fP] [\fB\-t\fP \fItable\fP] [\fB\-f\fP \fIfilename\fP]
>  .SH DESCRIPTION
>  .PP
>  .B iptables-save
> @@ -45,19 +45,24 @@ Specify a filename to log the output to. If not 
> specified, iptables-save
>  will log to STDOUT.
>  .TP
>  \fB\-c\fR, \fB\-\-counters\fR
> -include the current values of all packet and byte counters in the output
> +Include the current values of all packet and byte counters in the output.
   ^

Same thing as above, no unrelated changes in this patch.

> +.TP
> +\fB\-Z\fR, \fB\-\-zero\fR
> +Reset to zero counters of the chains.

This is not resetting anything, instead I'd propose:

Display zero packet and byte chain counters when saving the ruleset.

>  .TP
>  \fB\-t\fR, \fB\-\-table\fR \fItablename\fP
> -restrict output to only one table. If not specified, output includes all
> +Restrict output to only one table. If not specified, output includes all
>  available tables.
>  .SH BUGS
>  None known as of iptables-1.2.1 release
>  .SH AUTHORS
> -Harald Welte <lafo...@gnumonks.org>
> +Harald Welte <lafo...@gnumonks.org>,
> +.br
> +Rusty Russell <ru...@rustcorp.com.au>,
>  .br
> -Rusty Russell <ru...@rustcorp.com.au>
> +Andras Kis-Szabo <ki...@sch.bme.hu> contributed ip6tables-save,
>  .br
> -Andras Kis-Szabo <ki...@sch.bme.hu> contributed ip6tables-save.
> +Alban Vidal <alban.vi...@zordhak.fr> contributed ip[6]tables-save.

Again, this information is there for historical reasons: git is
already leaving a record on this. *A lot* of people have contributed
to iptables and they are not listed there :-).

Thanks.
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to