summaryrefslogtreecommitdiffstats
path: root/contrib
diff options
context:
space:
mode:
authormlaier <mlaier@FreeBSD.org>2004-08-22 16:58:06 +0000
committermlaier <mlaier@FreeBSD.org>2004-08-22 16:58:06 +0000
commit7dfba5d6351e31a31ad60227ca0423a1e26a14f7 (patch)
tree7c1b786cbff64fe71f56cf8f970689030f283c5e /contrib
parent252cbf1c2aeff200b94f1b2b55460095bce9249e (diff)
downloadFreeBSD-src-7dfba5d6351e31a31ad60227ca0423a1e26a14f7.zip
FreeBSD-src-7dfba5d6351e31a31ad60227ca0423a1e26a14f7.tar.gz
Loopback a fix from Cedric Berger:
Fix table add/replace commands with securelevel=2. Reported by James J. Lippard. Discussed with: yongari MFC after: 5 days
Diffstat (limited to 'contrib')
-rw-r--r--contrib/pf/pfctl/pfctl_table.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/contrib/pf/pfctl/pfctl_table.c b/contrib/pf/pfctl/pfctl_table.c
index 4aa606d..7b838b0 100644
--- a/contrib/pf/pfctl/pfctl_table.c
+++ b/contrib/pf/pfctl/pfctl_table.c
@@ -1,4 +1,5 @@
/* $OpenBSD: pfctl_table.c,v 1.59 2004/03/15 15:25:44 dhartmei Exp $ */
+/* add $OpenBSD: pfctl_table.c,v 1.61 2004/06/12 22:22:44 cedric Exp $ */
/*
* Copyright (c) 2002 Cedric Berger
@@ -88,7 +89,13 @@ static const char *istats_text[2][2][2] = {
#define CREATE_TABLE do { \
table.pfrt_flags |= PFR_TFLAG_PERSIST; \
- RVTEST(pfr_add_tables(&table, 1, &nadd, flags)); \
+ if ((!(opts & PF_OPT_NOACTION) || \
+ (opts & PF_OPT_DUMMYACTION)) && \
+ (pfr_add_tables(&table, 1, &nadd, flags)) && \
+ (errno != EPERM)) { \
+ radix_perror(); \
+ goto _error; \
+ } \
if (nadd) { \
warn_namespace_collision(table.pfrt_name); \
xprintf(opts, "%d table created", nadd); \
OpenPOWER on IntegriCloud