[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1465322550.25087.40.camel@perches.com>
Date: Tue, 07 Jun 2016 11:02:30 -0700
From: Joe Perches <joe@...ches.com>
To: Pablo Neira Ayuso <pablo@...filter.org>
Cc: tcharding <me@...in.cc>,
Stephen Hemminger <stephen@...workplumber.org>,
"David S. Miller" <davem@...emloft.net>,
netfilter-devel@...r.kernel.org, coreteam@...filter.org,
netdev@...r.kernel.org
Subject: Re: [PATCH 1/3] bridge: netfilter: checkpatch whitespace fixes
On Tue, 2016-06-07 at 19:34 +0200, Pablo Neira Ayuso wrote:
> On Tue, Jun 07, 2016 at 10:04:40AM -0700, Joe Perches wrote:
> > One more question, is this chunk below correct from
> > coding style point of view?
>
> if (info->bitmask & EBT_STP_ROOTADDR) {
> verdict = 0;
> for (i = 0; i < 6; i++)
> - verdict |= (stpc->root[2+i] ^ c->root_addr[i]) &
> - c->root_addrmsk[i];
> + verdict |= (stpc->root[2 + i] ^ c->root_addr[i]) &
> + c->root_addrmsk[i];
>
> I think the previous line is fine.
"2+i" or "2 + i", either is OK.
Multiple line statement alignment doesn't
matter much.
I think either is fine and both are "don't care, don't need"
to change from one to another to satisfy some silly whitespace
overlord brainless script.
Perhaps it's better to add a function for this though.
Something like:
---
net/bridge/netfilter/ebt_stp.c | 60 +++++++++++++++++++++++-------------------
1 file changed, 33 insertions(+), 27 deletions(-)
diff --git a/net/bridge/netfilter/ebt_stp.c b/net/bridge/netfilter/ebt_stp.c
index 6b731e1..4096fac 100644
--- a/net/bridge/netfilter/ebt_stp.c
+++ b/net/bridge/netfilter/ebt_stp.c
@@ -40,13 +40,24 @@ struct stp_config_pdu {
#define NR16(p) (p[0] << 8 | p[1])
#define NR32(p) ((p[0] << 24) | (p[1] << 16) | (p[2] << 8) | p[3])
+static bool ebt_test_addr(const uint8_t *root, const char *addr,
+ const char *mask)
+{
+ bool rtn = false;
+ int i;
+
+ for (i = 0; i < ETH_ALEN; i++)
+ rtn |= (root[2 + i] ^ addr[i]) & mask[i];
+
+ return rtn;
+}
+
static bool ebt_filter_config(const struct ebt_stp_info *info,
const struct stp_config_pdu *stpc)
{
const struct ebt_stp_config_info *c;
uint16_t v16;
uint32_t v32;
- int verdict, i;
c = &info->config;
if ((info->bitmask & EBT_STP_FLAGS) &&
@@ -54,66 +65,61 @@ static bool ebt_filter_config(const struct ebt_stp_info *info,
return false;
if (info->bitmask & EBT_STP_ROOTPRIO) {
v16 = NR16(stpc->root);
- if (FWINV(v16 < c->root_priol ||
- v16 > c->root_priou, EBT_STP_ROOTPRIO))
+ if (FWINV(v16 < c->root_priol || v16 > c->root_priou,
+ EBT_STP_ROOTPRIO))
return false;
}
if (info->bitmask & EBT_STP_ROOTADDR) {
- verdict = 0;
- for (i = 0; i < 6; i++)
- verdict |= (stpc->root[2+i] ^ c->root_addr[i]) &
- c->root_addrmsk[i];
- if (FWINV(verdict != 0, EBT_STP_ROOTADDR))
+ if (FWINV(ebt_test_addr(stpc->root, c->root_addr,
+ c->root_addrmsk),
+ EBT_STP_ROOTADDR))
return false;
}
if (info->bitmask & EBT_STP_ROOTCOST) {
v32 = NR32(stpc->root_cost);
- if (FWINV(v32 < c->root_costl ||
- v32 > c->root_costu, EBT_STP_ROOTCOST))
+ if (FWINV(v32 < c->root_costl || v32 > c->root_costu,
+ EBT_STP_ROOTCOST))
return false;
}
if (info->bitmask & EBT_STP_SENDERPRIO) {
v16 = NR16(stpc->sender);
- if (FWINV(v16 < c->sender_priol ||
- v16 > c->sender_priou, EBT_STP_SENDERPRIO))
+ if (FWINV(v16 < c->sender_priol || v16 > c->sender_priou,
+ EBT_STP_SENDERPRIO))
return false;
}
if (info->bitmask & EBT_STP_SENDERADDR) {
- verdict = 0;
- for (i = 0; i < 6; i++)
- verdict |= (stpc->sender[2+i] ^ c->sender_addr[i]) &
- c->sender_addrmsk[i];
- if (FWINV(verdict != 0, EBT_STP_SENDERADDR))
+ if (FWINV(ebt_test_addr(stpc->sender, c->sender_addr,
+ c->sender_addrmsk),
+ EBT_STP_SENDERADDR))
return false;
}
if (info->bitmask & EBT_STP_PORT) {
v16 = NR16(stpc->port);
- if (FWINV(v16 < c->portl ||
- v16 > c->portu, EBT_STP_PORT))
+ if (FWINV(v16 < c->portl || v16 > c->portu, EBT_STP_PORT))
return false;
}
if (info->bitmask & EBT_STP_MSGAGE) {
v16 = NR16(stpc->msg_age);
- if (FWINV(v16 < c->msg_agel ||
- v16 > c->msg_ageu, EBT_STP_MSGAGE))
+ if (FWINV(v16 < c->msg_agel || v16 > c->msg_ageu,
+ EBT_STP_MSGAGE))
return false;
}
if (info->bitmask & EBT_STP_MAXAGE) {
v16 = NR16(stpc->max_age);
- if (FWINV(v16 < c->max_agel ||
- v16 > c->max_ageu, EBT_STP_MAXAGE))
+ if (FWINV(v16 < c->max_agel || v16 > c->max_ageu,
+ EBT_STP_MAXAGE))
return false;
}
if (info->bitmask & EBT_STP_HELLOTIME) {
v16 = NR16(stpc->hello_time);
- if (FWINV(v16 < c->hello_timel ||
- v16 > c->hello_timeu, EBT_STP_HELLOTIME))
+ if (FWINV(v16 < c->hello_timel || v16 > c->hello_timeu,
+ EBT_STP_HELLOTIME))
return false;
}
if (info->bitmask & EBT_STP_FWDD) {
v16 = NR16(stpc->forward_delay);
- if (FWINV(v16 < c->forward_delayl ||
- v16 > c->forward_delayu, EBT_STP_FWDD))
+ if (FWINV(v16 < c->forward_delayl || v16 > c->forward_delayu,
+ EBT_STP_FWDD))
return false;
}
return true;
Powered by blists - more mailing lists