batman-adv: Less checks in batadv_tvlv_unicast_send()
authorMarkus Elfring <elfring@users.sourceforge.net>
Sun, 15 Nov 2015 08:00:42 +0000 (09:00 +0100)
committerAntonio Quartulli <a@unstable.cc>
Sat, 9 Jan 2016 12:56:00 +0000 (20:56 +0800)
* Let us return directly if a call of the batadv_orig_hash_find() function
  returned a null pointer.

* Omit the initialisation for the variable "skb" at the beginning.

* Replace an assignment by a call of the kfree_skb() function
  and delete the affected variable "ret" then.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: Marek Lindner <mareklindner@neomailbox.ch>
Signed-off-by: Antonio Quartulli <a@unstable.cc>
net/batman-adv/main.c

index 5b678f3..4b5d61f 100644 (file)
@@ -1143,15 +1143,14 @@ void batadv_tvlv_unicast_send(struct batadv_priv *bat_priv, u8 *src,
        struct batadv_unicast_tvlv_packet *unicast_tvlv_packet;
        struct batadv_tvlv_hdr *tvlv_hdr;
        struct batadv_orig_node *orig_node;
-       struct sk_buff *skb = NULL;
+       struct sk_buff *skb;
        unsigned char *tvlv_buff;
        unsigned int tvlv_len;
        ssize_t hdr_len = sizeof(*unicast_tvlv_packet);
-       bool ret = false;
 
        orig_node = batadv_orig_hash_find(bat_priv, dst);
        if (!orig_node)
-               goto out;
+               return;
 
        tvlv_len = sizeof(*tvlv_hdr) + tvlv_value_len;
 
@@ -1180,14 +1179,10 @@ void batadv_tvlv_unicast_send(struct batadv_priv *bat_priv, u8 *src,
        tvlv_buff += sizeof(*tvlv_hdr);
        memcpy(tvlv_buff, tvlv_value, tvlv_value_len);
 
-       if (batadv_send_skb_to_orig(skb, orig_node, NULL) != NET_XMIT_DROP)
-               ret = true;
-
-out:
-       if (!ret)
+       if (batadv_send_skb_to_orig(skb, orig_node, NULL) == NET_XMIT_DROP)
                kfree_skb(skb);
-       if (orig_node)
-               batadv_orig_node_free_ref(orig_node);
+out:
+       batadv_orig_node_free_ref(orig_node);
 }
 
 /**