Thread (4 messages) flat view 4 messages, 2 authors, 2016-10-15

Re: [PATCH v3] net: Require exact match for TCP socket lookups if dif is l3mdev

From: David Miller <davem@davemloft.net>
Date: 2016-10-15 21:46:57

From: David Ahern <redacted>
Date: Fri, 14 Oct 2016 12:29:19 -0700
+/* can not be used in TCP layer after tcp_v6_fill_cb */
+static inline bool inet6_exact_dif_match(struct net *net, struct sk_buff *skb)
+{
+#if defined(CONFIG_NET_L3_MASTER_DEV)
+	if (!net->ipv4.sysctl_tcp_l3mdev_accept &&
+	    skb_l3mdev_slave(IP6CB(skb)->flags))
+		return true;
+#endif
+	return false;
+}
 ...
+static inline bool skb_l3mdev_slave4(u16 flags)
+{
+	return !!(flags & IPSKB_L3SLAVE);
+}
I think this makes the code confusing.

Actually it has been from the beginning, because we have a generically
named "skb_l3mdev_slave()" helper which strictly operates on ipv6
state.

Please do something with the naming of these two helpers,
skb_l3mdev_slave() and skb_l3mdev_slave4(), so that it is clear that
they are ipv6 and ipv4 specific helpers, respectively.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help