Commit 88f918e2 authored by Thomas Lundquist's avatar Thomas Lundquist
Browse files

Adding Kismet, closing #1557

parent ea8c2b11
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -148,6 +148,7 @@ source "package/iperf/Config.in"
source "package/iproute2/Config.in"
source "package/ipsec-tools/Config.in"
source "package/iptables/Config.in"
source "package/kismet/Config.in"
source "package/l2tp/Config.in"
source "package/libcgi/Config.in"
source "package/libcgicc/Config.in"
+15 −0
Original line number Diff line number Diff line
config BR2_PACKAGE_KISMET
	bool "kismet"
	select BR2_PACKAGE_NCURSES 
	select BR2_PACKAGE_LIBPCAP
	default n
	help
		Kismet - 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. 
+79 −0
Original line number Diff line number Diff line
#############################################################
#
# kismet
#
#############################################################
KISMET_VERSION:=2007-10-R1
KISMET_SOURCE:=kismet-$(KISMET_VERSION).tar.gz
KISMET_SITE:=http://www.kismetwireless.net/code/
KISMET_DIR:=$(BUILD_DIR)/kismet-$(KISMET_VERSION)
KISMET_CAT:=$(ZCAT)
KISMET_BINARY:=kismet
KISMET_TARGET_DIRECTORY=usr/bin/

$(DL_DIR)/$(KISMET_SOURCE):
	$(WGET) -P $(DL_DIR) $(KISMET_SITE)/$(KISMET_SOURCE)

kismet-source: $(DL_DIR)/$(KISMET_SOURCE)

$(KISMET_DIR)/.patched: $(DL_DIR)/$(KISMET_SOURCE)
	$(KISMET_CAT) $(DL_DIR)/$(KISMET_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
	toolchain/patch-kernel.sh $(KISMET_DIR) package/kismet/ kismet\*.patch
	touch $@

$(KISMET_DIR)/.configured: $(KISMET_DIR)/.patched
	(cd $(KISMET_DIR); rm -rf config.cache; \
		$(TARGET_CONFIGURE_OPTS) \
		$(TARGET_CONFIGURE_ARGS) \
		./configure \
		--target=$(GNU_TARGET_NAME) \
		--host=$(GNU_TARGET_NAME) \
		--build=$(GNU_HOST_NAME) \
		--prefix=/usr \
		--exec-prefix=/usr \
		--bindir=/usr/bin \
		--sbindir=/usr/sbin \
		--libdir=/lib \
		--libexecdir=/usr/lib \
		--sysconfdir=/etc \
		--datadir=/usr/share \
		--localstatedir=/var \
		--mandir=/usr/man \
		--infodir=/usr/info \
	)
	touch $@

$(KISMET_DIR)/$(KISMET_BINARY): $(KISMET_DIR)/.configured
	$(MAKE) CXX="$(TARGET_CXX)" CC="$(TARGET_CC)" \
		-C $(KISMET_DIR)

$(TARGET_DIR)/$(KISMET_TARGET_BINARY): $(KISMET_DIR)/$(KISMET_BINARY)
	install -m 755 $(KISMET_DIR)/kismet $(TARGET_DIR)/$(KISMET_TARGET_DIRECTORY)/kismet
	install -m 755 $(KISMET_DIR)/kismet_client $(TARGET_DIR)/$(KISMET_TARGET_DIRECTORY)/kismet_client
	install -m 755 $(KISMET_DIR)/kismet_drone $(TARGET_DIR)/$(KISMET_TARGET_DIRECTORY)/kismet_drone
	install -m 755 $(KISMET_DIR)/kismet_server $(TARGET_DIR)/$(KISMET_TARGET_DIRECTORY)/kismet_server
	install -m 755 $(KISMET_DIR)/conf/kismet.conf $(TARGET_DIR)/etc/kismet.conf

kismet: uclibc ncurses libpcap $(TARGET_DIR)/$(KISMET_TARGET_BINARY)

kismet-clean:
	rm -f $(TARGET_DIR)/$(KISMET_TARGET_DIRECTORY)/kismet
	rm -f $(TARGET_DIR)/$(KISMET_TARGET_DIRECTORY)/kismet_client
	rm -f $(TARGET_DIR)/$(KISMET_TARGET_DIRECTORY)/kismet_drone
	rm -f $(TARGET_DIR)/$(KISMET_TARGET_DIRECTORY)/kismet_server
	rm -f $(KISMET_DIR)/conf/kismet.conf $(TARGET_DIR)/etc/kismet.conf


	-$(MAKE) -C $(KISMET_DIR) clean

kismet-dirclean:
	rm -rf $(KISMET_DIR)

#############################################################
#
# Toplevel Makefile options
#
#############################################################
ifeq ($(strip $(BR2_PACKAGE_KISMET)),y)
TARGETS+=kismet
endif