Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 88ffc7d0 authored by Sven Eckelmann's avatar Sven Eckelmann Committed by Simon Wunderlich
Browse files

batman-adv: Return non-const ptr in batadv_getlink_net



The returned net_namespace of batadv_getlink_net may be used with functions
that potentially modify the struct. Thus it must return the pointer as
non-const like rtnl_link_ops::get_link_net does.

Signed-off-by: default avatarSven Eckelmann <sven.eckelmann@open-mesh.com>
Signed-off-by: default avatarSimon Wunderlich <sw@simonwunderlich.de>
parent 93bbaab4
Loading
Loading
Loading
Loading
+5 −5
Original line number Original line Diff line number Diff line
@@ -92,8 +92,8 @@ batadv_hardif_get_by_netdev(const struct net_device *net_dev)
 *
 *
 * Return: result of rtnl_link_ops->get_link_net or @fallback_net
 * Return: result of rtnl_link_ops->get_link_net or @fallback_net
 */
 */
static const struct net *batadv_getlink_net(const struct net_device *netdev,
static struct net *batadv_getlink_net(const struct net_device *netdev,
					    const struct net *fallback_net)
				      struct net *fallback_net)
{
{
	if (!netdev->rtnl_link_ops)
	if (!netdev->rtnl_link_ops)
		return fallback_net;
		return fallback_net;
@@ -116,9 +116,9 @@ static const struct net *batadv_getlink_net(const struct net_device *netdev,
 * Return: true if the devices are each others parent, otherwise false
 * Return: true if the devices are each others parent, otherwise false
 */
 */
static bool batadv_mutual_parents(const struct net_device *dev1,
static bool batadv_mutual_parents(const struct net_device *dev1,
				  const struct net *net1,
				  struct net *net1,
				  const struct net_device *dev2,
				  const struct net_device *dev2,
				  const struct net *net2)
				  struct net *net2)
{
{
	int dev1_parent_iflink = dev_get_iflink(dev1);
	int dev1_parent_iflink = dev_get_iflink(dev1);
	int dev2_parent_iflink = dev_get_iflink(dev2);
	int dev2_parent_iflink = dev_get_iflink(dev2);
@@ -154,7 +154,7 @@ static bool batadv_is_on_batman_iface(const struct net_device *net_dev)
{
{
	struct net *net = dev_net(net_dev);
	struct net *net = dev_net(net_dev);
	struct net_device *parent_dev;
	struct net_device *parent_dev;
	const struct net *parent_net;
	struct net *parent_net;
	bool ret;
	bool ret;


	/* check if this is a batman-adv mesh interface */
	/* check if this is a batman-adv mesh interface */