All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Álvaro Neira Ayuso" <alvaroneay@gmail.com>
To: Arturo Borrero Gonzalez <arturo.borrero.glez@gmail.com>
Cc: Netfilter Development Mailing list <netfilter-devel@vger.kernel.org>
Subject: Re: [libnftnl PATCH 2/2] src/rule: Changed parser support for having consistent with the new print support
Date: Wed, 12 Mar 2014 12:37:16 +0100	[thread overview]
Message-ID: <532046EC.1030904@gmail.com> (raw)
In-Reply-To: <CAOkSjBgLvyAxsnqx4CAuZziQaOj4ximZ2YAqd542HuEi-J9BCQ@mail.gmail.com>

El 11/03/14 21:16, Arturo Borrero Gonzalez escribió:
> Hi Alvaro,
>
> a few coments below about this patch.
>
> On 9 March 2014 14:00, Alvaro Neira Ayuso <alvaroneay@gmail.com> wrote:
>> From: Álvaro Neira Ayuso <alvaroneay@gmail.com>
>>
>> Signed-off-by: Alvaro Neira Ayuso <alvaroneay@gmail.com>
>> ---
>>   src/rule.c |   77 +++++++++++++++++++++++++++++++-----------------------------
>>   1 file changed, 40 insertions(+), 37 deletions(-)
>>
>
> I would suggest to describe this parser change.
>
>> diff --git a/src/rule.c b/src/rule.c
>> index f0cafd3..e7335f8 100644
>> --- a/src/rule.c
>> +++ b/src/rule.c
>> @@ -540,28 +540,36 @@ int nft_jansson_parse_rule(struct nft_rule *r, json_t *tree,
>>          if (root == NULL)
>>                  return -1;
>>
>> -       if (nft_jansson_parse_family(root, &family, err) != 0)
>> -               goto err;
>> +       if (nft_jansson_node_exist(root, "family")) {
>> +               if (nft_jansson_parse_family(root, &family, err) != 0)
>> +                       goto err;
>>
>>          nft_rule_attr_set_u32(r, NFT_RULE_ATTR_FAMILY, family);
>> +       }
>>
>
> Fix indentation. The nft_rule_attr_set_u32() is now inside the if statement.
>
>
>> -       if (nft_jansson_parse_val(root, "handle", NFT_TYPE_U64, &uval64,
>> -                                 err) < 0)
>> -               goto err;
>> +       if (nft_jansson_node_exist(root, "handle")) {
>> +               if (nft_jansson_parse_val(root, "handle", NFT_TYPE_U64, &uval64,
>> +                                         err) < 0)
>
> Mixed tab/spaces indentation before 'err) < 0)'
>
>
>> @@ -640,39 +648,34 @@ int nft_mxml_rule_parse(mxml_node_t *tree, struct nft_rule *r,
>>
>>          family = nft_mxml_family_parse(tree, "family", MXML_DESCEND_FIRST,
>>                                         NFT_XML_MAND, err);
>> -       if (family < 0)
>> -               return -1;
>> -
>> -       r->family = family;
>> -       r->flags |= (1 << NFT_RULE_ATTR_FAMILY);
>> +       if (family >= 0) {
>> +               r->family = family;
>> +               r->flags |= (1 << NFT_RULE_ATTR_FAMILY);
>> +       }
>>
>
> I would suggest to, while at it, switch to nft_rule_attr_set_xx() functions.
> IMHO, we will save some LOCs, among other benefits.

Yes, i have put this like that for following the same format that you 
have had. The next time, i'm going to ask before :D. I'm going to change 
that.

>
>> -       r->table = strdup(table);
>> -       r->flags |= (1 << NFT_RULE_ATTR_TABLE);
>> +               r->table = strdup(table);
>> +               r->flags |= (1 << NFT_RULE_ATTR_TABLE);
>> +       }
>
> Just for completeness:
> remember that for string attributes, the strdup() is done internally,
> inside nft_rule_attr_set_str().

I know that ^^.

>
>>          if (nft_mxml_num_parse(tree, "handle", MXML_DESCEND_FIRST, BASE_DEC,
>> -                              &r->handle, NFT_TYPE_U64, NFT_XML_MAND, err) != 0)
>> -               return -1;
>> -
>> -       r->flags |= (1 << NFT_RULE_ATTR_HANDLE);
>> +                              &r->handle, NFT_TYPE_U64, NFT_XML_MAND, err) >= 0)
>
> The line above is 82 characters long.

Thanks Arturo for helping me. I'm going to fix all the stuff.

Regards

Álvaro

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

  reply	other threads:[~2014-03-12 11:37 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-09 12:59 [libnftnl PATCH 1/2] src/rule: Removed mandatory attribute printing in rules Alvaro Neira Ayuso
2014-03-09 13:00 ` [libnftnl PATCH 2/2] src/rule: Changed parser support for having consistent with the new print support Alvaro Neira Ayuso
2014-03-11 20:16   ` Arturo Borrero Gonzalez
2014-03-12 11:37     ` Álvaro Neira Ayuso [this message]
2014-03-09 13:14 ` [libnftnl PATCH 1/2] src/rule: Removed mandatory attribute printing in rules Arturo Borrero Gonzalez
2014-03-12 12:50   ` Pablo Neira Ayuso
2014-03-11 19:59 ` Arturo Borrero Gonzalez

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=532046EC.1030904@gmail.com \
    --to=alvaroneay@gmail.com \
    --cc=arturo.borrero.glez@gmail.com \
    --cc=netfilter-devel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.