diff options
Diffstat (limited to 'net/ipv4/protocol.c')
| -rw-r--r-- | net/ipv4/protocol.c | 6 | 
1 files changed, 6 insertions, 0 deletions
diff --git a/net/ipv4/protocol.c b/net/ipv4/protocol.c index 0f9d09f54bd9..ce848461acbb 100644 --- a/net/ipv4/protocol.c +++ b/net/ipv4/protocol.c @@ -37,6 +37,12 @@ const struct net_offload __rcu *inet_offloads[MAX_INET_PROTOS] __read_mostly;  int inet_add_protocol(const struct net_protocol *prot, unsigned char protocol)  { +	if (!prot->netns_ok) { +		pr_err("Protocol %u is not namespace aware, cannot register.\n", +			protocol); +		return -EINVAL; +	} +  	return !cmpxchg((const struct net_protocol **)&inet_protos[protocol],  			NULL, prot) ? 0 : -1;  }  |