aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/pppoe.c
diff options
context:
space:
mode:
authorEric Dumazet <eric.dumazet@gmail.com>2009-07-28 23:43:08 +0000
committerDavid S. Miller <davem@davemloft.net>2009-07-30 14:19:19 -0700
commit72fc939789dbe7ca091b50b686d45ac0df15417a (patch)
tree450d68ac3788c335ac33c3ecc14be1e294f78a20 /drivers/net/pppoe.c
parenteexpress: Read buffer overflow (diff)
downloadlinux-dev-72fc939789dbe7ca091b50b686d45ac0df15417a.tar.xz
linux-dev-72fc939789dbe7ca091b50b686d45ac0df15417a.zip
pppoe: fix /proc/net/pppoe
If a socket is hashed in last slot of pppoe hash table (PPPOE_HASH_SIZE-1) we report it many times (up to filling seq buffer) (Only the last socket of last slot) Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/pppoe.c')
-rw-r--r--drivers/net/pppoe.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/pppoe.c b/drivers/net/pppoe.c
index f0031f1f97e5..5f2090233d7b 100644
--- a/drivers/net/pppoe.c
+++ b/drivers/net/pppoe.c
@@ -1063,6 +1063,7 @@ static void *pppoe_seq_next(struct seq_file *seq, void *v, loff_t *pos)
else {
int hash = hash_item(po->pppoe_pa.sid, po->pppoe_pa.remote);
+ po = NULL;
while (++hash < PPPOE_HASH_SIZE) {
po = pn->hash_table[hash];
if (po)