tmp_suning_uos_patched/net/mac80211
Alexis Green 5ec596c41b mac80211: Fix a case of incorrect metric used when forwarding a PREQ
This patch fixes a bug in hwmp_preq_frame_process where the wrong metric
can be used when forwarding a PREQ. This happens because the code uses
the same metric variable to record the value of the metric to the source
of the PREQ and the value of the metric to the target of the PREQ.

This comes into play when both reply and forward are set which happens
when IEEE80211_PREQ_PROACTIVE_PREP_FLAG is set and when MP_F_DO | MP_F_RF
is set. The original code had a special case to handle the first case
but not the second.

The patch uses distinct variables for the two metrics which makes the
code flow much clearer and removes the need to restore the original
value of metric when forwarding.

Signed-off-by: Alexis Green <agreen@cococorp.com>
CC: Jesse Jones <jjones@cococorp.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2015-06-10 11:52:59 +02:00
..
aes_ccm.c mac80111: aes_ccm: cleanup ieee80211_aes_key_setup_encrypt() 2015-03-30 10:40:03 +02:00
aes_ccm.h mac80111: Add CCMP-256 cipher 2015-01-27 11:07:35 +01:00
aes_cmac.c mac80111: Add BIP-CMAC-256 cipher 2015-01-27 11:09:13 +01:00
aes_cmac.h mac80111: Add BIP-CMAC-256 cipher 2015-01-27 11:09:13 +01:00
aes_gcm.c mac80111: aes_gcm: clean up ieee80211_aes_gcm_key_setup_encrypt() 2015-03-30 10:42:02 +02:00
aes_gcm.h mac80111: Add GCMP and GCMP-256 ciphers 2015-01-27 11:06:09 +01:00
aes_gmac.c mac80211: Fix misplaced return in AES-GMAC key setup 2015-03-30 10:38:07 +02:00
aes_gmac.h mac80111: Add BIP-GMAC-128 and BIP-GMAC-256 ciphers 2015-01-27 11:10:13 +01:00
agg-rx.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-04-02 16:16:53 -04:00
agg-tx.c mac80211: add an intermediate software queue implementation 2015-04-01 20:44:34 +02:00
cfg.c mac80211: fix the beacon csa counter for mesh and ibss 2015-06-09 22:04:25 +02:00
cfg.h mac80211: make cfg80211 ops and privid const 2014-02-04 21:48:21 +01:00
chan.c mac80211: adjust reserved chan_ctx when assigned to vif 2015-05-07 14:24:52 +02:00
debug.h mac80211: 802.11p OCB mode support 2014-11-04 13:18:21 +01:00
debugfs_key.c mac80211: move TX PN to public part of key struct 2015-06-02 11:16:35 +02:00
debugfs_key.h
debugfs_netdev.c mac80211: remove drop_unencrypted code 2015-03-20 11:37:36 +01:00
debugfs_netdev.h mac80211: fix some missing includes 2014-04-09 14:49:43 +02:00
debugfs_sta.c mac80211: clean up station debugfs 2015-05-05 14:21:55 +02:00
debugfs_sta.h
debugfs.c mac80211: remove short slot/short preamble incapable flags 2015-06-02 20:28:58 +02:00
debugfs.h mac80211: fix some missing includes 2014-04-09 14:49:43 +02:00
driver-ops.h mac80211: extend get_tkip_seq to all keys 2015-05-06 13:29:59 +02:00
ethtool.c mac80211: remove sta->tx_fragments counter 2015-05-05 14:21:55 +02:00
event.c
ht.c mac80211: add VHT support for IBSS 2015-03-30 10:48:26 +02:00
ibss.c mac80211: fix the beacon csa counter for mesh and ibss 2015-06-09 22:04:25 +02:00
ieee80211_i.h mac80211: fix throughput LED trigger 2015-05-11 19:16:04 +02:00
iface.c mac80211: use per-CPU TX/RX statistics 2015-04-24 11:16:11 +02:00
Kconfig mac80211: move dot11 counters under MAC80211_DEBUG_COUNTERS 2015-05-05 14:21:54 +02:00
key.c mac80211: move TX PN to public part of key struct 2015-06-02 11:16:35 +02:00
key.h mac80211: move TX PN to public part of key struct 2015-06-02 11:16:35 +02:00
led.c mac80211: fix throughput LED trigger 2015-05-11 19:16:04 +02:00
led.h mac80211: make LED triggering depend on activation 2015-05-05 14:21:56 +02:00
main.c mac80211: prevent possible crypto tx tailroom corruption 2015-05-29 13:04:46 +02:00
Makefile mac80111: Add BIP-GMAC-128 and BIP-GMAC-256 ciphers 2015-01-27 11:10:13 +01:00
mesh_hwmp.c mac80211: Fix a case of incorrect metric used when forwarding a PREQ 2015-06-10 11:52:59 +02:00
mesh_pathtbl.c mac80211: implement cfg80211_ops to query mesh proxy path table 2014-10-09 11:19:07 +02:00
mesh_plink.c mac80211: Always check rates and capabilities in mesh mode 2015-06-09 22:05:06 +02:00
mesh_ps.c mac80211: clear sequence/fragment number in QoS-null frames 2014-03-05 15:49:54 +01:00
mesh_sync.c mac80211: remove BUG_ON usage 2014-04-29 17:59:27 +02:00
mesh.c mac80211: fix the beacon csa counter for mesh and ibss 2015-06-09 22:04:25 +02:00
mesh.h mac80211: implement cfg80211_ops to query mesh proxy path table 2014-10-09 11:19:07 +02:00
michael.c
michael.h mac80211: fix some missing includes 2014-04-09 14:49:43 +02:00
mlme.c mac80211: release channel on auth failure 2015-06-09 21:51:01 +02:00
ocb.c mac80211: 802.11p OCB mode support 2014-11-04 13:18:21 +01:00
offchannel.c mac80211: let flush() drop packets when possible 2015-01-14 09:31:18 +01:00
pm.c mac80211: start queues if driver rejected wowlan 2015-03-04 10:34:09 +01:00
rate.c mac80211: lock rate control 2015-04-20 13:05:29 +02:00
rate.h mac80211: lock rate control 2015-04-20 13:05:29 +02:00
rc80211_minstrel_debugfs.c mac80211: add standard deviation to Minstrel stats 2015-04-01 20:44:33 +02:00
rc80211_minstrel_ht_debugfs.c mac80211: add standard deviation to Minstrel stats 2015-04-01 20:44:33 +02:00
rc80211_minstrel_ht.c mac80211: add max lossless throughput per rate 2015-04-01 20:44:32 +02:00
rc80211_minstrel_ht.h mac80211: add max lossless throughput per rate 2015-04-01 20:44:32 +02:00
rc80211_minstrel.c mac80211: add standard deviation to Minstrel stats 2015-04-01 20:44:33 +02:00
rc80211_minstrel.h mac80211: add standard deviation to Minstrel stats 2015-04-01 20:44:33 +02:00
rx.c mac80211: move dot11 counters under MAC80211_DEBUG_COUNTERS 2015-05-05 14:21:54 +02:00
scan.c mac80211: ignore invalid scan RSSI values 2015-06-09 21:51:59 +02:00
spectmgmt.c mac80211: remove unused variable in ieee80211_parse_ch_switch_ie() 2014-12-17 15:45:17 +01:00
sta_info.c mac80211: make station hash table max_size configurable 2015-04-23 17:26:06 +02:00
sta_info.h mac80211: Always check rates and capabilities in mesh mode 2015-06-09 22:05:06 +02:00
status.c mac80211: stop using pointers as userspace cookies 2015-06-02 13:07:59 +02:00
tdls.c mac80211: remove short slot/short preamble incapable flags 2015-06-02 20:28:58 +02:00
tkip.c mac80211: fix checkpatch errors 2013-12-18 10:33:06 +01:00
tkip.h
trace_msg.h mac80211: Move message tracepoints to their own header 2015-04-07 12:32:09 -04:00
trace.c mac80211: Move message tracepoints to their own header 2015-04-07 12:32:09 -04:00
trace.h mac80211: extend get_tkip_seq to all keys 2015-05-06 13:29:59 +02:00
tx.c mac80211: handle aggregation session timeout on fast-xmit path 2015-06-09 21:38:40 +02:00
util.c cfg80211: move IE split utilities here from mac80211 2015-04-07 13:56:41 +02:00
vht.c mac80211: TDLS: support VHT between peers 2015-03-03 15:56:07 +01:00
wep.c mac80211: fix network header breakage during encryption 2014-10-23 20:40:01 +02:00
wep.h
wme.c mac80211: synchronously reserve TID per station 2014-11-19 18:45:36 +01:00
wme.h mac80211: add WMM admission control support 2014-10-22 10:42:09 +02:00
wpa.c mac80211: move TX PN to public part of key struct 2015-06-02 11:16:35 +02:00
wpa.h mac80111: Add BIP-GMAC-128 and BIP-GMAC-256 ciphers 2015-01-27 11:10:13 +01:00