From 7226acfb72220c90ec89893f90a3b1bbf1a2512f Mon Sep 17 00:00:00 2001 From: jkim Date: Mon, 25 Aug 2008 22:45:18 +0000 Subject: Use sys/net/bpf_jitter.c instead of rolling our own version since it is compilable on user land now. --- tools/regression/bpf/bpf_filter/Makefile | 3 ++- tools/regression/bpf/bpf_filter/bpf_test.c | 14 +++++--------- 2 files changed, 7 insertions(+), 10 deletions(-) (limited to 'tools') diff --git a/tools/regression/bpf/bpf_filter/Makefile b/tools/regression/bpf/bpf_filter/Makefile index ea12e53..f6e2330 100644 --- a/tools/regression/bpf/bpf_filter/Makefile +++ b/tools/regression/bpf/bpf_filter/Makefile @@ -35,7 +35,8 @@ CFLAGS+= -DBPF_VALIDATE .endif .if (${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386") && defined(BPF_JIT) -SRCS+= ${SYSDIR}/${MACHINE_ARCH}/${MACHINE_ARCH}/bpf_jit_machdep.c +SRCS+= ${SYSDIR}/net/bpf_jitter.c \ + ${SYSDIR}/${MACHINE_ARCH}/${MACHINE_ARCH}/bpf_jit_machdep.c CFLAGS+= -I${SYSDIR} -DBPF_JIT_COMPILER WARNS?= 6 .else diff --git a/tools/regression/bpf/bpf_filter/bpf_test.c b/tools/regression/bpf/bpf_filter/bpf_test.c index aa70370..f031d77 100644 --- a/tools/regression/bpf/bpf_filter/bpf_test.c +++ b/tools/regression/bpf/bpf_filter/bpf_test.c @@ -51,24 +51,20 @@ static int verbose = LOG_LEVEL; #ifdef BPF_JIT_COMPILER -#include - #include -bpf_filter_func bpf_jit_compile(struct bpf_insn *, u_int, int *); - static u_int bpf_compile_and_filter(void) { - bpf_jit_filter filter; + bpf_jit_filter *filter; u_int ret; /* Do not use BPF JIT compiler for an empty program */ if (nins == 0) return (0); - /* Create the binary */ - if ((filter.func = bpf_jit_compile(pc, nins, filter.mem)) == NULL) { + /* Compile the BPF filter program and generate native code. */ + if ((filter = bpf_jitter(pc, nins)) == NULL) { if (verbose > 1) printf("Failed to allocate memory:\t"); if (verbose > 0) @@ -76,9 +72,9 @@ bpf_compile_and_filter(void) exit(FATAL); } - ret = (*(filter.func))(pkt, wirelen, buflen); + ret = (*(filter->func))(pkt, wirelen, buflen); - free(filter.func); + bpf_destroy_jit_filter(filter); return (ret); } -- cgit v1.1