提交 5e3c8854 编写于 作者: J Jon Maloy 提交者: David S. Miller

[TIPC] Improved tolerance to promiscuous mode interface

Signed-off-by: NJon Maloy <jon.maloy@ericsson.com>
Signed-off-by: NPer Liden <per.liden@ericsson.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 fcc18e83
...@@ -98,17 +98,19 @@ static int recv_msg(struct sk_buff *buf, struct net_device *dev, ...@@ -98,17 +98,19 @@ static int recv_msg(struct sk_buff *buf, struct net_device *dev,
u32 size; u32 size;
if (likely(eb_ptr->bearer)) { if (likely(eb_ptr->bearer)) {
size = msg_size((struct tipc_msg *)buf->data); if (likely(!dev->promiscuity) ||
skb_trim(buf, size); !memcmp(buf->mac.raw,dev->dev_addr,ETH_ALEN) ||
if (likely(buf->len == size)) { !memcmp(buf->mac.raw,dev->broadcast,ETH_ALEN)) {
buf->next = NULL; size = msg_size((struct tipc_msg *)buf->data);
tipc_recv_msg(buf, eb_ptr->bearer); skb_trim(buf, size);
} else { if (likely(buf->len == size)) {
kfree_skb(buf); buf->next = NULL;
tipc_recv_msg(buf, eb_ptr->bearer);
return TIPC_OK;
}
} }
} else {
kfree_skb(buf);
} }
kfree_skb(buf);
return TIPC_OK; return TIPC_OK;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册