summaryrefslogtreecommitdiff
path: root/net/kismet
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
commitf24a3b70e937a95339862eabc01d1a0568f782ff (patch)
treec57e68b6013c39aa05f7f6f0ebea875a088d9732 /net/kismet
parent081d6c9bcb50be3b9e4d3b7d1e068bbc2902398a (diff)
downloadpkgsrc-f24a3b70e937a95339862eabc01d1a0568f782ff.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.
Diffstat (limited to 'net/kismet')
-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 "