linux-kernel-test/net
Julius Volz b46372710a net/wireless/nl80211.c: fix endless Netlink callback loop.
Although I only tested similar code (I don't use any of this wireless
code), the state maintainance between Netlink dump callback invocations
seems wrong here and should lead to an endless loop. There are also other
examples in the same file which might have the same problem. Perhaps someone
can actually test this (or refute my logic).

Take the simple example with only one element in the list (which should fit
into the message):

1. invocation:
  Start:
    idx = 0, start = 0
  Loop:
    condition (++idx < start) => (1 < 0) => false
    => no continue, fill one entry, exit loop, return skb->len > 0

2. invocation:
  Start:
    idx = 0, start = 1
  Loop:
    condition (++idx < start) => (1 < 1) => false
    => no continue, fill the same entry again, exit loop, return skb->len > 0

3. invocation:
  Same as 2. invocation, endless invocation of callback.

Also, iterations where the filling of an element fails should not be counted as
completed, so idx should not be incremented in this case.

Signed-off-by: Julius Volz <juliusv@google.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2008-07-08 14:16:08 -04:00
..
9p 9p: fix error path during early mount 2008-05-14 19:23:27 -05:00
802 net: Add GARP applicant-only participant 2008-07-05 21:26:13 -07:00
8021q vlan: TCI related type and naming cleanups 2008-07-08 03:24:44 -07:00
appletalk [NET] NETNS: Omit net_device->nd_net without CONFIG_NET_NS. 2008-03-26 04:39:53 +09:00
atm atm: use const where reasonable 2008-06-17 16:20:06 -07:00
ax25 ax25: Fix std timer socket destroy handling. 2008-06-17 21:26:37 -07:00
bluetooth net: remove CVS keywords 2008-06-11 21:00:38 -07:00
bridge netfilter: ebt_nflog: fix Kconfig typo 2008-07-08 02:37:07 -07:00
can Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2008-05-08 19:03:26 -07:00
core net: fix dev_set_promiscuity() breakage 2008-07-06 15:49:08 -07:00
dccp net: change proto destroy method to return void 2008-06-14 17:04:49 -07:00
decnet net: add fib_rules_ops to flush_cache method 2008-07-05 19:01:28 -07:00
econet econet: Use sock_orphan() instead of open-coded (and buggy) variant. 2008-06-17 03:01:47 -07:00
ethernet [NET]: Return more appropriate error from eth_validate_addr(). 2008-04-13 22:45:40 -07:00
ieee80211 wext: Emit event stream entries correctly when compat. 2008-06-16 18:50:49 -07:00
ipv4 ipv4: remove flush_mutex from ipv4_sysctl_rtcache_flush 2008-07-08 03:05:28 -07:00
ipv6 netfilter: ip6table_filter in netns for real 2008-07-08 02:36:18 -07:00
ipx [NET] NETNS: Omit net_device->nd_net without CONFIG_NET_NS. 2008-03-26 04:39:53 +09:00
irda Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-06-10 02:22:26 -07:00
iucv af_iucv: exploit target message class support of IUCV 2008-06-09 15:51:03 -07:00
key Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-06-13 20:52:39 -07:00
lapb
llc llc: Use sock_graft() instead of by-hand version. 2008-06-17 01:21:03 -07:00
mac80211 mac80211: fix lots of kernel-doc 2008-07-08 14:16:03 -04:00
netfilter netfilter: fix string extension for case insensitive pattern matching 2008-07-08 02:38:56 -07:00
netlabel netlabel: Fix a problem when dumping the default IPv6 static labels 2008-06-27 20:12:32 -07:00
netlink Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-07-05 23:08:07 -07:00
netrom netrom: Kill spurious NULL'ing of sk->sk_socket. 2008-06-17 03:19:58 -07:00
packet net: remove CVS keywords 2008-06-11 21:00:38 -07:00
rfkill rfkill: ignore errors from rfkill_toggle_radio in rfkill_add_switch 2008-07-08 14:16:03 -04:00
rose rose: improving AX25 routing frames via ROSE network 2008-06-17 17:08:32 -07:00
rxrpc MIB: add struct net to UDP_INC_STATS_BH 2008-07-05 21:18:48 -07:00
sched net-sched: consolidate default fifo qdisc setup 2008-07-05 23:40:21 -07:00
sctp sctp: Mark GET_PEER|LOCAL_ADDR_OLD deprecated. 2008-07-01 20:06:22 -07:00
sunrpc net: remove CVS keywords 2008-06-11 21:00:38 -07:00
tipc tipc: Message rejection rework preparatory changes 2008-06-04 17:54:48 -07:00
unix Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-06-28 01:19:40 -07:00
wanrouter wanrouter: Push down BKL 2008-05-25 23:41:40 -07:00
wireless net/wireless/nl80211.c: fix endless Netlink callback loop. 2008-07-08 14:16:08 -04:00
x25 x25: Use sock_orphan() instead of open-coded (and buggy) variant. 2008-06-17 03:05:13 -07:00
xfrm xfrm: xfrm_algo: correct usage of RIPEMD-160 2008-06-04 12:04:55 -07:00
compat.c net: Add compat support for getsockopt (MCAST_MSFILTER) 2008-04-29 03:23:22 -07:00
Kconfig net: Add STP demux layer 2008-07-05 21:25:39 -07:00
Makefile vlan: uninline __vlan_hwaccel_rx 2008-07-08 03:23:36 -07:00
nonet.c
socket.c wext: Dispatch and handle compat ioctls entirely in net/wireless/wext.c 2008-06-16 18:32:46 -07:00
sysctl_net.c net: remove CVS keywords 2008-06-11 21:00:38 -07:00
TUNABLE