mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 10:41:38 -04:00
net: shy netns_ok check
Failure to pass netns_ok check is SILENT, except some MIB counter is incremented somewhere. And adding "netns_ok = 1" (after long head-scratching session) is usually the last step in making some protocol netns-ready... Signed-off-by: Alexey Dobriyan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
This commit is contained in:
parent
6e093d9dff
commit
9c0188acf6
1 changed files with 9 additions and 1 deletions
|
|
@ -209,9 +209,17 @@ static int ip_local_deliver_finish(struct sk_buff *skb)
|
|||
|
||||
hash = protocol & (MAX_INET_PROTOS - 1);
|
||||
ipprot = rcu_dereference(inet_protos[hash]);
|
||||
if (ipprot != NULL && (net == &init_net || ipprot->netns_ok)) {
|
||||
if (ipprot != NULL) {
|
||||
int ret;
|
||||
|
||||
if (!net_eq(net, &init_net) && !ipprot->netns_ok) {
|
||||
if (net_ratelimit())
|
||||
printk("%s: proto %d isn't netns-ready\n",
|
||||
__func__, protocol);
|
||||
kfree_skb(skb);
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (!ipprot->no_policy) {
|
||||
if (!xfrm4_policy_check(NULL, XFRM_POLICY_IN, skb)) {
|
||||
kfree_skb(skb);
|
||||
|
|
|
|||
Loading…
Reference in a new issue