Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src NPF: G/C n-code in favour of BPF byte-code. Delete lots of ...
details: https://anonhg.NetBSD.org/src/rev/08bb10c415a6
branches: trunk
changeset: 790106:08bb10c415a6
user: rmind <rmind%NetBSD.org@localhost>
date: Thu Sep 19 01:49:07 2013 +0000
description:
NPF: G/C n-code in favour of BPF byte-code. Delete lots of code, mmm!
diffstat:
distrib/sets/lists/comp/mi | 4 +-
lib/libnpf/npf.c | 120 +--
lib/libnpf/npf.h | 12 +-
sys/modules/npf/Makefile | 12 +-
sys/net/npf/Makefile | 4 +-
sys/net/npf/files.npf | 4 +-
sys/net/npf/npf_ctl.c | 33 +-
sys/net/npf/npf_impl.h | 17 +-
sys/net/npf/npf_instr.c | 238 -----
sys/net/npf/npf_ncode.h | 370 ---------
sys/net/npf/npf_processor.c | 573 --------------
sys/net/npf/npf_ruleset.c | 44 +-
sys/rump/net/lib/libnpf/Makefile | 9 +-
usr.sbin/npf/npfctl/npf_disassemble.c | 762 -------------------
usr.sbin/npf/npfctl/npf_ncgen.c | 441 ----------
usr.sbin/npf/npfctl/npfctl.h | 81 +-
usr.sbin/npf/npftest/libnpftest/Makefile | 1 -
usr.sbin/npf/npftest/libnpftest/npf_processor_test.c | 213 -----
usr.sbin/npf/npftest/libnpftest/npf_rule_test.c | 5 +-
usr.sbin/npf/npftest/libnpftest/npf_test.h | 1 -
usr.sbin/npf/npftest/npftest.c | 10 +-
usr.sbin/npf/npftest/npftest.h | 1 -
22 files changed, 54 insertions(+), 2901 deletions(-)
diffs (truncated from 3331 to 300 lines):
diff -r 3234cc6de4fd -r 08bb10c415a6 distrib/sets/lists/comp/mi
--- a/distrib/sets/lists/comp/mi Thu Sep 19 01:04:45 2013 +0000
+++ b/distrib/sets/lists/comp/mi Thu Sep 19 01:49:07 2013 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1836 2013/09/10 16:51:24 pooka Exp $
+# $NetBSD: mi,v 1.1837 2013/09/19 01:49:07 rmind Exp $
#
# Note: don't delete entries from here - mark them as "obsolete" instead.
#
@@ -1980,7 +1980,7 @@
./usr/include/net/net_stats.h comp-c-include
./usr/include/net/netisr.h comp-c-include
./usr/include/net/npf.h comp-c-include
-./usr/include/net/npf_ncode.h comp-c-include
+./usr/include/net/npf_ncode.h comp-obsolete obsolete
./usr/include/net/pfil.h comp-c-include
./usr/include/net/pfkeyv2.h comp-c-include
./usr/include/net/pfvar.h comp-c-include
diff -r 3234cc6de4fd -r 08bb10c415a6 lib/libnpf/npf.c
--- a/lib/libnpf/npf.c Thu Sep 19 01:04:45 2013 +0000
+++ b/lib/libnpf/npf.c Thu Sep 19 01:49:07 2013 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: npf.c,v 1.20 2013/09/19 01:04:46 rmind Exp $ */
+/* $NetBSD: npf.c,v 1.21 2013/09/19 01:49:07 rmind Exp $ */
/*-
* Copyright (c) 2010-2013 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: npf.c,v 1.20 2013/09/19 01:04:46 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: npf.c,v 1.21 2013/09/19 01:49:07 rmind Exp $");
#include <sys/types.h>
#include <netinet/in_systm.h>
@@ -661,53 +661,6 @@
return rpname;
}
-#if 1
-static int
-_npf_rule_foreach1(prop_array_t rules, nl_rule_callback_t func)
-{
- prop_dictionary_t rldict;
- prop_object_iterator_t it;
- unsigned reduce[16], n;
- unsigned nlevel;
-
- if (!rules || prop_object_type(rules) != PROP_TYPE_ARRAY) {
- return ENOENT;
- }
- it = prop_array_iterator(rules);
- if (it == NULL) {
- return ENOMEM;
- }
-
- nlevel = 0;
- reduce[nlevel] = 0;
- n = 0;
-
- while ((rldict = prop_object_iterator_next(it)) != NULL) {
- nl_rule_t nrl = { .nrl_dict = rldict };
- uint32_t skipto = 0;
-
- prop_dictionary_get_uint32(rldict, "skip-to", &skipto);
- (*func)(&nrl, nlevel);
- if (skipto) {
- nlevel++;
- reduce[nlevel] = skipto;
- }
- if (reduce[nlevel] == ++n) {
- assert(nlevel > 0);
- nlevel--;
- }
- }
- prop_object_iterator_release(it);
- return 0;
-}
-
-int
-_npf_rule_foreach(nl_config_t *ncf, nl_rule_callback_t func)
-{
- return _npf_rule_foreach1(ncf->ncf_rules_list, func);
-}
-#endif
-
int
_npf_ruleset_list(int fd, const char *rname, nl_config_t *ncf)
{
@@ -734,31 +687,6 @@
return error;
}
-#if 1
-pri_t
-_npf_rule_getinfo(nl_rule_t *nrl, const char **rname, uint32_t *attr,
- u_int *if_idx)
-{
- prop_dictionary_t rldict = nrl->nrl_dict;
- pri_t prio;
-
- prop_dictionary_get_cstring_nocopy(rldict, "name", rname);
- prop_dictionary_get_uint32(rldict, "attributes", attr);
- prop_dictionary_get_int32(rldict, "priority", &prio);
- prop_dictionary_get_uint32(rldict, "interface", if_idx);
- return prio;
-}
-
-const void *
-_npf_rule_ncode(nl_rule_t *nrl, size_t *size)
-{
- prop_dictionary_t rldict = nrl->nrl_dict;
- prop_object_t obj = prop_dictionary_get(rldict, "code");
- *size = prop_data_size(obj);
- return prop_data_data_nocopy(obj);
-}
-#endif
-
void
npf_rule_destroy(nl_rule_t *rl)
{
@@ -959,30 +887,6 @@
prop_dictionary_get_uint16(rldict, "translation-port", port);
}
-#if 1
-int
-_npf_nat_foreach(nl_config_t *ncf, nl_rule_callback_t func)
-{
- return _npf_rule_foreach1(ncf->ncf_nat_list, func);
-}
-
-void
-_npf_nat_getinfo(nl_nat_t *nt, int *type, u_int *flags, npf_addr_t *addr,
- size_t *alen, in_port_t *port)
-{
- prop_dictionary_t rldict = nt->nrl_dict;
-
- prop_dictionary_get_int32(rldict, "type", type);
- prop_dictionary_get_uint32(rldict, "flags", flags);
-
- prop_object_t obj = prop_dictionary_get(rldict, "translation-ip");
- *alen = prop_data_size(obj);
- memcpy(addr, prop_data_data_nocopy(obj), *alen);
-
- prop_dictionary_get_uint16(rldict, "translation-port", port);
-}
-#endif
-
/*
* TABLE INTERFACE.
*/
@@ -1133,26 +1037,6 @@
free(tl);
}
-#if 1
-void
-_npf_table_foreach(nl_config_t *ncf, nl_table_callback_t func)
-{
- prop_dictionary_t tldict;
- prop_object_iterator_t it;
-
- it = prop_array_iterator(ncf->ncf_table_list);
- while ((tldict = prop_object_iterator_next(it)) != NULL) {
- u_int id;
- int type;
-
- prop_dictionary_get_uint32(tldict, "id", &id);
- prop_dictionary_get_int32(tldict, "type", &type);
- (*func)(id, type);
- }
- prop_object_iterator_release(it);
-}
-#endif
-
/*
* ALG INTERFACE.
*/
diff -r 3234cc6de4fd -r 08bb10c415a6 lib/libnpf/npf.h
--- a/lib/libnpf/npf.h Thu Sep 19 01:04:45 2013 +0000
+++ b/lib/libnpf/npf.h Thu Sep 19 01:49:07 2013 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: npf.h,v 1.17 2013/09/19 01:04:46 rmind Exp $ */
+/* $NetBSD: npf.h,v 1.18 2013/09/19 01:49:07 rmind Exp $ */
/*-
* Copyright (c) 2011-2013 The NetBSD Foundation, Inc.
@@ -142,16 +142,6 @@
void _npf_config_error(nl_config_t *, nl_error_t *);
void _npf_config_setsubmit(nl_config_t *, const char *);
int _npf_ruleset_list(int, const char *, nl_config_t *);
-#if 1
-int _npf_rule_foreach(nl_config_t *, nl_rule_callback_t);
-pri_t _npf_rule_getinfo(nl_rule_t *, const char **, uint32_t *,
- u_int *);
-const void * _npf_rule_ncode(nl_rule_t *, size_t *);
-int _npf_nat_foreach(nl_config_t *, nl_rule_callback_t);
-void _npf_nat_getinfo(nl_nat_t *, int *, u_int *, npf_addr_t *,
- size_t *, in_port_t *);
-void _npf_table_foreach(nl_config_t *, nl_table_callback_t);
-#endif
void _npf_debug_addif(nl_config_t *, struct ifaddrs *, u_int);
/* The ALG interface is experimental */
diff -r 3234cc6de4fd -r 08bb10c415a6 sys/modules/npf/Makefile
--- a/sys/modules/npf/Makefile Thu Sep 19 01:04:45 2013 +0000
+++ b/sys/modules/npf/Makefile Thu Sep 19 01:49:07 2013 +0000
@@ -1,4 +1,7 @@
-# $NetBSD: Makefile,v 1.14 2013/09/19 01:04:46 rmind Exp $
+# $NetBSD: Makefile,v 1.15 2013/09/19 01:49:07 rmind Exp $
+#
+# Public Domain.
+#
.include "../Makefile.inc"
@@ -6,10 +9,9 @@
KMOD= npf
-SRCS= npf.c npf_alg.c npf_conf.c npf_ctl.c npf_handler.c
-SRCS+= npf_bpf.c npf_inet.c npf_instr.c npf_mbuf.c npf_nat.c
-SRCS+= npf_processor.c npf_ruleset.c npf_rproc.c npf_sendpkt.c
-SRCS+= npf_session.c npf_state.c npf_state_tcp.c
+SRCS= npf.c npf_alg.c npf_conf.c npf_ctl.c npf_handler.c npf_bpf.c
+SRCS+= npf_inet.c npf_mbuf.c npf_nat.c npf_ruleset.c npf_rproc.c
+SRCS+= npf_sendpkt.c npf_session.c npf_state.c npf_state_tcp.c
SRCS+= npf_tableset.c npf_tableset_ptree.c npf_worker.c
CPPFLAGS+= -DINET6
diff -r 3234cc6de4fd -r 08bb10c415a6 sys/net/npf/Makefile
--- a/sys/net/npf/Makefile Thu Sep 19 01:04:45 2013 +0000
+++ b/sys/net/npf/Makefile Thu Sep 19 01:49:07 2013 +0000
@@ -1,9 +1,9 @@
-# $NetBSD: Makefile,v 1.1 2010/08/22 18:56:22 rmind Exp $
+# $NetBSD: Makefile,v 1.2 2013/09/19 01:49:07 rmind Exp $
#
# Public Domain.
#
INCSDIR= /usr/include/net
-INCS= npf.h npf_ncode.h
+INCS= npf.h
.include <bsd.kinc.mk>
diff -r 3234cc6de4fd -r 08bb10c415a6 sys/net/npf/files.npf
--- a/sys/net/npf/files.npf Thu Sep 19 01:04:45 2013 +0000
+++ b/sys/net/npf/files.npf Thu Sep 19 01:49:07 2013 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: files.npf,v 1.14 2013/09/19 01:04:46 rmind Exp $
+# $NetBSD: files.npf,v 1.15 2013/09/19 01:49:07 rmind Exp $
#
# Public Domain.
#
@@ -14,9 +14,7 @@
file net/npf/npf_conf.c npf
file net/npf/npf_ctl.c npf
file net/npf/npf_handler.c npf
-file net/npf/npf_instr.c npf
file net/npf/npf_mbuf.c npf
-file net/npf/npf_processor.c npf
file net/npf/npf_bpf.c npf
file net/npf/npf_ruleset.c npf
file net/npf/npf_rproc.c npf
diff -r 3234cc6de4fd -r 08bb10c415a6 sys/net/npf/npf_ctl.c
--- a/sys/net/npf/npf_ctl.c Thu Sep 19 01:04:45 2013 +0000
+++ b/sys/net/npf/npf_ctl.c Thu Sep 19 01:49:07 2013 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: npf_ctl.c,v 1.28 2013/09/19 01:04:46 rmind Exp $ */
+/* $NetBSD: npf_ctl.c,v 1.29 2013/09/19 01:49:07 rmind Exp $ */
/*-
* Copyright (c) 2009-2013 The NetBSD Foundation, Inc.
@@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: npf_ctl.c,v 1.28 2013/09/19 01:04:46 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: npf_ctl.c,v 1.29 2013/09/19 01:49:07 rmind Exp $");
#include <sys/param.h>
#include <sys/conf.h>
@@ -46,7 +46,6 @@
#include <prop/proplib.h>
-#include "npf_ncode.h"
#include "npf_impl.h"
#if defined(DEBUG) || defined(DIAGNOSTIC)
@@ -250,37 +249,21 @@
prop_dictionary_t errdict)
{
const void *cptr;
- int cerr, errat;
size_t clen;
void *bc;
Home |
Main Index |
Thread Index |
Old Index