send.h (712cba5d87a6c0e980ee5fad45734e189c4d7151) | send.h (9b4aec647a92a2464337db10507348aecf0f0fd7) |
---|---|
1/* Copyright (C) 2007-2016 B.A.T.M.A.N. contributors: 2 * 3 * Marek Lindner, Simon Wunderlich 4 * 5 * This program is free software; you can redistribute it and/or 6 * modify it under the terms of version 2 of the GNU General Public 7 * License as published by the Free Software Foundation. 8 * --- 7 unchanged lines hidden (view full) --- 16 */ 17 18#ifndef _NET_BATMAN_ADV_SEND_H_ 19#define _NET_BATMAN_ADV_SEND_H_ 20 21#include "main.h" 22 23#include <linux/compiler.h> | 1/* Copyright (C) 2007-2016 B.A.T.M.A.N. contributors: 2 * 3 * Marek Lindner, Simon Wunderlich 4 * 5 * This program is free software; you can redistribute it and/or 6 * modify it under the terms of version 2 of the GNU General Public 7 * License as published by the Free Software Foundation. 8 * --- 7 unchanged lines hidden (view full) --- 16 */ 17 18#ifndef _NET_BATMAN_ADV_SEND_H_ 19#define _NET_BATMAN_ADV_SEND_H_ 20 21#include "main.h" 22 23#include <linux/compiler.h> |
24#include <linux/spinlock.h> |
|
24#include <linux/types.h> 25 26#include "packet.h" 27 28struct sk_buff; 29 | 25#include <linux/types.h> 26 27#include "packet.h" 28 29struct sk_buff; 30 |
30void batadv_forw_packet_free(struct batadv_forw_packet *forw_packet); | 31void batadv_forw_packet_free(struct batadv_forw_packet *forw_packet, 32 bool dropped); |
31struct batadv_forw_packet * 32batadv_forw_packet_alloc(struct batadv_hard_iface *if_incoming, 33 struct batadv_hard_iface *if_outgoing, 34 atomic_t *queue_left, 35 struct batadv_priv *bat_priv); | 33struct batadv_forw_packet * 34batadv_forw_packet_alloc(struct batadv_hard_iface *if_incoming, 35 struct batadv_hard_iface *if_outgoing, 36 atomic_t *queue_left, 37 struct batadv_priv *bat_priv); |
38bool batadv_forw_packet_steal(struct batadv_forw_packet *packet, spinlock_t *l); 39void batadv_forw_packet_ogmv1_queue(struct batadv_priv *bat_priv, 40 struct batadv_forw_packet *forw_packet, 41 unsigned long send_time); |
|
36 37int batadv_send_skb_to_orig(struct sk_buff *skb, 38 struct batadv_orig_node *orig_node, 39 struct batadv_hard_iface *recv_if); 40int batadv_send_skb_packet(struct sk_buff *skb, 41 struct batadv_hard_iface *hard_iface, 42 const u8 *dst_addr); 43int batadv_send_broadcast_skb(struct sk_buff *skb, 44 struct batadv_hard_iface *hard_iface); 45int batadv_send_unicast_skb(struct sk_buff *skb, 46 struct batadv_neigh_node *neigh_node); 47int batadv_add_bcast_packet_to_list(struct batadv_priv *bat_priv, 48 const struct sk_buff *skb, | 42 43int batadv_send_skb_to_orig(struct sk_buff *skb, 44 struct batadv_orig_node *orig_node, 45 struct batadv_hard_iface *recv_if); 46int batadv_send_skb_packet(struct sk_buff *skb, 47 struct batadv_hard_iface *hard_iface, 48 const u8 *dst_addr); 49int batadv_send_broadcast_skb(struct sk_buff *skb, 50 struct batadv_hard_iface *hard_iface); 51int batadv_send_unicast_skb(struct sk_buff *skb, 52 struct batadv_neigh_node *neigh_node); 53int batadv_add_bcast_packet_to_list(struct batadv_priv *bat_priv, 54 const struct sk_buff *skb, |
49 unsigned long delay); | 55 unsigned long delay, 56 bool own_packet); |
50void 51batadv_purge_outstanding_packets(struct batadv_priv *bat_priv, 52 const struct batadv_hard_iface *hard_iface); 53bool batadv_send_skb_prepare_unicast_4addr(struct batadv_priv *bat_priv, 54 struct sk_buff *skb, 55 struct batadv_orig_node *orig_node, 56 int packet_subtype); 57int batadv_send_skb_unicast(struct batadv_priv *bat_priv, --- 59 unchanged lines hidden --- | 57void 58batadv_purge_outstanding_packets(struct batadv_priv *bat_priv, 59 const struct batadv_hard_iface *hard_iface); 60bool batadv_send_skb_prepare_unicast_4addr(struct batadv_priv *bat_priv, 61 struct sk_buff *skb, 62 struct batadv_orig_node *orig_node, 63 int packet_subtype); 64int batadv_send_skb_unicast(struct batadv_priv *bat_priv, --- 59 unchanged lines hidden --- |