Subject: [PATCH] netns: fix proxy ARP entries listing

From: "Jorge Boncompte [DTI2]" <[email-masked]>
Date: Thu, 02 Sep 2010 20:35:01 +0200

Skip entries from foreign network namespaces.

Signed-off-by: Jorge Boncompte [DTI2] <[email-masked]>
---
 net/core/neighbour.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/net/core/neighbour.c b/net/core/neighbour.c
index a4e0a74..4c36fa9 100644
--- a/net/core/neighbour.c
+++ b/net/core/neighbour.c
@@ -2323,6 +2323,7 @@ static struct pneigh_entry *pneigh_get_next(struct
seq_file *seq,
        struct net *net = seq_file_net(seq);
        struct neigh_table *tbl = state->tbl;

+restart:
        pn = pn->next;
        while (!pn) {
                if (++state->bucket > PNEIGH_HASHMASK)
@@ -2334,6 +2335,9 @@ static struct pneigh_entry *pneigh_get_next(struct
seq_file *seq,
                        break;
        }

+       if (pn && !net_eq(pneigh_net(pn), net))
+               goto restart;
+
        if (pn && pos)
                --(*pos);

-- 
1.7.1