diff options
author | jkim <jkim@FreeBSD.org> | 2009-11-18 19:26:17 +0000 |
---|---|---|
committer | jkim <jkim@FreeBSD.org> | 2009-11-18 19:26:17 +0000 |
commit | efc247aeb32656ef1e27f5c3451d1fa4b1408294 (patch) | |
tree | a3a08f20079f4675a52c1823f3e5a1d17ffd253f /sys/net | |
parent | f62107b530c25a7f2366b1bab84bbfe75bde02ed (diff) | |
download | FreeBSD-src-efc247aeb32656ef1e27f5c3451d1fa4b1408294.zip FreeBSD-src-efc247aeb32656ef1e27f5c3451d1fa4b1408294.tar.gz |
- Make BPF JIT compiler working again in userland. We are limiting size of
generated native binary to page size for now.
- Update copyright date and fix some style nits.
Diffstat (limited to 'sys/net')
-rw-r--r-- | sys/net/bpf_jitter.c | 6 | ||||
-rw-r--r-- | sys/net/bpf_jitter.h | 4 |
2 files changed, 7 insertions, 3 deletions
diff --git a/sys/net/bpf_jitter.c b/sys/net/bpf_jitter.c index cb644f4..97f96a8 100644 --- a/sys/net/bpf_jitter.c +++ b/sys/net/bpf_jitter.c @@ -1,6 +1,6 @@ /*- * Copyright (C) 2002-2003 NetGroup, Politecnico di Torino (Italy) - * Copyright (C) 2005-2008 Jung-uk Kim <jkim@FreeBSD.org> + * Copyright (C) 2005-2009 Jung-uk Kim <jkim@FreeBSD.org> * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -43,6 +43,8 @@ __FBSDID("$FreeBSD$"); #else #include <stdlib.h> #include <string.h> +#include <sys/mman.h> +#include <sys/param.h> #include <sys/types.h> #endif @@ -127,7 +129,7 @@ bpf_destroy_jit_filter(bpf_jit_filter *filter) { if (filter->func != bpf_jit_accept_all) - free(filter->func); + munmap(filter->func, BPF_JIT_MAXSIZE); free(filter); } #endif diff --git a/sys/net/bpf_jitter.h b/sys/net/bpf_jitter.h index 04491b0..76292cc 100644 --- a/sys/net/bpf_jitter.h +++ b/sys/net/bpf_jitter.h @@ -1,6 +1,6 @@ /*- * Copyright (C) 2002-2003 NetGroup, Politecnico di Torino (Italy) - * Copyright (C) 2005-2008 Jung-uk Kim <jkim@FreeBSD.org> + * Copyright (C) 2005-2009 Jung-uk Kim <jkim@FreeBSD.org> * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -36,6 +36,8 @@ #ifdef _KERNEL MALLOC_DECLARE(M_BPFJIT); +#else +#define BPF_JIT_MAXSIZE PAGE_SIZE #endif extern int bpf_jitter_enable; |