summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package/Config.in1
-rw-r--r--package/Makefile1
-rw-r--r--package/kismet/Config.in31
-rw-r--r--package/kismet/Makefile134
-rw-r--r--package/kismet/kismet-client.control11
-rw-r--r--package/kismet/kismet-drone.control11
-rw-r--r--package/kismet/kismet-server.control11
-rw-r--r--package/kismet/patches/uclibc++-fixes.patch30
8 files changed, 230 insertions, 0 deletions
diff --git a/package/Config.in b/package/Config.in
index cc666ed691..93f500f667 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -51,6 +51,7 @@ source "package/asterisk/Config.in"
source "package/snort/Config.in"
source "package/olsrd/Config.in"
source "package/usbutils/Config.in"
+source "package/kismet/Config.in"
comment "Libraries"
source "package/libgcc/Config.in"
diff --git a/package/Makefile b/package/Makefile
index d428808974..5250a8bf99 100644
--- a/package/Makefile
+++ b/package/Makefile
@@ -24,6 +24,7 @@ package-$(BR2_PACKAGE_GMP) += gmp
package-$(BR2_PACKAGE_HASERL) += haserl
package-$(BR2_PACKAGE_IPTABLES) += iptables
package-$(BR2_PACKAGE_IPROUTE2) += iproute2
+package-$(BR2_PACKAGE_KISMET) += kismet
package-$(BR2_PACKAGE_LCD4LINUX) += lcd4linux
package-$(BR2_PACKAGE_LIBELF) += libelf
package-$(BR2_PACKAGE_LIBGCC) += libgcc
diff --git a/package/kismet/Config.in b/package/kismet/Config.in
new file mode 100644
index 0000000000..5b19406016
--- /dev/null
+++ b/package/kismet/Config.in
@@ -0,0 +1,31 @@
+config BR2_PACKAGE_KISMET
+ tristate
+ depends BR2_PACKAGE_SERVER || BR2_PACKAGE_CLIENT || BR2_PACKAGE_DRONE
+ select BR2_PACKAGE_LIBGCC
+ select BR2_PACKAGE_LIBPCAP
+ select BR2_PACKAGE_UCLIBCXX
+ default n
+
+config BR2_PACKAGE_KISMET_SERVER
+ tristate "Kismet server"
+ select BR2_PACKAGE_KISMET
+ default m if CONFIG_DEVEL
+ help
+ The Kismet server
+
+config BR2_PACKAGE_KISMET_CLIENT
+ tristate "Kismet client"
+ select BR2_PACKAGE_KISMET
+ default m if CONFIG_DEVEL
+ help
+ The Kismet client
+
+config BR2_PACKAGE_KISMET_DRONE
+ tristate "Kismet drone"
+ select BR2_PACKAGE_KISMET
+ default m if CONFIG_DEVEL
+ help
+ The Kismet drone
+
+
+
diff --git a/package/kismet/Makefile b/package/kismet/Makefile
new file mode 100644
index 0000000000..20b7fed200
--- /dev/null
+++ b/package/kismet/Makefile
@@ -0,0 +1,134 @@
+# $Id$
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=kismet
+PKG_VERSION:=2005-04-R1
+PKG_RELEASE:=1
+PKG_MD5SUM:=19b4f192eb11a418ed3f6bf65c1226af
+
+PKG_SOURCE_URL:=http://www.kismetwireless.net/code
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_CAT:=zcat
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+
+IPKG_SERVER:=$(PACKAGE_DIR)/$(PKG_NAME)-server_$(PKG_VERSION)-$(PKG_RELEASE)_$(ARCH).ipk
+IDIR_SERVER:=$(PKG_BUILD_DIR)/ipkg/$(PKG_NAME)-server
+INFO_SERVER:=$(IPKG_STATE_DIR)/info/$(PKG_NAME)-server.list
+
+IPKG_DRONE:=$(PACKAGE_DIR)/$(PKG_NAME)-drone_$(PKG_VERSION)-$(PKG_RELEASE)_$(ARCH).ipk
+IDIR_DRONE:=$(PKG_BUILD_DIR)/ipkg/$(PKG_NAME)-drone
+INFO_DRONE:=$(IPKG_STATE_DIR)/info/$(PKG_NAME)-drone.list
+
+IPKG_CLIENT:=$(PACKAGE_DIR)/$(PKG_NAME)-client_$(PKG_VERSION)-$(PKG_RELEASE)_$(ARCH).ipk
+IDIR_CLIENT:=$(PKG_BUILD_DIR)/ipkg/$(PKG_NAME)-client
+INFO_CLIENT:=$(IPKG_STATE_DIR)/info/$(PKG_NAME)-client.list
+
+COMPILE_TARGETS:=
+INSTALL_TARGETS:=
+ifneq ($(BR2_PACKAGE_KISMET_SERVER),)
+COMPILE_TARGETS+=$(IPKG_SERVER)
+endif
+ifeq ($(BR2_PACLAGE_KISMET_SERVER),y)
+INSTALL_TARGETS+=$(INFO_SERVER)
+endif
+ifneq ($(BR2_PACKAGE_KISMET_CLIENT),)
+COMPILE_TARGETS+=$(IPKG_CLIENT)
+endif
+ifeq ($(BR2_PACLAGE_KISMET_CLIENT),y)
+INSTALL_TARGETS+=$(INFO_CLIENT)
+endif
+ifneq ($(BR2_PACKAGE_KISMET_DRONE),)
+COMPILE_TARGETS+=$(IPKG_DRONE)
+endif
+ifeq ($(BR2_PACLAGE_KISMET_DRONE),y)
+INSTALL_TARGETS+=$(INFO_DRONE)
+endif
+
+
+
+$(DL_DIR)/$(PKG_SOURCE):
+ $(SCRIPT_DIR)/download.pl $(DL_DIR) $(PKG_SOURCE) $(PKG_MD5SUM) $(PKG_SOURCE_URL)
+
+$(PKG_BUILD_DIR)/.prepared: $(DL_DIR)/$(PKG_SOURCE)
+ $(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+ $(PATCH) $(PKG_BUILD_DIR) ./patches
+ touch $(PKG_BUILD_DIR)/.prepared
+
+$(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.prepared
+ (cd $(PKG_BUILD_DIR); rm -rf config.cache; \
+ $(TARGET_CONFIGURE_OPTS) \
+ CXXFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include -fno-builtin -nostdinc++ -nodefaultlibs" \
+ CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(LINUX_DIR)/include" \
+ LDFLAGS="-L$(STAGING_DIR)/usr/lib" \
+ ./configure \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
+ --build=$(GNU_HOST_NAME) \
+ --program-prefix="" \
+ --program-suffix="" \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --datadir=/usr/share \
+ --includedir=/usr/include \
+ --infodir=/usr/share/info \
+ --libdir=/usr/lib \
+ --libexecdir=/usr/lib \
+ --localstatedir=/var \
+ --mandir=/usr/share/man \
+ --sbindir=/usr/sbin \
+ --sysconfdir=/etc \
+ --enable-syspcap=yes \
+ $(DISABLE_NLS) \
+ $(DISABLE_LARGEFILE) \
+ );
+ touch $(PKG_BUILD_DIR)/.configured
+
+$(PKG_BUILD_DIR)/kismet_server $(PKG_BUILD_DIR)/kismet_drone $(PKG_BUILD_DIR)/kismet_client: $(PKG_BUILD_DIR)/.configured
+ $(MAKE) -C $(PKG_BUILD_DIR) \
+ CC=$(TARGET_CC) \
+ LIBS="-L$(STAGING_DIR)/lib -fno-builtin -nostdinc++ -nodefaultlibs -luClibc++ -lc -lm" \
+ CPPFLAGS="-I$(STAGING_DIR)/include -I$(STAGING_DIR)/usr/include -I$(LINUX_DIR)/include"
+
+$(IPKG_SERVER): $(PKG_BUILD_DIR)/kismet_server
+ $(SCRIPT_DIR)/make-ipkg-dir.sh $(IDIR_SERVER) kismet-server.control $(PKG_VERSION)-$(PKG_RELEASE) $(ARCH)
+ mkdir -p $(IDIR_SERVER)/usr/sbin
+ cp $< $(IDIR_SERVER)/usr/sbin/
+ $(STRIP) $(IDIR_SERVER)/usr/sbin/*
+ mkdir -p $(PACKAGE_DIR)
+ $(IPKG_BUILD) $(IDIR_SERVER) $(PACKAGE_DIR)
+
+$(INFO_SERVER): $(IPKG_SERVER)
+ $(IPKG) install $(IPKG_SERVER)
+
+$(IPKG_DRONE): $(PKG_BUILD_DIR)/kismet_drone
+ $(SCRIPT_DIR)/make-ipkg-dir.sh $(IDIR_DRONE) kismet-drone.control $(PKG_VERSION)-$(PKG_RELEASE) $(ARCH)
+ mkdir -p $(IDIR_DRONE)/usr/sbin
+ cp $< $(IDIR_DRONE)/usr/sbin/
+ $(STRIP) $(IDIR_DRONE)/usr/sbin/*
+ mkdir -p $(PACKAGE_DIR)
+ $(IPKG_BUILD) $(IDIR_DRONE) $(PACKAGE_DIR)
+
+$(INFO_DRONE): $(IPKG_DRONE)
+ $(IPKG) install $(IPKG_DRONE)
+
+$(IPKG_CLIENT): $(PKG_BUILD_DIR)/kismet_client
+ $(SCRIPT_DIR)/make-ipkg-dir.sh $(IDIR_CLIENT) kismet-client.control $(PKG_VERSION)-$(PKG_RELEASE) $(ARCH)
+ mkdir -p $(IDIR_CLIENT)/usr/sbin
+ cp $< $(IDIR_CLIENT)/usr/sbin/
+ $(STRIP) $(IDIR_CLIENT)/usr/sbin/*
+ mkdir -p $(PACKAGE_DIR)
+ $(IPKG_BUILD) $(IDIR_CLIENT) $(PACKAGE_DIR)
+
+$(INFO_CLIENT): $(IPKG_CLIENT)
+ $(IPKG) install $(IPKG_CLIENT)
+
+source: $(DL_DIR)/$(PKG_SOURCE)
+prepare: $(PKG_BUILD_DIR)/.prepared
+compile: $(COMPILE_TARGETS)
+install: $(INSTALL_TARGETS)
+
+clean:
+ rm -rf $(PKG_BUILD_DIR) $(IPKG_KISMET)
diff --git a/package/kismet/kismet-client.control b/package/kismet/kismet-client.control
new file mode 100644
index 0000000000..c010d8c4b6
--- /dev/null
+++ b/package/kismet/kismet-client.control
@@ -0,0 +1,11 @@
+Package: kismet-client
+Priority: optional
+Section: net
+Maintainer: Felix Fietkau <nbd@vd-s.ath.cx>
+Source: buildroot internal
+Depends: uclibc++, ncurses, libgcc
+Description: The kismet client
+ 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.
diff --git a/package/kismet/kismet-drone.control b/package/kismet/kismet-drone.control
new file mode 100644
index 0000000000..3b0c6e08f3
--- /dev/null
+++ b/package/kismet/kismet-drone.control
@@ -0,0 +1,11 @@
+Package: kismet-drone
+Priority: optional
+Section: net
+Maintainer: Felix Fietkau <nbd@vd-s.ath.cx>
+Source: buildroot internal
+Depends: uclibc++, libgcc, libpcap
+Description: The kismet drone
+ 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.
diff --git a/package/kismet/kismet-server.control b/package/kismet/kismet-server.control
new file mode 100644
index 0000000000..baa010296a
--- /dev/null
+++ b/package/kismet/kismet-server.control
@@ -0,0 +1,11 @@
+Package: kismet-server
+Priority: optional
+Section: net
+Maintainer: Felix Fietkau <nbd@vd-s.ath.cx>
+Source: buildroot internal
+Depends: uclibc++, libgcc
+Description: The kismet server
+ 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.
diff --git a/package/kismet/patches/uclibc++-fixes.patch b/package/kismet/patches/uclibc++-fixes.patch
new file mode 100644
index 0000000000..995d5efed6
--- /dev/null
+++ b/package/kismet/patches/uclibc++-fixes.patch
@@ -0,0 +1,30 @@
+diff -urN kismet-2005-04-R1.old/configfile.cc kismet-2005-04-R1.dev/configfile.cc
+--- kismet-2005-04-R1.old/configfile.cc 2005-04-03 07:33:42.000000000 +0200
++++ kismet-2005-04-R1.dev/configfile.cc 2005-04-26 01:37:32.000000000 +0200
+@@ -24,6 +24,7 @@
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <errno.h>
++#include <time.h>
+ #include "configfile.h"
+ #include "util.h"
+
+diff -urN kismet-2005-04-R1.old/macaddr.h kismet-2005-04-R1.dev/macaddr.h
+--- kismet-2005-04-R1.old/macaddr.h 2005-04-03 07:33:42.000000000 +0200
++++ kismet-2005-04-R1.dev/macaddr.h 2005-04-26 01:42:38.000000000 +0200
+@@ -321,12 +321,12 @@
+ }
+
+ // equal
+- inline bool operator==(const iterator& op) const {
++ inline bool operator==(const iterator& op) {
+ return (singleton_itr == op.singleton_itr) && (vector_itr == op.vector_itr);
+ }
+
+ // not
+- inline bool operator!=(const iterator& op) const {
++ inline bool operator!=(const iterator& op) {
+ return (singleton_itr != op.singleton_itr) || (vector_itr != op.vector_itr);
+ }
+
+Binary files kismet-2005-04-R1.old/.macaddr.h.swp and kismet-2005-04-R1.dev/.macaddr.h.swp differ