diff options
Diffstat (limited to 'utils')
-rw-r--r-- | utils/.gitignore | 1 | ||||
-rw-r--r-- | utils/Makefile.am | 11 | ||||
-rw-r--r-- | utils/nfbpf_compile.8.in | 2 | ||||
-rw-r--r-- | utils/nfbpf_compile.c | 10 | ||||
-rw-r--r-- | utils/nfnl_osf.8.in | 4 |
5 files changed, 19 insertions, 9 deletions
diff --git a/utils/.gitignore b/utils/.gitignore index 6300812b..e508bb32 100644 --- a/utils/.gitignore +++ b/utils/.gitignore @@ -2,3 +2,4 @@ /nfnl_osf.8 /nfbpf_compile /nfbpf_compile.8 +/nfsynproxy diff --git a/utils/Makefile.am b/utils/Makefile.am index 42bd9737..34056514 100644 --- a/utils/Makefile.am +++ b/utils/Makefile.am @@ -2,16 +2,17 @@ AM_CFLAGS = ${regular_CFLAGS} AM_CPPFLAGS = ${regular_CPPFLAGS} -I${top_builddir}/include \ - -I${top_srcdir}/include ${libnfnetlink_CFLAGS} + -I${top_srcdir}/include ${libnfnetlink_CFLAGS} ${libpcap_CFLAGS} +AM_LDFLAGS = ${regular_LDFLAGS} sbin_PROGRAMS = -pkgdata_DATA = +dist_pkgdata_DATA = man_MANS = if HAVE_LIBNFNETLINK man_MANS += nfnl_osf.8 sbin_PROGRAMS += nfnl_osf -pkgdata_DATA += pf.os +dist_pkgdata_DATA += pf.os nfnl_osf_LDADD = ${libnfnetlink_LIBS} @@ -24,12 +25,12 @@ endif if ENABLE_BPFC man_MANS += nfbpf_compile.8 sbin_PROGRAMS += nfbpf_compile -nfbpf_compile_LDADD = -lpcap +nfbpf_compile_LDADD = ${libpcap_LIBS} endif if ENABLE_SYNCONF sbin_PROGRAMS += nfsynproxy -nfsynproxy_LDADD = -lpcap +nfsynproxy_LDADD = ${libpcap_LIBS} endif CLEANFILES = nfnl_osf.8 nfbpf_compile.8 diff --git a/utils/nfbpf_compile.8.in b/utils/nfbpf_compile.8.in index d02979a5..b19d4fbb 100644 --- a/utils/nfbpf_compile.8.in +++ b/utils/nfbpf_compile.8.in @@ -1,7 +1,7 @@ .TH NFBPF_COMPILE 8 "" "@PACKAGE_STRING@" "@PACKAGE_STRING@" .SH NAME -nfbpf_compile \- generate bytecode for use with xt_bpf +nfbpf_compile \(em generate bytecode for use with xt_bpf .SH SYNOPSIS .ad l diff --git a/utils/nfbpf_compile.c b/utils/nfbpf_compile.c index 2c46c7b0..c9e763dc 100644 --- a/utils/nfbpf_compile.c +++ b/utils/nfbpf_compile.c @@ -17,6 +17,7 @@ int main(int argc, char **argv) struct bpf_program program; struct bpf_insn *ins; int i, dlt = DLT_RAW; + pcap_t *pcap; if (argc < 2 || argc > 3) { fprintf(stderr, "Usage: %s [link] '<program>'\n\n" @@ -36,9 +37,15 @@ int main(int argc, char **argv) } } - if (pcap_compile_nopcap(65535, dlt, &program, argv[argc - 1], 1, + pcap = pcap_open_dead(dlt, 65535); + if (!pcap) { + fprintf(stderr, "Memory allocation failure\n"); + return 1; + } + if (pcap_compile(pcap, &program, argv[argc - 1], 1, PCAP_NETMASK_UNKNOWN)) { fprintf(stderr, "Compilation error\n"); + pcap_close(pcap); return 1; } @@ -50,6 +57,7 @@ int main(int argc, char **argv) printf("%u %u %u %u\n", ins->code, ins->jt, ins->jf, ins->k); pcap_freecode(&program); + pcap_close(pcap); return 0; } diff --git a/utils/nfnl_osf.8.in b/utils/nfnl_osf.8.in index 140b5c3f..1ef0c387 100644 --- a/utils/nfnl_osf.8.in +++ b/utils/nfnl_osf.8.in @@ -1,7 +1,7 @@ .TH NFNL_OSF 8 "" "@PACKAGE_STRING@" "@PACKAGE_STRING@" .SH NAME -nfnl_osf \- OS fingerprint loader utility +nfnl_osf \(em OS fingerprint loader utility .SH SYNOPSIS .ad l @@ -16,7 +16,7 @@ nfnl_osf \- OS fingerprint loader utility .SH DESCRIPTION The .B nfnl_osf -utility allows to load a set of operating system signatures into the kernel for +utility allows one to load a set of operating system signatures into the kernel for later matching against using iptables' .B osf match. |