Subject: Re: [PATCH iproute2 1/1] tc: print index, refcnt & bindcnt for nat action

From: Stephen Hemminger <[email-masked]>
Date: Tue, 27 Mar 2018 09:05:54 -0700

On Tue, 20 Mar 2018 14:21:47 -0400
Roman Mashak <[email-masked]> wrote:

> Signed-off-by: Roman Mashak <[email-masked]>
> ---
>  tc/m_nat.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/tc/m_nat.c b/tc/m_nat.c
> index 1e4ff51fe75a..f6e373957c1b 100644
> --- a/tc/m_nat.c
> +++ b/tc/m_nat.c
> @@ -169,6 +169,9 @@ print_nat(struct action_util *au, FILE * f, struct rtattr *arg)
>  		format_host_r(AF_INET, 4, &sel->new_addr, buf2, sizeof(buf2)));
>  	print_action_control(f, " ", sel->action, "");
>  
> +	fprintf(f, "\n\t index %u ref %d bind %d",
> +		sel->index, sel->refcnt, sel->bindcnt);
> +
>  	if (show_stats) {
>  		if (tb[TCA_NAT_TM]) {
>  			struct tcf_t *tm = RTA_DATA(tb[TCA_NAT_TM]);
> @@ -177,6 +180,8 @@ print_nat(struct action_util *au, FILE * f, struct rtattr *arg)
>  		}
>  	}
>  
> +	fprintf(f, "\n");
> +
>  	return 0;
>  }

Rather than printing newline all the time, you need to use _SL_ to keep the optional
oneline output format.

I.e
	fprintf(f, "%s\t index %u ref %d bind %d",
		_SL_, sel->index, sel->refcnt, sel->bindcnt);