summaryrefslogtreecommitdiffstats
path: root/net/batman-adv/send.h
diff options
context:
space:
mode:
authorMartin Hundebøll <martin@hundeboll.net>2013-05-23 16:53:01 +0200
committerAntonio Quartulli <antonio@meshcoding.com>2013-10-12 11:58:33 +0200
commitf097e25dbe9144447f46b6b61ca3da1a2ba432d4 (patch)
tree72ead8362929e5f60de67f2a15b716fd73265d32 /net/batman-adv/send.h
parentbatman-adv: use VLAN_ETH_HLEN instead of sizeof(struct vlan_eth_hdr) (diff)
downloadlinux-f097e25dbe9144447f46b6b61ca3da1a2ba432d4.tar.xz
linux-f097e25dbe9144447f46b6b61ca3da1a2ba432d4.zip
batman-adv: Remove old fragmentation code
Remove the existing fragmentation code before adding the new version and delete unicast.{h,c}. batadv_unicast_send_skb() is moved to send.c and renamed to batadv_send_skb_unicast(). fragmentation entry in sysfs (bat_priv->fragmentation) is kept for use in the new fragmentation code. BATADV_UNICAST_FRAG packet type is renamed to BATADV_FRAG for use in the new fragmentation code. Signed-off-by: Martin Hundebøll <martin@hundeboll.net> Signed-off-by: Marek Lindner <lindner_marek@yahoo.de> Signed-off-by: Antonio Quartulli <antonio@meshcoding.com>
Diffstat (limited to 'net/batman-adv/send.h')
-rw-r--r--net/batman-adv/send.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/net/batman-adv/send.h b/net/batman-adv/send.h
index e7b17880fca4..ad63184a4dd9 100644
--- a/net/batman-adv/send.h
+++ b/net/batman-adv/send.h
@@ -34,5 +34,45 @@ void batadv_send_outstanding_bat_ogm_packet(struct work_struct *work);
void
batadv_purge_outstanding_packets(struct batadv_priv *bat_priv,
const struct batadv_hard_iface *hard_iface);
+bool batadv_send_skb_prepare_unicast_4addr(struct batadv_priv *bat_priv,
+ struct sk_buff *skb,
+ struct batadv_orig_node *orig_node,
+ int packet_subtype);
+int batadv_send_skb_generic_unicast(struct batadv_priv *bat_priv,
+ struct sk_buff *skb, int packet_type,
+ int packet_subtype);
+
+
+/**
+ * batadv_send_unicast_skb - send the skb encapsulated in a unicast packet
+ * @bat_priv: the bat priv with all the soft interface information
+ * @skb: the payload to send
+ *
+ * Returns 1 in case of error or 0 otherwise.
+ */
+static inline int batadv_send_skb_unicast(struct batadv_priv *bat_priv,
+ struct sk_buff *skb)
+{
+ return batadv_send_skb_generic_unicast(bat_priv, skb, BATADV_UNICAST,
+ 0);
+}
+
+/**
+ * batadv_send_4addr_unicast_skb - send the skb encapsulated in a unicast 4addr
+ * packet
+ * @bat_priv: the bat priv with all the soft interface information
+ * @skb: the payload to send
+ * @packet_subtype: the unicast 4addr packet subtype to use
+ *
+ * Returns 1 in case of error or 0 otherwise.
+ */
+static inline int batadv_send_skb_unicast_4addr(struct batadv_priv *bat_priv,
+ struct sk_buff *skb,
+ int packet_subtype)
+{
+ return batadv_send_skb_generic_unicast(bat_priv, skb,
+ BATADV_UNICAST_4ADDR,
+ packet_subtype);
+}
#endif /* _NET_BATMAN_ADV_SEND_H_ */