diff --git a/network/kismet-openwrt/kismet-capture-linux-blueooth/Makefile b/network/kismet-openwrt/kismet-capture-linux-blueooth/Makefile new file mode 100644 index 0000000..7b09705 --- /dev/null +++ b/network/kismet-openwrt/kismet-capture-linux-blueooth/Makefile @@ -0,0 +1,55 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=kismet-capture-linux-bluetooth + +include ../kismet.mk + +include $(INCLUDE_DIR)/package.mk + +define Package/kismet-capture-linux-bluetooth + SECTION:=net + CATEGORY:=Network + TITLE:=Kismet HCI Bluetooth Support + URL:=https://www.kismetwireless.net + DEPENDS:=+libpthread +libpcap +libnl +libcap +protobuf-lite +libprotobuf-c + SUBMENU:=kismet +endef + +define Package/kismet-capture-linux-blueooth/description + Helper binary to capture Bluetooth device info from a HCI adapter. + Enables local and remote Bluetooth device discovery with Kismet +endef + +define Build/Configure + $(call Build/Configure/Default,--with-linux-headers=$(LINUX_DIR)) +endef + +CONFIGURE_ARGS += \ + --enable-capture-tools-only \ + --sysconfdir=/etc/kismet \ + --bindir=/usr/bin \ + --disable-python-tools \ + --with-protoc=$(STAGING_DIR_HOSTPKG)/bin/protoc \ + --enable-protobuflite \ + --disable-element-typesafety \ + --disable-libusb \ + --disable-debuglibs + +# Override libs to force lpthread because we don't detect it properly on openwrt +CONFIGURE_VARS += \ + CXXFLAGS="$$$$CXXFLAGS" \ + LIBS="-lm -lpthread" + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + LD="$(TARGET_CXX)" \ + capture_linux_bluetooth/kismet_cap_linux_bluetooth +endef + +define Package/kismet-capture-linux-bluetooth/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/capture_linux_bluetooth/kismet_cap_linux_bluetooth $(1)/usr/bin/ +endef + + +$(eval $(call BuildPackage,kismet-capture-linux-bluetooth)) diff --git a/network/kismet-openwrt/kismet-capture-linux-wifi/Makefile b/network/kismet-openwrt/kismet-capture-linux-wifi/Makefile new file mode 100644 index 0000000..3a0477e --- /dev/null +++ b/network/kismet-openwrt/kismet-capture-linux-wifi/Makefile @@ -0,0 +1,55 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=kismet-capture-linux-wifi + +include ../kismet.mk + +include $(INCLUDE_DIR)/package.mk + +define Package/kismet-capture-linux-wifi + SECTION:=net + CATEGORY:=Network + TITLE:=Kismet Wi-Fi Capture Support + URL:=https://www.kismetwireless.net + DEPENDS:=+libpthread +libpcap +libnl +libcap +protobuf-lite +libprotobuf-c + SUBMENU:=kismet +endef + +define Package/kismet-capture-linux-wifi/description + Helper binary to capture Wi-Fi packets from a monitor mode adapter. + Enables local and remote Wi-Fi capture with Kismet +endef + +define Build/Configure + $(call Build/Configure/Default,--with-linux-headers=$(LINUX_DIR)) +endef + +CONFIGURE_ARGS += \ + --enable-capture-tools-only \ + --sysconfdir=/etc/kismet \ + --bindir=/usr/bin \ + --disable-python-tools \ + --with-protoc=$(STAGING_DIR_HOSTPKG)/bin/protoc \ + --enable-protobuflite \ + --disable-element-typesafety \ + --disable-libusb \ + --disable-debuglibs + +# Override libs to force lpthread because we don't detect it properly on openwrt +CONFIGURE_VARS += \ + CXXFLAGS="$$$$CXXFLAGS" \ + LIBS="-lm -lpthread" + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + LD="$(TARGET_CXX)" \ + capture_linux_wifi/kismet_cap_linux_wifi +endef + +define Package/kismet-capture-linux-wifi/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/capture_linux_wifi/kismet_cap_linux_wifi $(1)/usr/bin/ +endef + + +$(eval $(call BuildPackage,kismet-capture-linux-wifi)) diff --git a/network/kismet-openwrt/kismet-capture-nrf-51822/Makefile b/network/kismet-openwrt/kismet-capture-nrf-51822/Makefile new file mode 100644 index 0000000..66f41f0 --- /dev/null +++ b/network/kismet-openwrt/kismet-capture-nrf-51822/Makefile @@ -0,0 +1,54 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=kismet-capture-nrf-51822 + +include ../kismet.mk + +include $(INCLUDE_DIR)/package.mk + +define Package/kismet-capture-nrf-51822 + SECTION:=net + CATEGORY:=Network + TITLE:=Kismet NRF51822 BTLE + URL:=https://www.kismetwireless.net + DEPENDS:=+libpthread +libpcap +libnl +libcap +protobuf-lite +libprotobuf-c +libusb-1.0 + SUBMENU:=kismet +endef + +define Package/kismet-capture-nrf-51822/description + Helper binary to capture BTLE from a NRF51822 serial adapter. + Enables local and remote BTLE packet capture with Kismet +endef + +define Build/Configure + $(call Build/Configure/Default,--with-linux-headers=$(LINUX_DIR)) +endef + +CONFIGURE_ARGS += \ + --enable-capture-tools-only \ + --sysconfdir=/etc/kismet \ + --bindir=/usr/bin \ + --disable-python-tools \ + --with-protoc=$(STAGING_DIR_HOSTPKG)/bin/protoc \ + --enable-protobuflite \ + --disable-element-typesafety \ + --disable-debuglibs + +# Override libs to force lpthread because we don't detect it properly on openwrt +CONFIGURE_VARS += \ + CXXFLAGS="$$$$CXXFLAGS" \ + LIBS="-lm -lpthread" + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + LD="$(TARGET_CXX)" \ + capture_nrf_51822/kismet_cap_nrf_51822 +endef + +define Package/kismet-capture-nrf-51822/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/capture_nrf_51822/kismet_cap_nrf_51822 $(1)/usr/bin/ +endef + + +$(eval $(call BuildPackage,kismet-capture-nrf-51822)) diff --git a/network/kismet-openwrt/kismet-capture-nxp-kw41z/Makefile b/network/kismet-openwrt/kismet-capture-nxp-kw41z/Makefile new file mode 100644 index 0000000..19034d9 --- /dev/null +++ b/network/kismet-openwrt/kismet-capture-nxp-kw41z/Makefile @@ -0,0 +1,54 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=kismet-capture-nxp-kw41z + +include ../kismet.mk + +include $(INCLUDE_DIR)/package.mk + +define Package/kismet-capture-nxp-kw41z + SECTION:=net + CATEGORY:=Network + TITLE:=Kismet NXPKW41Z Capture Support + URL:=https://www.kismetwireless.net + DEPENDS:=+libpthread +libpcap +libnl +libcap +protobuf-lite +libprotobuf-c +libusb-1.0 + SUBMENU:=kismet +endef + +define Package/kismet-capture-nxp-kw41z/description + Helper binary to capture BTLE from a NXPKW41Z adapter. + Enables local and remote 802.15.4 packet capture with Kismet +endef + +define Build/Configure + $(call Build/Configure/Default,--with-linux-headers=$(LINUX_DIR)) +endef + +CONFIGURE_ARGS += \ + --enable-capture-tools-only \ + --sysconfdir=/etc/kismet \ + --bindir=/usr/bin \ + --disable-python-tools \ + --with-protoc=$(STAGING_DIR_HOSTPKG)/bin/protoc \ + --enable-protobuflite \ + --disable-element-typesafety \ + --disable-debuglibs + +# Override libs to force lpthread because we don't detect it properly on openwrt +CONFIGURE_VARS += \ + CXXFLAGS="$$$$CXXFLAGS" \ + LIBS="-lm -lpthread" + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + LD="$(TARGET_CXX)" \ + capture_nxp_kw41z/kismet_cap_nxp_kw41z +endef + +define Package/kismet-capture-nxp-kw41z/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/capture_nxp_kw41z/kismet_cap_nxp_kw41z $(1)/usr/bin/ +endef + + +$(eval $(call BuildPackage,kismet-capture-nxp-kw41z)) diff --git a/network/kismet-openwrt/kismet-capture-sdr-rtl433/Makefile b/network/kismet-openwrt/kismet-capture-sdr-rtl433/Makefile new file mode 100644 index 0000000..106c097 --- /dev/null +++ b/network/kismet-openwrt/kismet-capture-sdr-rtl433/Makefile @@ -0,0 +1,54 @@ +## CURRENTLY NOT USABLE + +include $(TOPDIR)/rules.mk + +PKG_NAME:=kismet-capture-sdr-rtl433 + +include ../kismet.mk + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/python/python-package.mk +include $(TOPDIR)/feeds/packages/lang/python/python3-package.mk + +KISMET_MODULE:=KismetCaptureRtl433 + +define Package/kismet-capture-sdr-rtl433 + SECTION:=net + CATEGORY:=Network + TITLE:=Kismet RTL433 SDR Capture Support + URL:=https://www.kismetwireless.net + DEPENDS:= \ + +python3 \ + +python3-setuptools \ + +python3-cffi \ + +python3-numpy \ + +python3-protobuf \ + +librtlsdr \ + +rtl_433 + SUBMENU:=kismet + VARIANT:=python3 +endef + +define Package/kismet-capture-sdr-rtl433/description + Helper binary to capture sensor and thermometer data using + rtl433 and a rtlsdr. Enables local and remote rtl433 capture with Kismet +endef + +define Build/Prepare + (cd $(PKG_BUILD_DIR) && \ + tar -xzf $(DL_DIR)/$(PKG_SOURCE) $(PKG_NAME)-$(PKG_VERSION)/capture_sdr_rtl433/ --strip-components 2 && \ + tar -xzf $(DL_DIR)/$(PKG_SOURCE) $(PKG_NAME)-$(PKG_VERSION)/protobuf_definitions/ --strip-components 1 && \ + $(STAGING_DIR_HOSTPKG)/bin/protoc -I protobuf_definitions/ --python_out=$(KISMET_MODULE)/kismetexternal protobuf_definitions/kismet.proto && \ + $(STAGING_DIR_HOSTPKG)/bin/protoc -I protobuf_definitions/ --python_out=$(KISMET_MODULE)/kismetexternal protobuf_definitions/http.proto && \ + $(STAGING_DIR_HOSTPKG)/bin/protoc -I protobuf_definitions/ --python_out=$(KISMET_MODULE)/kismetexternal protobuf_definitions/eventbus.proto && \ + $(STAGING_DIR_HOSTPKG)/bin/protoc -I protobuf_definitions/ --python_out=$(KISMET_MODULE)/kismetexternal protobuf_definitions/datasource.proto && \ + sed -i -E 's/^import kismet_/from . import kismet_/' $(KISMET_MODULE)/kismetexternal/kismet_pb2.py && \ + sed -i -E 's/^import kismet_/from . import kismet_/' $(KISMET_MODULE)/kismetexternal/http_pb2.py && \ + sed -i -E 's/^import kismet_/from . import kismet_/' $(KISMET_MODULE)/kismetexternal/eventbus_pb2.py && \ + sed -i -E 's/^import kismet_/from . import kismet_/' $(KISMET_MODULE)/kismetexternal/datasource_pb2.py \ + ) +endef + +$(eval $(call Py3Package,kismet-capture-sdr-rtl433)) +$(eval $(call BuildPackage,kismet-capture-sdr-rtl433)) +#$(eval $(call BuildPackage,kismet-capture-sdr-rtl433-src)) diff --git a/network/kismet-openwrt/kismet-capture-sdr-rtladsb/Makefile b/network/kismet-openwrt/kismet-capture-sdr-rtladsb/Makefile new file mode 100644 index 0000000..9740786 --- /dev/null +++ b/network/kismet-openwrt/kismet-capture-sdr-rtladsb/Makefile @@ -0,0 +1,53 @@ +## CURRENTLY NOT USABLE + +include $(TOPDIR)/rules.mk + +PKG_NAME:=kismet-capture-sdr-rtladsb + +include ../kismet.mk + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/python/python-package.mk +include $(TOPDIR)/feeds/packages/lang/python/python3-package.mk + +KISMET_MODULE:=KismetCaptureRtladsb + +define Package/kismet-capture-sdr-rtladsb + SECTION:=net + CATEGORY:=Network + TITLE:=Kismet ADSB SDR Capture Support + URL:=https://www.kismetwireless.net + DEPENDS:= \ + +python3 \ + +python3-setuptools \ + +python3-cffi \ + +python3-numpy \ + +python3-protobuf \ + +librtlsdr + SUBMENU:=kismet + VARIANT:=python3 +endef + +define Package/kismet-capture-sdr-rtladsb/description + Helper binary to capture ADSB packets from a rtlsdr. + Enables local and remote ADSB capture with Kismet +endef + +define Build/Prepare + (cd $(PKG_BUILD_DIR) && \ + tar -xzf $(DL_DIR)/$(PKG_SOURCE) $(PKG_NAME)-$(PKG_VERSION)/capture_sdr_rtladsb/ --strip-components 2 && \ + tar -xzf $(DL_DIR)/$(PKG_SOURCE) $(PKG_NAME)-$(PKG_VERSION)/protobuf_definitions/ --strip-components 1 && \ + $(STAGING_DIR_HOSTPKG)/bin/protoc -I protobuf_definitions/ --python_out=$(KISMET_MODULE)/kismetexternal protobuf_definitions/kismet.proto && \ + $(STAGING_DIR_HOSTPKG)/bin/protoc -I protobuf_definitions/ --python_out=$(KISMET_MODULE)/kismetexternal protobuf_definitions/http.proto && \ + $(STAGING_DIR_HOSTPKG)/bin/protoc -I protobuf_definitions/ --python_out=$(KISMET_MODULE)/kismetexternal protobuf_definitions/eventbus.proto && \ + $(STAGING_DIR_HOSTPKG)/bin/protoc -I protobuf_definitions/ --python_out=$(KISMET_MODULE)/kismetexternal protobuf_definitions/datasource.proto && \ + sed -i -E 's/^import kismet_/from . import kismet_/' $(KISMET_MODULE)/kismetexternal/kismet_pb2.py && \ + sed -i -E 's/^import kismet_/from . import kismet_/' $(KISMET_MODULE)/kismetexternal/http_pb2.py && \ + sed -i -E 's/^import kismet_/from . import kismet_/' $(KISMET_MODULE)/kismetexternal/eventbus_pb2.py && \ + sed -i -E 's/^import kismet_/from . import kismet_/' $(KISMET_MODULE)/kismetexternal/datasource_pb2.py \ + ) +endef + +$(eval $(call Py3Package,kismet-capture-sdr-rtladsb)) +$(eval $(call BuildPackage,kismet-capture-sdr-rtladsb)) +#$(eval $(call BuildPackage,kismet-capture-sdr-rtladsb-src)) diff --git a/network/kismet-openwrt/kismet-capture-sdr-rtlamr/Makefile b/network/kismet-openwrt/kismet-capture-sdr-rtlamr/Makefile new file mode 100644 index 0000000..82f691d --- /dev/null +++ b/network/kismet-openwrt/kismet-capture-sdr-rtlamr/Makefile @@ -0,0 +1,53 @@ +## CURRENTLY NOT USABLE + +include $(TOPDIR)/rules.mk + +PKG_NAME:=kismet-capture-sdr-rtlamr + +include ../kismet.mk + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/python/python-package.mk +include $(TOPDIR)/feeds/packages/lang/python/python3-package.mk + +KISMET_MODULE:=KismetCaptureRtlamr + +define Package/kismet-capture-sdr-rtlamr + SECTION:=net + CATEGORY:=Network + TITLE:=Kismet AMR SDR Capture Support + URL:=https://www.kismetwireless.net + DEPENDS:= \ + +python3 \ + +python3-setuptools \ + +python3-cffi \ + +python3-numpy \ + +python3-protobuf \ + +librtlsdr + SUBMENU:=kismet + VARIANT:=python3 +endef + +define Package/kismet-capture-sdr-rtlamr/description + Helper binary to capture AMR power and water meter packets + from a rtlsdr. Enables local and remote AMR capture with Kismet +endef + +define Build/Prepare + (cd $(PKG_BUILD_DIR) && \ + tar -xzf $(DL_DIR)/$(PKG_SOURCE) $(PKG_NAME)-$(PKG_VERSION)/capture_sdr_rtlamr/ --strip-components 2 && \ + tar -xzf $(DL_DIR)/$(PKG_SOURCE) $(PKG_NAME)-$(PKG_VERSION)/protobuf_definitions/ --strip-components 1 && \ + $(STAGING_DIR_HOSTPKG)/bin/protoc -I protobuf_definitions/ --python_out=$(KISMET_MODULE)/kismetexternal protobuf_definitions/kismet.proto && \ + $(STAGING_DIR_HOSTPKG)/bin/protoc -I protobuf_definitions/ --python_out=$(KISMET_MODULE)/kismetexternal protobuf_definitions/http.proto && \ + $(STAGING_DIR_HOSTPKG)/bin/protoc -I protobuf_definitions/ --python_out=$(KISMET_MODULE)/kismetexternal protobuf_definitions/eventbus.proto && \ + $(STAGING_DIR_HOSTPKG)/bin/protoc -I protobuf_definitions/ --python_out=$(KISMET_MODULE)/kismetexternal protobuf_definitions/datasource.proto && \ + sed -i -E 's/^import kismet_/from . import kismet_/' $(KISMET_MODULE)/kismetexternal/kismet_pb2.py && \ + sed -i -E 's/^import kismet_/from . import kismet_/' $(KISMET_MODULE)/kismetexternal/http_pb2.py && \ + sed -i -E 's/^import kismet_/from . import kismet_/' $(KISMET_MODULE)/kismetexternal/eventbus_pb2.py && \ + sed -i -E 's/^import kismet_/from . import kismet_/' $(KISMET_MODULE)/kismetexternal/datasource_pb2.py \ + ) +endef + +$(eval $(call Py3Package,kismet-capture-sdr-rtlamr)) +$(eval $(call BuildPackage,kismet-capture-sdr-rtlamr)) +#$(eval $(call BuildPackage,kismet-capture-sdr-rtlamr-src)) diff --git a/network/kismet-openwrt/kismet-capture-ti-cc2531/Makefile b/network/kismet-openwrt/kismet-capture-ti-cc2531/Makefile new file mode 100644 index 0000000..60bc676 --- /dev/null +++ b/network/kismet-openwrt/kismet-capture-ti-cc2531/Makefile @@ -0,0 +1,54 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=kismet-capture-ti-cc2531 + +include ../kismet.mk + +include $(INCLUDE_DIR)/package.mk + +define Package/kismet-capture-ti-cc2531 + SECTION:=net + CATEGORY:=Network + TITLE:=Kismet TI CC2531 802.15.4 Capture Support + URL:=https://www.kismetwireless.net + DEPENDS:=+libpthread +libpcap +libnl +libcap +protobuf-lite +libprotobuf-c +libusb-1.0 + SUBMENU:=kismet +endef + +define Package/kismet-capture-ti-cc2531/description + Helper binary to capture 802.15.4 packets from a TI CC2531 adapter. + Enables local and remote 802.15.4 capture with Kismet +endef + +define Build/Configure + $(call Build/Configure/Default,--with-linux-headers=$(LINUX_DIR)) +endef + +CONFIGURE_ARGS += \ + --enable-capture-tools-only \ + --sysconfdir=/etc/kismet \ + --bindir=/usr/bin \ + --disable-python-tools \ + --with-protoc=$(STAGING_DIR_HOSTPKG)/bin/protoc \ + --enable-protobuflite \ + --disable-element-typesafety \ + --disable-debuglibs + +# Override libs to force lpthread because we don't detect it properly on openwrt +CONFIGURE_VARS += \ + CXXFLAGS="$$$$CXXFLAGS" \ + LIBS="-lm -lpthread" + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + LD="$(TARGET_CXX)" \ + capture_ti_cc_2531/kismet_cap_ti_cc_2531 +endef + +define Package/kismet-capture-ti-cc2531/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/capture_ti_cc_2531/kismet_cap_ti_cc_2531 $(1)/usr/bin/ +endef + + +$(eval $(call BuildPackage,kismet-capture-ti-cc2531)) diff --git a/network/kismet-openwrt/kismet-capture-ti-cc2540/Makefile b/network/kismet-openwrt/kismet-capture-ti-cc2540/Makefile new file mode 100644 index 0000000..9486180 --- /dev/null +++ b/network/kismet-openwrt/kismet-capture-ti-cc2540/Makefile @@ -0,0 +1,54 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=kismet-capture-ti-cc2540 + +include ../kismet.mk + +include $(INCLUDE_DIR)/package.mk + +define Package/kismet-capture-ti-cc2540 + SECTION:=net + CATEGORY:=Network + TITLE:=Kismet TI CC2540 BTLE Capture Support + URL:=https://www.kismetwireless.net + DEPENDS:=+libpthread +libpcap +libnl +libcap +protobuf-lite +libprotobuf-c +libusb-1.0 + SUBMENU:=kismet +endef + +define Package/kismet-capture-ti-cc2540/description + Helper binary to capture BTLE packets from a TI CC2540 adapter. + Enables local and remote BTLE capture with Kismet +endef + +define Build/Configure + $(call Build/Configure/Default,--with-linux-headers=$(LINUX_DIR)) +endef + +CONFIGURE_ARGS += \ + --enable-capture-tools-only \ + --sysconfdir=/etc/kismet \ + --bindir=/usr/bin \ + --disable-python-tools \ + --with-protoc=$(STAGING_DIR_HOSTPKG)/bin/protoc \ + --enable-protobuflite \ + --disable-element-typesafety \ + --disable-debuglibs + +# Override libs to force lpthread because we don't detect it properly on openwrt +CONFIGURE_VARS += \ + CXXFLAGS="$$$$CXXFLAGS" \ + LIBS="-lm -lpthread" + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + LD="$(TARGET_CXX)" \ + capture_ti_cc_2540/kismet_cap_ti_cc_2540 +endef + +define Package/kismet-capture-ti-cc2540/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/capture_ti_cc_2540/kismet_cap_ti_cc_2540 $(1)/usr/bin/ +endef + + +$(eval $(call BuildPackage,kismet-capture-ti-cc2540)) diff --git a/network/kismet-openwrt/kismet-icao/Makefile b/network/kismet-openwrt/kismet-icao/Makefile new file mode 100644 index 0000000..28122d4 --- /dev/null +++ b/network/kismet-openwrt/kismet-icao/Makefile @@ -0,0 +1,38 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=kismet-icao-database + +include ../kismet.mk + +include $(INCLUDE_DIR)/package.mk + +define Package/kismet-icao-database + SECTION:=net + CATEGORY:=Network + TITLE:=Kismet ICAO airplane database + URL:=https://www.kismetwireless.net + DEPENDS:=kismet + SUBMENU:=kismet +endef + +define Package/kismet-icao-database/description + Kismet ICAO airplane database + Compressed database of ICAO airplane registrations. Without this + database, Kismet will not be able to resolve flight info for + airlines detected via ADSB. +endef + +define Build/Configure + echo "No configuration needed" +endef + +define Build/Compile + echo "No compilation needed" +endef + +define Package/kismet-manuf-database/install + $(INSTALL_DIR) $(1)/etc/kismet/ + $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet_adsb_icao.txt.gz $(1)/etc/kismet +endef + +$(eval $(call BuildPackage,kismet-icao-database)) diff --git a/network/kismet-openwrt/kismet-manuf/Makefile b/network/kismet-openwrt/kismet-manuf/Makefile new file mode 100644 index 0000000..36b7b4e --- /dev/null +++ b/network/kismet-openwrt/kismet-manuf/Makefile @@ -0,0 +1,40 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=kismet-manuf-database + +include ../kismet.mk + +include $(INCLUDE_DIR)/package.mk + +define Package/kismet-manuf-database + SECTION:=net + CATEGORY:=Network + TITLE:=Kismet IEEE manufacturers + URL:=https://www.kismetwireless.net + DEPENDS:=kismet + SUBMENU:=kismet +endef + +define Package/kismet-manuf-database/description + Kismet IEEE manufacturer database + Compressed database of manufacturer names for Kismet; without this + database, Kismet will not be able to resolve manufacturers for + Wi-Fi devices. +endef + +define Build/Configure + echo "No configuration needed" +endef + +define Build/Compile + echo "No compilation needed" +endef + +define Package/kismet-manuf-database/install + $(INSTALL_DIR) $(1)/etc/kismet/ + $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet_manuf.txt.gz $(1)/etc/kismet + $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet_bluetooth_ids.txt.gz $(1)/etc/kismet + $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet_bluetooth_manuf.txt.gz $(1)/etc/kismet +endef + +$(eval $(call BuildPackage,kismet-manuf-database)) diff --git a/network/kismet-openwrt/kismet-tools/Makefile b/network/kismet-openwrt/kismet-tools/Makefile new file mode 100644 index 0000000..8957316 --- /dev/null +++ b/network/kismet-openwrt/kismet-tools/Makefile @@ -0,0 +1,70 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=kismet-tools + +include ../kismet.mk + +include $(INCLUDE_DIR)/package.mk + +define Package/kismet-tools + SECTION:=net + CATEGORY:=Network + TITLE:=Kismet server and log tools + URL:=https://www.kismetwireless.net + DEPENDS:=+libpthread +libpcap +libpcre +libmicrohttpd +libnl +libcap +libstdcpp +libncurses +libsqlite3 +zlib +protobuf-lite +libprotobuf-c kismet + SUBMENU:=kismet +endef + +define Package/kismet-tools/description + Kismet server and log manipulation tools for monitoring for announcing + servers and converting kismetdb logs to wigle, csv, json, pcap, etc. +endef + +define Build/Configure + $(call Build/Configure/Default,--with-linux-headers=$(LINUX_DIR)) +endef + +CONFIGURE_ARGS += \ + --sysconfdir=/etc/kismet \ + --bindir=/usr/bin \ + --disable-python-tools \ + --with-protoc=$(STAGING_DIR_HOSTPKG)/bin/protoc \ + --enable-protobuflite \ + --disable-element-typesafety \ + --disable-libusb \ + --disable-debuglibs + +# Override libs to force lpthread because we don't detect it properly on openwrt +CONFIGURE_VARS += \ + CXXFLAGS="$$$$CXXFLAGS" \ + LIBS="-lm -lpthread" + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + LD="$(TARGET_CXX)" \ + tools/kismet_discovery \ + log_tools/kismetdb_clean \ + log_tools/kismetdb_dump_devices \ + log_tools/kismetdb_statistics \ + log_tools/kismetdb_strip_packets \ + log_tools/kismetdb_to_gpx \ + log_tools/kismetdb_to_kml \ + log_tools/kismetdb_to_pcap \ + log_tools/kismetdb_to_wiglecsv +endef + +define Package/kismet-tools/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/kismet_discovery $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/log_tools/kismetdb_clean $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/log_tools/kismetdb_dump_devices $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/log_tools/kismetdb_statistics $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/log_tools/kismetdb_strip_packets $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/log_tools/kismetdb_to_gpx $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/log_tools/kismetdb_to_kml $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/log_tools/kismetdb_to_pcap $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/log_tools/kismetdb_to_wiglecsv $(1)/usr/bin/ +endef + + +$(eval $(call BuildPackage,kismet-tools)) diff --git a/network/kismet-openwrt/kismet.mk b/network/kismet-openwrt/kismet.mk new file mode 100644 index 0000000..64106e2 --- /dev/null +++ b/network/kismet-openwrt/kismet.mk @@ -0,0 +1,14 @@ +PKG_VERSION:=20xx-XX-XX +PKG_RELEASE:=1 + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://github.com/kismetwireless/kismet.git +PKG_SOURCE_VERSION:=f2b914ee3089ba5b4d18408cee1a73fe0072e78d +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) + +PKG_USE_MIPS16:=0 + +HOST_BUILD_DEPENDS:=protobuf/host + diff --git a/network/kismet-openwrt/kismet/Makefile b/network/kismet-openwrt/kismet/Makefile new file mode 100644 index 0000000..1650722 --- /dev/null +++ b/network/kismet-openwrt/kismet/Makefile @@ -0,0 +1,69 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=kismet + +PKG_BUILD_PARALLEL:=1 +HOST_BUILD_PARALLEL:=1 + +include ../kismet.mk + +include $(INCLUDE_DIR)/package.mk + +define Package/kismet + SECTION:=net + CATEGORY:=Network + TITLE:=Kismet 2020 + URL:=https://www.kismetwireless.net/ + DEPENDS:=+libpthread +libpcap +libpcre +libmicrohttpd +libstdcpp +libncurses +libsqlite3 +zlib +protobuf-lite +libprotobuf-c + SUBMENU:=kismet +endef + +define Package/kismet/description + Modern Kismet wireless capture and IDS, with the web-ui based Kismet +endef + +define Build/Configure + $(call Build/Configure/Default,--with-linux-headers=$(LINUX_DIR)) +endef + +CONFIGURE_ARGS += \ + --sysconfdir=/etc/kismet \ + --bindir=/usr/bin \ + --disable-python-tools \ + --with-protoc=$(STAGING_DIR_HOSTPKG)/bin/protoc \ + --enable-protobuflite \ + --disable-element-typesafety \ + --disable-libusb \ + --disable-debuglibs \ + --disable-libcap + +# Override libs to force lpthread because we don't detect it properly on openwrt +CONFIGURE_VARS += \ + CXXFLAGS="$$$$CXXFLAGS" \ + LIBS="-lm -lpthread" + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + LD="$(TARGET_CXX)" \ + kismet +endef + +define Package/kismet/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/kismet $(1)/usr/bin/ + + $(INSTALL_DIR) $(1)/etc/kismet/ + $(INSTALL_CONF) ./files/kismet_package.conf $(1)/etc/kismet/ + $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet.conf $(1)/etc/kismet + $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet_80211.conf $(1)/etc/kismet + $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet_alerts.conf $(1)/etc/kismet + $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet_filter.conf $(1)/etc/kismet + $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet_httpd.conf $(1)/etc/kismet + $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet_logging.conf $(1)/etc/kismet + $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet_memory.conf $(1)/etc/kismet + $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet_uav.conf $(1)/etc/kismet + cp -Rv $(PKG_BUILD_DIR)/http_data $(1)/etc/kismet/ +endef + +$(eval $(call BuildPackage,kismet)) + diff --git a/network/kismet-openwrt/kismet/files/kismet_package.conf b/network/kismet-openwrt/kismet/files/kismet_package.conf new file mode 100644 index 0000000..ede1119 --- /dev/null +++ b/network/kismet-openwrt/kismet/files/kismet_package.conf @@ -0,0 +1,38 @@ +httpd_home=/etc/kismet/http_data + +httpd_allow_cors=true + +log_prefix=/tmp + + +# Don't autoscan python types because they can take a very long time +# to load on some platforms +mask_datasource_type=rtladsb +mask_datasource_type=rtlamr +mask_datasource_type=rtl433 + + + +ouifile=/etc/kismet/kismet_manuf.txt.gz +icaofile=/etc/kismet/kismet_adsb_icao.txt.gz + + +# Save memory on small devices + +keep_location_cloud_history=false + +keep_datasource_signal_history=false + +track_device_rrds=false + +dot11_keep_ietags=false +dot11_keep_eapol=false + +tcp_buffer_kb=64 +ipc_buffer_kb=64 + +packet_dedup_size=16 + +packet_backlog_warning=512 +packet_backlog_limit=1024 + diff --git a/network/kismet-openwrt/python3-cython/Makefile b/network/kismet-openwrt/python3-cython/Makefile new file mode 100644 index 0000000..2bf4f8a --- /dev/null +++ b/network/kismet-openwrt/python3-cython/Makefile @@ -0,0 +1,37 @@ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=python3-cython +PKG_VERSION:=0.29.21 +PKG_RELEASE:=1 + +PKG_SOURCE:=Cython-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/c/cython/ +PKG_HASH:=e57acb89bd55943c8d8bf813763d20b9099cc7165c0f16b707631a7654be9cad + +PKG_BUILD_DIR:=$(BUILD_DIR)/Cython-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/python/python-package.mk +include $(TOPDIR)/feeds/packages/lang/python/python3-package.mk + +define Package/python3-cython + SECTION:=lang + CATEGORY:=Languages + SUBMENU:=Python + TITLE:=Cython + URL:=https://pypi.org/project/Cython/ + DEPENDS:= \ + +python3-light \ + +python3-setuptools + VARIANT:=python3 +endef + +define Package/python3-cython/description + C language extension library for Python +endef + +$(eval $(call Py3Package,python3-cython)) +$(eval $(call BuildPackage,python3-cython)) +$(eval $(call BuildPackage,python3-cython-src)) + diff --git a/network/kismet-openwrt/python3-numpy/Makefile b/network/kismet-openwrt/python3-numpy/Makefile new file mode 100644 index 0000000..18639fe --- /dev/null +++ b/network/kismet-openwrt/python3-numpy/Makefile @@ -0,0 +1,40 @@ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=python3-numpy +PKG_VERSION:=1.19.1 +PKG_RELEASE:=1 + +PKG_SOURCE:=numpy-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/numpy/numpy/releases/download/v${PKG_VERSION}/ +PKG_HASH:=1396e6c3d20cbfc119195303b0272e749610b7042cc498be4134f013e9a3215c + +PKG_BUILD_DIR:=$(BUILD_DIR)/numpy-$(PKG_VERSION) + +HOST_PYTHON3_PACKAGE_BUILD_DEPENDS:=cython + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/python/python-package.mk +include $(TOPDIR)/feeds/packages/lang/python/python3-package.mk + +define Package/python3-numpy + SECTION:=lang + CATEGORY:=Languages + SUBMENU:=Python + TITLE:=Numpy + URL:=https://github.com/numpy/numpy + DEPENDS:= \ + +PACKAGE_python3-numpy:python3-light \ + +PACKAGE_python3-numpy:python3-setuptools \ + +PACKAGE_python3-numpy:python3-cython + VARIANT:=python3 +endef + +define Package/python3-numpy/description + Numpy math library for Python3 +endef + +$(eval $(call Py3Package,python3-numpy)) +$(eval $(call BuildPackage,python3-numpy)) +$(eval $(call BuildPackage,python3-numpy-src)) + diff --git a/network/kismet-openwrt/python3-numpy/patches/100-npy_math_h.patch b/network/kismet-openwrt/python3-numpy/patches/100-npy_math_h.patch new file mode 100644 index 0000000..0009b66 --- /dev/null +++ b/network/kismet-openwrt/python3-numpy/patches/100-npy_math_h.patch @@ -0,0 +1,24 @@ +--- a/numpy/core/include/numpy/npy_math.h ++++ b/numpy/core/include/numpy/npy_math.h +@@ -22,6 +22,21 @@ + #define NPY_INPLACE + #endif + ++#ifndef FE_UNDERFLOW ++#define FE_UNDERFLOW 0 ++#endif ++ ++#ifndef FE_OVERFLOW ++#define FE_OVERFLOW 0 ++#endif ++ ++#ifndef FE_DIVBYZERO ++#define FE_DIVBYZERO 0 ++#endif ++ ++#ifndef FE_INVALID ++#define FE_INVALID 0 ++#endif + + /* + * NAN and INFINITY like macros (same behavior as glibc for NAN, same as C99 diff --git a/network/kismet-openwrt/python3-protobuf/Makefile b/network/kismet-openwrt/python3-protobuf/Makefile new file mode 100644 index 0000000..5bf982e --- /dev/null +++ b/network/kismet-openwrt/python3-protobuf/Makefile @@ -0,0 +1,37 @@ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=python3-protobuf +PKG_VERSION:=3.13.0 +PKG_RELEASE:=1 + +PKG_SOURCE:=protobuf-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/protobuf/ +PKG_HASH:=6a82e0c8bb2bf58f606040cc5814e07715b2094caeba281e2e7d0b0e2e397db5 + +PKG_BUILD_DIR:=$(BUILD_DIR)/protobuf-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/python/python-package.mk +include $(TOPDIR)/feeds/packages/lang/python/python3-package.mk + +define Package/python3-protobuf + SECTION:=lang + CATEGORY:=Languages + SUBMENU:=Python + TITLE:=Protobuf implementation in Python + URL:=https://developers.google.com/protocol-buffers/ + DEPENDS:= \ + +python3-light \ + +python3-setuptools \ + +python3-six + VARIANT:=python3 +endef + +define Package/python3-protobuf/description + The official implementation of Google Protobufs in Python3 +endef + +$(eval $(call Py3Package,python3-protobuf)) +$(eval $(call BuildPackage,python3-protobuf)) +$(eval $(call BuildPackage,python3-protobuf-src))