diff --git a/net/wifidog/Makefile b/net/wifidog/Makefile new file mode 100644 index 000000000..ade7606c3 --- /dev/null +++ b/net/wifidog/Makefile @@ -0,0 +1,103 @@ +# +# Copyright (C) 2006,2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=wifidog +PKG_VERSION:=1.2.1 +PKG_RELEASE=1 + + +PKG_LICENSE:=GPL-2.0 +# Note: Packaging is maintained upstream at +# https://github.com/wifidog/packages +PKG_MAINTAINER:=Michael Haas +PKG_LICENSE_FILES:=COPYING + + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=git://github.com/wifidog/wifidog-gateway.git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_VERSION:=1.2.1 +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz + +PKG_FIXUP:=autoreconf +# do not run make install +PKG_INSTALL:=0 +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk + +define Package/wifidog/Default + SUBMENU:=Captive Portals + SECTION:=net + CATEGORY:=Network + DEPENDS:=+iptables-mod-extra +iptables-mod-ipopt +iptables-mod-nat-extra +libpthread + TITLE:=A wireless captive portal solution + URL:=http://www.wifidog.org +endef + +define Package/wifidog +$(call Package/wifidog/Default) + VARIANT:=normal +endef + +define Package/wifidog-tls +$(call Package/wifidog/Default) + DEPENDS+= +libcyassl + VARIANT:=tls +endef + + +define Package/wifidog/description + The Wifidog project is a complete and embeddable captive + portal solution for wireless community groups or individuals + who wish to open a free Hotspot while still preventing abuse + of their Internet connection. +endef + +define Package/wifidog-tls/description +$(call Package/wifidog/description) + +This variant can talk TLS to the auth server. +endef + +define Package/wifidog/conffiles +/etc/wifidog.conf +endef + +Package/wifidog-tls/conffiles = $(Package/wifidog/conffiles) + + +define Package/wifidog/configure + $(call Build/Configure/Default) +endef + +ifeq ($(BUILD_VARIANT),tls) + +CONFIGURE_ARGS += \ + --enable-cyassl + +endif + +define Package/wifidog/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/wifidog $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/wdctl $(1)/usr/bin/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libhttpd.so* $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/etc + $(INSTALL_DATA) $(PKG_BUILD_DIR)/wifidog.conf $(1)/etc/ + $(INSTALL_DATA) $(PKG_BUILD_DIR)/wifidog-msg.html $(1)/etc/ + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/wifidog.init $(1)/etc/init.d/wifidog +endef + +Package/wifidog-tls/install = $(Package/wifidog/install) + +$(eval $(call BuildPackage,wifidog)) +$(eval $(call BuildPackage,wifidog-tls)) diff --git a/net/wifidog/files/wifidog.init b/net/wifidog/files/wifidog.init new file mode 100644 index 000000000..6ebf64fbc --- /dev/null +++ b/net/wifidog/files/wifidog.init @@ -0,0 +1,22 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2006 OpenWrt.org +START=65 + +USE_PROCD=1 + +EXTRA_COMMANDS="status" +EXTRA_HELP=" status Print the status of the service" + +start_service() { + procd_open_instance + # -s: log to syslog + # -f: run in foreground + procd_set_param command /usr/bin/wifidog -s -f + procd_set_param respawn # respawn automatically if something died + procd_set_param file /etc/wifidog.conf + procd_close_instance +} + +status() { + /usr/bin/wdctl status +}