diff options
author | Claudio Jeker <claudio@cvs.openbsd.org> | 2010-06-28 18:50:38 +0000 |
---|---|---|
committer | Claudio Jeker <claudio@cvs.openbsd.org> | 2010-06-28 18:50:38 +0000 |
commit | 22b0156759c053e251b29ef230ddf75b9e45d9f4 (patch) | |
tree | 58fbb22339399962bcb296ceb830e2d267c226a7 /sys/net/pf_table.c | |
parent | f668ba96c8a5c3248f9ce4db53f92c7ef8e16f9c (diff) |
Add the rtable id as an argument to rn_walktree(). Functions like
rt_if_remove_rtdelete() need to know the table id to be able to correctly
remove nodes.
Problem found by Andrea Parazzini and analyzed by Martin Pelikán.
OK henning@
Diffstat (limited to 'sys/net/pf_table.c')
-rw-r--r-- | sys/net/pf_table.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/net/pf_table.c b/sys/net/pf_table.c index f46e053b20f..77a0e1d1e5c 100644 --- a/sys/net/pf_table.c +++ b/sys/net/pf_table.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pf_table.c,v 1.83 2010/02/24 15:04:40 henning Exp $ */ +/* $OpenBSD: pf_table.c,v 1.84 2010/06/28 18:50:37 claudio Exp $ */ /* * Copyright (c) 2002 Cedric Berger @@ -156,7 +156,7 @@ int pfr_route_kentry(struct pfr_ktable *, struct pfr_kentry *); int pfr_unroute_kentry(struct pfr_ktable *, struct pfr_kentry *); -int pfr_walktree(struct radix_node *, void *); +int pfr_walktree(struct radix_node *, void *, u_int); int pfr_validate_table(struct pfr_table *, int, int); int pfr_fix_anchor(char *); void pfr_commit_ktable(struct pfr_ktable *, long); @@ -1066,7 +1066,7 @@ pfr_copyout_addr(struct pfr_addr *ad, struct pfr_kentry *ke) } int -pfr_walktree(struct radix_node *rn, void *arg) +pfr_walktree(struct radix_node *rn, void *arg, u_int id) { struct pfr_kentry *ke = (struct pfr_kentry *)rn; struct pfr_walktree *w = arg; |