summaryrefslogtreecommitdiffstats
path: root/net/decnet/dn_rules.c
diff options
context:
space:
mode:
authorPatrick McHardy2006-07-08 22:38:55 +0200
committerDavid S. Miller2006-07-08 22:38:55 +0200
commit26e0fd1ce2418b10713b569a195bdb679233066b (patch)
treeafe1e76e4285fe79d291726d55a466f7bdc69305 /net/decnet/dn_rules.c
parent[NET] gso: Fix up GSO packets with broken checksums (diff)
downloadkernel-qcow2-linux-26e0fd1ce2418b10713b569a195bdb679233066b.tar.gz
kernel-qcow2-linux-26e0fd1ce2418b10713b569a195bdb679233066b.tar.xz
kernel-qcow2-linux-26e0fd1ce2418b10713b569a195bdb679233066b.zip
[NET]: Fix IPv4/DECnet routing rule dumping
When more rules are present than fit in a single skb, the remaining rules are incorrectly skipped. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/decnet/dn_rules.c')
-rw-r--r--net/decnet/dn_rules.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/decnet/dn_rules.c b/net/decnet/dn_rules.c
index 06e785fe5757..22f321d9bf9d 100644
--- a/net/decnet/dn_rules.c
+++ b/net/decnet/dn_rules.c
@@ -399,9 +399,10 @@ int dn_fib_dump_rules(struct sk_buff *skb, struct netlink_callback *cb)
rcu_read_lock();
hlist_for_each_entry(r, node, &dn_fib_rules, r_hlist) {
if (idx < s_idx)
- continue;
+ goto next;
if (dn_fib_fill_rule(skb, r, cb, NLM_F_MULTI) < 0)
break;
+next:
idx++;
}
rcu_read_unlock();