#include <linux/kernel.h>
#include <linux/slab.h>
#include <linux/skbuff.h>
#include <linux/etherdevice.h>
#include <linux/bitmap.h>
#include <linux/rcupdate.h>
#include <linux/export.h>
#include <net/net_namespace.h>
#include <net/ieee80211_radiotap.h>
#include <net/cfg80211.h>
#include <net/mac80211.h>
#include <asm/unaligned.h>
#include "ieee80211_i.h"
#include "driver-ops.h"
#include "led.h"
#include "mesh.h"
#include "wep.h"
#include "wpa.h"
#include "wme.h"
#include "rate.h"
Go to the source code of this file.
#define CALL_TXH | ( | txh | ) |
do { \ res = txh(tx); \ if (res != TX_CONTINUE) \ goto txh_done; \ } while (0)
static bool __ieee80211_tx | ( | struct ieee80211_local * | local, |
struct sk_buff ** | skbp, | ||
struct sta_info * | sta, | ||
bool | txpending | ||
) | [static] |
Definition at line 1186 of file kernel-3.2/tx.c.
static void ieee80211_beacon_add_tim | ( | struct ieee80211_if_ap * | bss, |
struct sk_buff * | skb, | ||
struct beacon_data * | beacon | ||
) | [static] |
Definition at line 2127 of file kernel-3.2/tx.c.
struct sk_buff* ieee80211_beacon_get_tim | ( | struct ieee80211_hw * | hw, |
struct ieee80211_vif * | vif, | ||
u16 * | tim_offset, | ||
u16 * | tim_length | ||
) | [read] |
Definition at line 2191 of file kernel-3.2/tx.c.
void ieee80211_clear_tx_pending | ( | struct ieee80211_local * | local | ) |
Definition at line 2038 of file kernel-3.2/tx.c.
void ieee80211_ctstoself_get | ( | struct ieee80211_hw * | hw, |
struct ieee80211_vif * | vif, | ||
const void * | frame, | ||
size_t | frame_len, | ||
const struct ieee80211_tx_info * | frame_txctl, | ||
struct ieee80211_cts * | cts | ||
) |
Definition at line 2495 of file kernel-3.2/tx.c.
static __le16 ieee80211_duration | ( | struct ieee80211_tx_data * | tx, |
int | group_addr, | ||
int | next_frag_len | ||
) | [static] |
Definition at line 39 of file kernel-3.2/tx.c.
static int ieee80211_fragment | ( | struct ieee80211_local * | local, |
struct sk_buff * | skb, | ||
int | hdrlen, | ||
int | frag_threshold | ||
) | [static] |
Definition at line 846 of file kernel-3.2/tx.c.
struct sk_buff* ieee80211_get_buffered_bc | ( | struct ieee80211_hw * | hw, |
struct ieee80211_vif * | vif | ||
) | [read] |
Definition at line 2511 of file kernel-3.2/tx.c.
netdev_tx_t ieee80211_monitor_start_xmit | ( | struct sk_buff * | skb, |
struct net_device * | dev | ||
) |
Definition at line 1528 of file kernel-3.2/tx.c.
struct sk_buff* ieee80211_nullfunc_get | ( | struct ieee80211_hw * | hw, |
struct ieee80211_vif * | vif | ||
) | [read] |
Definition at line 2396 of file kernel-3.2/tx.c.
static bool ieee80211_parse_tx_radiotap | ( | struct sk_buff * | skb | ) | [static] |
Definition at line 1445 of file kernel-3.2/tx.c.
struct sk_buff* ieee80211_probereq_get | ( | struct ieee80211_hw * | hw, |
struct ieee80211_vif * | vif, | ||
const u8 * | ssid, | ||
size_t | ssid_len, | ||
const u8 * | ie, | ||
size_t | ie_len | ||
) | [read] |
Definition at line 2432 of file kernel-3.2/tx.c.
struct sk_buff* ieee80211_pspoll_get | ( | struct ieee80211_hw * | hw, |
struct ieee80211_vif * | vif | ||
) | [read] |
Definition at line 2358 of file kernel-3.2/tx.c.
void ieee80211_rts_get | ( | struct ieee80211_hw * | hw, |
struct ieee80211_vif * | vif, | ||
const void * | frame, | ||
size_t | frame_len, | ||
const struct ieee80211_tx_info * | frame_txctl, | ||
struct ieee80211_rts * | rts | ||
) |
Definition at line 2479 of file kernel-3.2/tx.c.
static int ieee80211_skb_resize | ( | struct ieee80211_sub_if_data * | sdata, |
struct sk_buff * | skb, | ||
int | head_need, | ||
bool | may_encrypt | ||
) | [static] |
Definition at line 1375 of file kernel-3.2/tx.c.
netdev_tx_t ieee80211_subif_start_xmit | ( | struct sk_buff * | skb, |
struct net_device * | dev | ||
) |
ieee80211_subif_start_xmit - netif start_xmit function for Ethernet-type subinterfaces (wlan#, WDS, and VLAN interfaces) : packet to be sent : incoming interface
Returns: 0 on success (and frees skb in this case) or 1 on failure (skb will not be freed, and caller is responsible for either retrying later or freeing skb).
This function takes in an Ethernet header and encapsulates it with suitable IEEE 802.11 header based on which interface the packet is coming in. The encapsulated packet will then be passed to master interface, wlan#.11, for transmission (through low-level driver).
Definition at line 1671 of file kernel-3.2/tx.c.
static bool ieee80211_tx | ( | struct ieee80211_sub_if_data * | sdata, |
struct sk_buff * | skb, | ||
bool | txpending | ||
) | [static] |
Definition at line 1337 of file kernel-3.2/tx.c.
static ieee80211_tx_result debug_noinline ieee80211_tx_h_calculate_duration | ( | struct ieee80211_tx_data * | tx | ) | [static] |
Definition at line 1015 of file kernel-3.2/tx.c.
static ieee80211_tx_result debug_noinline ieee80211_tx_h_check_assoc | ( | struct ieee80211_tx_data * | tx | ) | [static] |
Definition at line 252 of file kernel-3.2/tx.c.
static ieee80211_tx_result debug_noinline ieee80211_tx_h_check_control_port_protocol | ( | struct ieee80211_tx_data * | tx | ) | [static] |
Definition at line 521 of file kernel-3.2/tx.c.
static ieee80211_tx_result debug_noinline ieee80211_tx_h_dynamic_ps | ( | struct ieee80211_tx_data * | tx | ) | [static] |
Definition at line 181 of file kernel-3.2/tx.c.
static ieee80211_tx_result debug_noinline ieee80211_tx_h_encrypt | ( | struct ieee80211_tx_data * | tx | ) | [static] |
Definition at line 984 of file kernel-3.2/tx.c.
static ieee80211_tx_result debug_noinline ieee80211_tx_h_fragment | ( | struct ieee80211_tx_data * | tx | ) | [static] |
Definition at line 892 of file kernel-3.2/tx.c.
static ieee80211_tx_result ieee80211_tx_h_multicast_ps_buf | ( | struct ieee80211_tx_data * | tx | ) | [static] |
Definition at line 375 of file kernel-3.2/tx.c.
static ieee80211_tx_result debug_noinline ieee80211_tx_h_ps_buf | ( | struct ieee80211_tx_data * | tx | ) | [static] |
Definition at line 509 of file kernel-3.2/tx.c.
static ieee80211_tx_result debug_noinline ieee80211_tx_h_rate_ctrl | ( | struct ieee80211_tx_data * | tx | ) | [static] |
Definition at line 608 of file kernel-3.2/tx.c.
static ieee80211_tx_result debug_noinline ieee80211_tx_h_select_key | ( | struct ieee80211_tx_data * | tx | ) | [static] |
Definition at line 533 of file kernel-3.2/tx.c.
static ieee80211_tx_result debug_noinline ieee80211_tx_h_sequence | ( | struct ieee80211_tx_data * | tx | ) | [static] |
Definition at line 785 of file kernel-3.2/tx.c.
static ieee80211_tx_result debug_noinline ieee80211_tx_h_stats | ( | struct ieee80211_tx_data * | tx | ) | [static] |
Definition at line 967 of file kernel-3.2/tx.c.
static ieee80211_tx_result ieee80211_tx_h_unicast_ps_buf | ( | struct ieee80211_tx_data * | tx | ) | [static] |
Definition at line 442 of file kernel-3.2/tx.c.
void ieee80211_tx_pending | ( | unsigned long | data | ) |
Definition at line 2077 of file kernel-3.2/tx.c.
static bool ieee80211_tx_pending_skb | ( | struct ieee80211_local * | local, |
struct sk_buff * | skb | ||
) | [static] |
Definition at line 2051 of file kernel-3.2/tx.c.
static bool ieee80211_tx_prep_agg | ( | struct ieee80211_tx_data * | tx, |
struct sk_buff * | skb, | ||
struct ieee80211_tx_info * | info, | ||
struct tid_ampdu_tx * | tid_tx, | ||
int | tid | ||
) | [static] |
Definition at line 1038 of file kernel-3.2/tx.c.
static ieee80211_tx_result ieee80211_tx_prepare | ( | struct ieee80211_sub_if_data * | sdata, |
struct ieee80211_tx_data * | tx, | ||
struct sk_buff * | skb | ||
) | [static] |
Definition at line 1095 of file kernel-3.2/tx.c.
void ieee80211_tx_skb | ( | struct ieee80211_sub_if_data * | sdata, |
struct sk_buff * | skb | ||
) |
Definition at line 2570 of file kernel-3.2/tx.c.
static int ieee80211_use_mfp | ( | __le16 | fc, |
struct sta_info * | sta, | ||
struct sk_buff * | skb | ||
) | [static] |
Definition at line 425 of file kernel-3.2/tx.c.
void ieee80211_xmit | ( | struct ieee80211_sub_if_data * | sdata, |
struct sk_buff * | skb | ||
) |
Definition at line 1404 of file kernel-3.2/tx.c.
static int invoke_tx_handlers | ( | struct ieee80211_tx_data * | tx | ) | [static] |
Definition at line 1281 of file kernel-3.2/tx.c.
static int is_ieee80211_device | ( | struct ieee80211_local * | local, |
struct net_device * | dev | ||
) | [inline, static] |
Definition at line 173 of file kernel-3.2/tx.c.
static void purge_old_ps_buffers | ( | struct ieee80211_local * | local | ) | [static] |
Definition at line 322 of file kernel-3.2/tx.c.