summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsalo <salo@pkgsrc.org>2006-08-03 15:09:49 +0000
committersalo <salo@pkgsrc.org>2006-08-03 15:09:49 +0000
commitf31c5d70dd09949242958b583d69307b09717c58 (patch)
treec57e68b6013c39aa05f7f6f0ebea875a088d9732
parentfa9b68e46343bb0233a3ea65f4f38a22f01a368c (diff)
downloadpkgsrc-f31c5d70dd09949242958b583d69307b09717c58.tar.gz
Initial import of kismet-2006-04-R1: 802.11 wireless network detector, sniffer
and IDS. Kismet is an 802.11 layer2 wireless network detector, sniffer, and intrusion detection system. Kismet will work with any wireless card which supports raw monitoring (rfmon) mode, and can sniff 802.11b, 802.11a, and 802.11g traffic. Kismet identifies networks by passively collecting packets and detecting standard named networks, detecting (and given time, decloaking) hidden networks, and infering the presence of nonbeaconing networks via data traffic. Imported from pkgsrc-wip, thanks to <skrll> and <wiz> for help with patches, packaging and testing. XXX: GPS support is untested.
-rw-r--r--net/kismet/DESCR7
-rw-r--r--net/kismet/Makefile63
-rw-r--r--net/kismet/PLIST22
-rw-r--r--net/kismet/PLIST.gps4
-rw-r--r--net/kismet/distinfo10
-rw-r--r--net/kismet/options.mk17
-rw-r--r--net/kismet/patches/patch-aa12
-rw-r--r--net/kismet/patches/patch-ab34
-rw-r--r--net/kismet/patches/patch-ac14
-rw-r--r--net/kismet/patches/patch-ad13
-rw-r--r--net/kismet/patches/patch-ae119
11 files changed, 315 insertions, 0 deletions
diff --git a/net/kismet/DESCR b/net/kismet/DESCR
new file mode 100644
index 00000000000..fc50bf63c0b
--- /dev/null
+++ b/net/kismet/DESCR
@@ -0,0 +1,7 @@
+Kismet is an 802.11 layer2 wireless network detector, sniffer, and intrusion
+detection system. Kismet will work with any wireless card which supports raw
+monitoring (rfmon) mode, and can sniff 802.11b, 802.11a, and 802.11g traffic.
+
+Kismet identifies networks by passively collecting packets and detecting
+standard named networks, detecting (and given time, decloaking) hidden
+networks, and infering the presence of nonbeaconing networks via data traffic.
diff --git a/net/kismet/Makefile b/net/kismet/Makefile
new file mode 100644
index 00000000000..61b9043ca46
--- /dev/null
+++ b/net/kismet/Makefile
@@ -0,0 +1,63 @@
+# $NetBSD: Makefile,v 1.1.1.1 2006/08/03 15:09:49 salo Exp $
+
+DISTNAME= kismet-2006-04-R1
+PKGNAME= kismet-2006.04.01
+CATEGORIES= net
+MASTER_SITES= http://www.kismetwireless.net/code/
+
+MAINTAINER= skrll@NetBSD.org
+HOMEPAGE= http://www.kismetwireless.net/
+COMMENT= 802.11 wireless network detector, sniffer and IDS
+
+GNU_CONFIGURE= yes
+USE_LANGUAGES= c c++
+USE_NCURSES= # needs libpanel
+USE_TOOLS+= gmake
+
+# might be appended to in options.mk
+PLIST_SRC= PLIST
+
+KISMET_USER?= kismet
+KISMET_GROUP?= kismet
+PKG_GROUPS= ${KISMET_GROUP}
+PKG_USERS= ${KISMET_USER}:${KISMET_GROUP}::Kismet\ user:${VARBASE}/log/kismet
+
+PKG_SYSCONFSUBDIR?= ${PKGBASE}
+EGDIR= ${PREFIX}/share/examples/${PKGBASE}
+CONF_FILES+= ${EGDIR}/ap_manuf ${PKG_SYSCONFDIR}/ap_manuf
+CONF_FILES+= ${EGDIR}/client_manuf ${PKG_SYSCONFDIR}/client_manuf
+CONF_FILES+= ${EGDIR}/kismet.conf.default \
+ ${PKG_SYSCONFDIR}/kismet.conf
+CONF_FILES+= ${EGDIR}/kismet_drone.conf.default \
+ ${PKG_SYSCONFDIR}/kismet_drone.conf
+CONF_FILES+= ${EGDIR}/kismet_ui.conf.default \
+ ${PKG_SYSCONFDIR}/kismet_ui.conf
+OWN_DIRS_PERMS+= ${VARBASE}/log/kismet ${KISMET_USER} ${KISMET_GROUP} 0700
+
+CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR:Q}
+
+SUBST_CLASSES+= user
+SUBST_MESSAGE.user= Fixing user name.
+SUBST_STAGE.user= pre-configure
+SUBST_FILES.user= conf/kismet.conf.in
+SUBST_SED.user= 's/your_user_here/${KISMET_USER}/'
+
+post-install:
+ ${INSTALL_DATA_DIR} ${EGDIR}
+ ${INSTALL_DATA} ${WRKSRC}/conf/ap_manuf ${EGDIR}/
+ ${INSTALL_DATA} ${WRKSRC}/conf/client_manuf ${EGDIR}/
+ ${INSTALL_DATA} ${WRKSRC}/conf/kismet.conf \
+ ${EGDIR}/kismet.conf.default
+ ${INSTALL_DATA} ${WRKSRC}/conf/kismet_drone.conf \
+ ${EGDIR}/kismet_drone.conf.default
+ ${INSTALL_DATA} ${WRKSRC}/conf/kismet_ui.conf \
+ ${EGDIR}/kismet_ui.conf.default
+
+.include "options.mk"
+
+.include "../../devel/glib/buildlink3.mk"
+.include "../../devel/ncurses/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/net/kismet/PLIST b/net/kismet/PLIST
new file mode 100644
index 00000000000..c9d267445fd
--- /dev/null
+++ b/net/kismet/PLIST
@@ -0,0 +1,22 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2006/08/03 15:09:49 salo Exp $
+bin/kismet
+bin/kismet_client
+bin/kismet_drone
+bin/kismet_server
+man/man1/kismet.1
+man/man1/kismet_drone.1
+man/man5/kismet.conf.5
+man/man5/kismet_drone.conf.5
+man/man5/kismet_ui.conf.5
+share/examples/kismet/ap_manuf
+share/examples/kismet/client_manuf
+share/examples/kismet/kismet.conf.default
+share/examples/kismet/kismet_drone.conf.default
+share/examples/kismet/kismet_ui.conf.default
+share/kismet/wav/alert.wav
+share/kismet/wav/junk_traffic.wav
+share/kismet/wav/new_network.wav
+share/kismet/wav/traffic.wav
+@dirrm share/kismet/wav
+@dirrm share/kismet
+@dirrm share/examples/kismet
diff --git a/net/kismet/PLIST.gps b/net/kismet/PLIST.gps
new file mode 100644
index 00000000000..67f54ba6f34
--- /dev/null
+++ b/net/kismet/PLIST.gps
@@ -0,0 +1,4 @@
+@comment $NetBSD: PLIST.gps,v 1.1.1.1 2006/08/03 15:09:49 salo Exp $
+bin/gpsmap
+bin/gpsmap-helper-earthamaps
+man/man1/gpsmap.1
diff --git a/net/kismet/distinfo b/net/kismet/distinfo
new file mode 100644
index 00000000000..eb8eb2c2f15
--- /dev/null
+++ b/net/kismet/distinfo
@@ -0,0 +1,10 @@
+$NetBSD: distinfo,v 1.1.1.1 2006/08/03 15:09:49 salo Exp $
+
+SHA1 (kismet-2006-04-R1.tar.gz) = e48ce08e96328bfdac98152df6b5759c27ed9169
+RMD160 (kismet-2006-04-R1.tar.gz) = b709256198820d5ac650ce40dea637716427a8b7
+Size (kismet-2006-04-R1.tar.gz) = 1005068 bytes
+SHA1 (patch-aa) = 4023dc19876daab6f7eeffe215f05e371eea0a36
+SHA1 (patch-ab) = a77adf2212909b18f7afb65cdfb19539ee3b2f0b
+SHA1 (patch-ac) = 1195cdb9ccc09ffd0bd4e987724da2859a6ae6ba
+SHA1 (patch-ad) = 6442e2f571cb266560eaa8dc5e6500ff1b9db4fb
+SHA1 (patch-ae) = d99c33d5db327c33024f316133c1da8c602ab508
diff --git a/net/kismet/options.mk b/net/kismet/options.mk
new file mode 100644
index 00000000000..23a1496cf8c
--- /dev/null
+++ b/net/kismet/options.mk
@@ -0,0 +1,17 @@
+# $NetBSD: options.mk,v 1.1.1.1 2006/08/03 15:09:49 salo Exp $
+#
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.kismet
+PKG_SUPPORTED_OPTIONS= gps
+PKG_SUGGESTED_OPTIONS= gps
+
+.include "../../mk/bsd.options.mk"
+
+.if !empty(PKG_OPTIONS:Mgps)
+PLIST_SRC+= PLIST.gps
+DEPENDS+= wget>=1.9.1:../../net/wget
+.include "../../devel/gmp/buildlink3.mk"
+.include "../../graphics/ImageMagick/buildlink3.mk"
+.include "../../textproc/expat/buildlink3.mk"
+.include "../../mk/x11.buildlink3.mk"
+.endif
diff --git a/net/kismet/patches/patch-aa b/net/kismet/patches/patch-aa
new file mode 100644
index 00000000000..4ffc5444c2f
--- /dev/null
+++ b/net/kismet/patches/patch-aa
@@ -0,0 +1,12 @@
+$NetBSD: patch-aa,v 1.1.1.1 2006/08/03 15:09:49 salo Exp $
+
+--- configure.orig 2006-01-04 16:53:37.000000000 +0100
++++ configure 2006-08-03 16:18:04.000000000 +0200
+@@ -7084,6 +7084,7 @@
+ /* end confdefs.h. */
+
+ #include <stdio.h>
++ #include <sys/param.h>
+ #include <sys/socket.h>
+ #include <net/if.h>
+ #include <net/if_media.h>
diff --git a/net/kismet/patches/patch-ab b/net/kismet/patches/patch-ab
new file mode 100644
index 00000000000..2a0dbea4b49
--- /dev/null
+++ b/net/kismet/patches/patch-ab
@@ -0,0 +1,34 @@
+$NetBSD: patch-ab,v 1.1.1.1 2006/08/03 15:09:49 salo Exp $
+
+--- libpcap-0.9.1-kis/pcap-int.h.orig 2005-08-16 01:22:47.000000000 +0000
++++ libpcap-0.9.1-kis/pcap-int.h
+@@ -52,6 +52,14 @@ extern "C" {
+ #endif
+
+ /*
++ * Ultrix, DEC OSF/1^H^H^H^H^H^H^H^H^HDigital UNIX^H^H^H^H^H^H^H^H^H^H^H^H
++ * Tru64 UNIX, and NetBSD pad to make everything line up on a nice boundary.
++ */
++#if defined(ultrix) || defined(__osf__) || defined(__NetBSD__)
++#define PCAP_FDDIPAD 3
++#endif
++
++/*
+ * Savefile
+ */
+ typedef enum {
+@@ -239,14 +247,6 @@ int pcap_offline_read(pcap_t *, int, pca
+ int pcap_read(pcap_t *, int cnt, pcap_handler, u_char *);
+
+
+-/*
+- * Ultrix, DEC OSF/1^H^H^H^H^H^H^H^H^HDigital UNIX^H^H^H^H^H^H^H^H^H^H^H^H
+- * Tru64 UNIX, and NetBSD pad to make everything line up on a nice boundary.
+- */
+-#if defined(ultrix) || defined(__osf__) || defined(__NetBSD__)
+-#define PCAP_FDDIPAD 3
+-#endif
+-
+ #ifndef HAVE_STRLCPY
+ #define strlcpy(x, y, z) \
+ (strncpy((x), (y), (z)), \
diff --git a/net/kismet/patches/patch-ac b/net/kismet/patches/patch-ac
new file mode 100644
index 00000000000..18e2cc3b354
--- /dev/null
+++ b/net/kismet/patches/patch-ac
@@ -0,0 +1,14 @@
+$NetBSD: patch-ac,v 1.1.1.1 2006/08/03 15:09:49 salo Exp $
+
+--- pcapsource.cc.orig 2005-08-16 01:22:51.000000000 +0000
++++ pcapsource.cc
+@@ -44,7 +44,9 @@ typedef unsigned long u64;
+ #include <net/if_media.h>
+ #include <netinet/in.h>
+ #include <netinet/if_ether.h>
++#if defined(SYS_OPENBSD)
+ #include <dev/ic/if_wi_ieee.h>
++#endif
+
+ #ifdef HAVE_RADIOTAP
+ #include <net80211/ieee80211.h>
diff --git a/net/kismet/patches/patch-ad b/net/kismet/patches/patch-ad
new file mode 100644
index 00000000000..3a9414c65cb
--- /dev/null
+++ b/net/kismet/patches/patch-ad
@@ -0,0 +1,13 @@
+$NetBSD: patch-ad,v 1.1.1.1 2006/08/03 15:09:49 salo Exp $
+
+--- libpcap-0.9.1-kis/pcap-bpf.c.orig 2005-08-16 01:22:47.000000000 +0000
++++ libpcap-0.9.1-kis/pcap-bpf.c
+@@ -729,7 +729,7 @@ pcap_open_live(const char *device, int s
+ #endif
+ #ifdef PCAP_FDDIPAD
+ if (v == DLT_FDDI)
+- p->fddipad = PCAP_FDDIPAD:
++ p->fddipad = PCAP_FDDIPAD;
+ else
+ p->fddipad = 0;
+ #endif
diff --git a/net/kismet/patches/patch-ae b/net/kismet/patches/patch-ae
new file mode 100644
index 00000000000..3bf761521dd
--- /dev/null
+++ b/net/kismet/patches/patch-ae
@@ -0,0 +1,119 @@
+$NetBSD: patch-ae,v 1.1.1.1 2006/08/03 15:09:49 salo Exp $
+
+--- Makefile.in.orig 2005-08-16 01:22:51.000000000 +0000
++++ Makefile.in
+@@ -130,58 +130,40 @@ checkuiconfig:
+ fi
+
+ binuserinstall:
+- install -o $(INSTUSR) -g $(INSTGRP) -s -m 755 $(PS) $(BIN)/$(PS);
+- install -o $(INSTUSR) -g $(INSTGRP) -s -m 755 $(DRONE) $(BIN)/$(DRONE);
++ $(BSD_INSTALL_PROGRAM) $(PS) $(BIN)/$(PS);
++ $(BSD_INSTALL_PROGRAM) $(DRONE) $(BIN)/$(DRONE);
+
+ binsuidinstall:
+ install -o $(INSTUSR) -g $(INSTGRP) -s -m 4755 $(PS) $(BIN)/$(PS);
+ install -o $(INSTUSR) -g $(INSTGRP) -s -m 4755 $(DRONE) $(BIN)/$(DRONE);
+
+ commoninstall:
+- mkdir -p $(ETC)
+- mkdir -p $(BIN)
+-
+- install -o $(INSTUSR) -g $(INSTGRP) -m 755 scripts/kismet $(BIN)/kismet
+- install -o $(INSTUSR) -g $(INSTGRP) -s -m 755 $(NC) $(BIN)/$(NC)
+- # install -o $(INSTUSR) -g $(INSTGRP) -s -m 755 $(HOPPER) $(BIN)/$(HOPPER)
+- @if test "$(ZAURUS)" = "yes"; then \
+- install -o $(INSTUSR) -g $(INSTGRP) -s -m 755 $(BUZZER) $(BIN)/buzzme; \
+- echo install -o $(INSTUSR) -g $(INSTGRP) -s -m 755 $(BUZZER) $(BIN)/buzzme; \
+- fi
+-#install -o $(INSTUSR) -g $(INSTGRP) -m 755 scripts/kismet_monitor $(BIN)/kismet_monitor
+-#install -o $(INSTUSR) -g $(INSTGRP) -m 755 scripts/kismet_unmonitor $(BIN)/kismet_unmonitor
+- mkdir -p $(MAN)/man1
+- install -o $(INSTUSR) -g $(MANGRP) -m 644 man/kismet.1 $(MAN)/man1/kismet.1
+- # install -o $(INSTUSR) -g $(MANGRP) -m 644 man/kismet_monitor.1 $(MAN)/man1/kismet_monitor.1
+- # install -o $(INSTUSR) -g $(MANGRP) -m 644 man/kismet_hopper.1 $(MAN)/man1/kismet_hopper.1
+- install -o $(INSTUSR) -g $(MANGRP) -m 644 man/kismet_drone.1 $(MAN)/man1/kismet_drone.1
+- mkdir -p $(MAN)/man5
+- install -o $(INSTUSR) -g $(MANGRP) -m 644 man/kismet.conf.5 $(MAN)/man5/kismet.conf.5
+- install -o $(INSTUSR) -g $(MANGRP) -m 644 man/kismet_ui.conf.5 $(MAN)/man5/kismet_ui.conf.5
+- install -o $(INSTUSR) -g $(MANGRP) -m 644 man/kismet_drone.conf.5 $(MAN)/man5/kismet_drone.conf.5
++ $(BSD_INSTALL_PROGRAM_DIR) $(BIN)
++ $(BSD_INSTALL_SCRIPT) scripts/kismet $(BIN)/kismet
++ $(BSD_INSTALL_PROGRAM) $(NC) $(BIN)/$(NC)
++# @if test "$(ZAURUS)" = "yes"; then \
++# $(BSD_INSTALL_PROGRAM) $(BUZZER) $(BIN)/buzzme; \
++# fi
++ $(BSD_INSTALL_MAN_DIR) $(MAN)/man1
++ $(BSD_INSTALL_MAN) man/kismet.1 $(MAN)/man1/kismet.1
++ $(BSD_INSTALL_MAN) man/kismet_drone.1 $(MAN)/man1/kismet_drone.1
++ $(BSD_INSTALL_MAN_DIR) $(MAN)/man5
++ $(BSD_INSTALL_MAN) man/kismet.conf.5 $(MAN)/man5/kismet.conf.5
++ $(BSD_INSTALL_MAN) man/kismet_ui.conf.5 $(MAN)/man5/kismet_ui.conf.5
++ $(BSD_INSTALL_MAN) man/kismet_drone.conf.5 $(MAN)/man5/kismet_drone.conf.5
+
+ @if test "$(GPSLBUILD)" = "$(GPSL)"; then \
+- install -o $(INSTUSR) -g $(INSTGRP) -s -m 755 $(GPSL) $(BIN)/$(GPSL); \
+- echo install -o $(INSTUSR) -g $(INSTGRP) -s -m 755 $(GPSL) $(BIN)/$(GPSL); \
+- install -o $(INSTUSR) -g $(INSTGRP) -m 755 scripts/gpsmap-helper-earthamaps $(BIN)/gpsmap-helper-earthamaps; \
+- echo install -o $(INSTUSR) -g $(INSTGRP) -m 755 scripts/gpsmap-helper-earthamaps $(BIN)/gpsmap-helper-earthamaps; \
+- install -o $(INSTUSR) -g $(MANGRP) -m 644 man/gpsmap.1 $(MAN)/man1/gpsmap.1; \
+- echo install -o $(INSTUSR) -g $(MANGRP) -m 644 man/gpsmap.1 $(MAN)/man1/gpsmap.1; \
+- fi
+-
+- mkdir -p $(WAV)
+- install -o $(INSTUSR) -g $(INSTGRP) -m 644 wav/new_network.wav $(WAV)/new_network.wav
+- install -o $(INSTUSR) -g $(INSTGRP) -m 644 wav/traffic.wav $(WAV)/traffic.wav
+- install -o $(INSTUSR) -g $(INSTGRP) -m 644 wav/junk_traffic.wav $(WAV)/junk_traffic.wav
+- install -o $(INSTUSR) -g $(INSTGRP) -m 644 wav/alert.wav $(WAV)/alert.wav
+- install -o $(INSTUSR) -g $(INSTGRP) -m 644 conf/ap_manuf $(ETC)/ap_manuf;
+- install -o $(INSTUSR) -g $(INSTGRP) -m 644 conf/client_manuf $(ETC)/client_manuf;
+-
+- @if test -f $(BIN)/kismet_curses; then \
+- echo "Removing old kismet_curses binary. The panels frontend is now kismet_client."; \
+- rm $(BIN)/kismet_curses; \
++ $(BSD_INSTALL_PROGRAM) $(GPSL) $(BIN)/$(GPSL); \
++ $(BSD_INSTALL_SCRIPT) scripts/gpsmap-helper-earthamaps $(BIN)/gpsmap-helper-earthamaps; \
++ $(BSD_INSTALL_MAN) man/gpsmap.1 $(MAN)/man1/gpsmap.1; \
+ fi
+
++ $(BSD_INSTALL_DATA_DIR) $(WAV)
++ $(BSD_INSTALL_DATA) wav/new_network.wav $(WAV)/new_network.wav
++ $(BSD_INSTALL_DATA) wav/traffic.wav $(WAV)/traffic.wav
++ $(BSD_INSTALL_DATA) wav/junk_traffic.wav $(WAV)/junk_traffic.wav
++ $(BSD_INSTALL_DATA) wav/alert.wav $(WAV)/alert.wav
++
+ suidinstall: $(PS) $(DRONE) $(NC) $(GPSLBUILD) $(ZAURUSBUILD)
+ $(MAKE) -e commoninstall
+ $(MAKE) -e binsuidinstall
+@@ -215,30 +197,7 @@ suidinstall: $(PS) $(DRONE) $(NC) $(GPSL
+ @echo "YOUR WIRELESS NETWORK CONNECTION. IF YOU HAVE ANY UNTRUSTED USERS ON YOUR "
+ @echo "SYSTEM DO NOT INSTALL KISMET AS SUID ROOT."
+
+-install: $(PS) $(DRONE) $(NC) $(GPSLBUILD) $(ZAURUSBUILD)
+- $(MAKE) -e commoninstall
+- $(MAKE) -e binuserinstall
+- @if test -f $(ETC)/kismet.conf; then \
+- $(MAKE) -e checkconfig; \
+- else \
+- install -o $(INSTUSR) -g $(INSTGRP) -m 644 conf/kismet.conf $(ETC)/kismet.conf; \
+- echo install -o $(INSTUSR) -g $(INSTGRP) -m 644 conf/kismet.conf $(ETC)/kismet.conf; \
+- echo "Installed config into $(ETC)/kismet.conf."; \
+- fi
+- @if test -f $(ETC)/kismet_drone.conf; then \
+- $(MAKE) -e checkdroneconfig; \
+- else \
+- install -o $(INSTUSR) -g $(INSTGRP) -m 644 conf/kismet_drone.conf $(ETC)/kismet_drone.conf; \
+- echo install -o $(INSTUSR) -g $(INSTGRP) -m 644 conf/kismet_drone.conf $(ETC)/kismet_drone.conf; \
+- echo "Installed drone config into $(ETC)/kismet_drone.conf."; \
+- fi
+- @if test -f $(ETC)/kismet_ui.conf; then \
+- $(MAKE) -e checkuiconfig; \
+- else \
+- install -o $(INSTUSR) -g $(INSTGRP) -m 644 conf/kismet_ui.conf $(ETC)/kismet_ui.conf; \
+- echo install -o $(INSTUSR) -g $(INSTGRP) -m 644 conf/kismet_ui.conf $(ETC)/kismet_ui.conf; \
+- echo "Installed UI config into $(ETC)/kismet_ui.conf."; \
+- fi
++install: $(PS) $(DRONE) $(NC) $(GPSLBUILD) $(ZAURUSBUILD) commoninstall binuserinstall
+ @echo "Installed kismet into $(BIN)/."
+ @echo "If you have not done so already, read the README file and the FAQ file. Additional"
+ @echo "documentation is in the docs/ directory. You MUST edit $(ETC)/kismet.conf "