[PATCH 1/1] vxlan: make the struct nlattr variable const

Subsystems: networking drivers, the rest

STALE3696d

2 messages, 2 authors, 2016-09-04 · open the first message on its own page

[PATCH 1/1] vxlan: make the struct nlattr variable const

From: zyjzyj2000@gmail.com
Date: 2016-09-03 14:18:16

From: Zhu Yanjun <zyjzyj2000@gmail.com>

The struct nlattr variable should not be changed.

Signed-off-by: Zhu Yanjun <zyjzyj2000@gmail.com>
---
 drivers/net/vxlan.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
index f605a36..ce65897 100644
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
@@ -115,7 +115,7 @@ static inline bool vxlan_addr_multicast(const union vxlan_addr *ipa)
 		return IN_MULTICAST(ntohl(ipa->sin.sin_addr.s_addr));
 }
 
-static int vxlan_nla_get_addr(union vxlan_addr *ip, struct nlattr *nla)
+static int vxlan_nla_get_addr(union vxlan_addr *ip, const struct nlattr *nla)
 {
 	if (nla_len(nla) >= sizeof(struct in6_addr)) {
 		ip->sin6.sin6_addr = nla_get_in6_addr(nla);
@@ -157,7 +157,7 @@ static inline bool vxlan_addr_multicast(const union vxlan_addr *ipa)
 	return IN_MULTICAST(ntohl(ipa->sin.sin_addr.s_addr));
 }
 
-static int vxlan_nla_get_addr(union vxlan_addr *ip, struct nlattr *nla)
+static int vxlan_nla_get_addr(union vxlan_addr *ip, const struct nlattr *nla)
 {
 	if (nla_len(nla) >= sizeof(struct in6_addr)) {
 		return -EAFNOSUPPORT;
-- 
2.7.4

Re: [PATCH 1/1] vxlan: make the struct nlattr variable const

From: Jiri Benc <hidden>
Date: 2016-09-04 12:27:59

On Sat,  3 Sep 2016 22:07:10 +0800, zyjzyj2000@gmail.com wrote:
From: Zhu Yanjun <zyjzyj2000@gmail.com>

The struct nlattr variable should not be changed.
True. But the only caller is vxlan_fdb_parse which doesn't have its tb
parameter const, so what's the point?

Now, the tb parameter of vxlan_fdb_parse could be changed to const.
This again doesn't make much sense without modifying its callers, which
are vxlan_fdb_add and vxlan_fdb_delete. And those are net_device_ops
hooks. Have you considered looking into those (ndo_fdb_*) and turning
the struct nlattr ** to const (that is, if it's possible)?

 Jiri
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help