[packages] nodogsplash: new OpenWrt package for new nodogsplash build system

This commit is contained in:
Moritz Warning 2013-05-11 00:37:02 +02:00 committed by Saverio Proto
parent 38be3fb073
commit ed1710fad3
3 changed files with 30 additions and 80 deletions

View File

@ -1,5 +1,5 @@
#
# Copyright (C) 2007-2012 OpenWrt.org
# Copyright (C) 2013 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@ -8,72 +8,51 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=nodogsplash
PKG_VERSION:=0.9_beta9.9.6
PKG_RELEASE:=3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://kokoro.ucsd.edu/nodogsplash/ \
http://kokoro.ucsd.edu/nodogsplash/old/
PKG_MD5SUM:=3ba0d862b4d63ecf97f16176a486faed
PKG_FIXUP:=autoreconf
PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1
PKG_VERSION:=0.9_beta9.9.8
PKG_RELEASE:=1
include $(INCLUDE_DIR)/package.mk
define Package/nodogsplash
SUBMENU:=Captive Portals
SECTION:=net
CATEGORY:=Network
DEPENDS:=+libpthread +iptables-mod-ipopt
TITLE:=Open public network gateway daemon
URL:=http://kokoro.ucsd.edu/nodogsplash/
SUBMENU:=Captive Portals
SECTION:=net
CATEGORY:=Network
DEPENDS:=+libpthread +iptables-mod-ipopt
TITLE:=Open public network gateway daemon
URL:=https://github.com/mwarning/nodogsplash
endef
define Package/nodogsplash/description
Nodogsplash offers a simple way to open a free hotspot providing restricted access to an
internet connection. It is intended for use on wireless access points running OpenWRT
(but may also work on other Linux-based devices).
Nodogsplash offers a simple way to open a free hotspot providing
restricted access to an internet connection.
endef
define Build/Configure
$(call Build/Configure/Default,\
--enable-static \
--enable-shared \
)
define Build/Prepare
mkdir -p $(PKG_BUILD_DIR)
git clone https://github.com/mwarning/nodogsplash.git $(PKG_BUILD_DIR)
endef
define Build/Compile
$(call Build/Compile/Default, \
mkinstalldirs="$(INSTALL_DIR)")
endef
define Build/Install
mkdir -p $(PKG_INSTALL_DIR)/usr/{share{,/doc/$(PKG_NAME)-$(PKG_VERSION)},lib,include{,/nodogsplash},bin,sbin}/
$(call Build/Install/Default, \
mkinstalldirs="$(INSTALL_DIR)" \
install)
endef
#for sources inside the package
#define Build/Prepare
# mkdir -p $(PKG_BUILD_DIR)
# $(CP) ./src/* $(PKG_BUILD_DIR)/
#endef
define Package/nodogsplash/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/
$(INSTALL_DIR) $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/
$(INSTALL_DIR) $(1)/etc/$(PKG_NAME)
$(INSTALL_CONF) $(PKG_BUILD_DIR)/$(PKG_NAME).conf $(1)/etc/$(PKG_NAME)/
$(SED) 's,br0,br-lan,' $(1)/etc/$(PKG_NAME)/$(PKG_NAME).conf
$(CP) $(PKG_BUILD_DIR)/htdocs $(1)/etc/$(PKG_NAME)/
$(INSTALL_BIN) $(PKG_BUILD_DIR)/nodogsplash $(1)/usr/bin/
$(INSTALL_BIN) $(PKG_BUILD_DIR)/ndsctl $(1)/usr/bin/
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/$(PKG_NAME).init $(1)/etc/init.d/$(PKG_NAME)
$(SED) 's,\(do_module_tests "imq"\),#\1,' $(1)/etc/init.d/$(PKG_NAME)
$(SED) 's,\(do_module_tests "ipt_IMQ"\),#\1,' $(1)/etc/init.d/$(PKG_NAME)
$(SED) 's,\(do_module_tests "sch_htb"\),#\1,' $(1)/etc/init.d/$(PKG_NAME)
$(INSTALL_BIN) files/nodogsplash.init $(1)/etc/init.d/$(PKG_NAME)
$(INSTALL_DIR) $(1)/etc/$(PKG_NAME)/htdocs/images
$(CP) $(PKG_BUILD_DIR)/resources/nodogsplash.conf $(1)/etc/$(PKG_NAME)/
$(CP) $(PKG_BUILD_DIR)/resources/splash.html $(1)/etc/$(PKG_NAME)/htdocs/
$(CP) $(PKG_BUILD_DIR)/resources/infoskel.html $(1)/etc/$(PKG_NAME)/htdocs/
$(CP) $(PKG_BUILD_DIR)/resources/splash.jpg $(1)/etc/$(PKG_NAME)/htdocs/images/
endef
define Package/nodogsplash/conffiles
/etc/nodogsplash/nodogsplash.conf
endef
$(eval $(call BuildPackage,nodogsplash))

View File

@ -1,18 +0,0 @@
--- a/src/http.c
+++ b/src/http.c
@@ -455,10 +455,15 @@ http_nodogsplash_decode_authtarget(reque
var = httpdGetVariableByName(r,"tok");
if(var && var->value) {
token = var->value;
+ } else {
+ token = "";
}
+
var = httpdGetVariableByName(r,"redir");
if(var && var->value) {
redir = var->value;
+ } else {
+ redir = "";
}
authtarget = http_nodogsplash_make_authtarget(token,redir);

View File

@ -1,11 +0,0 @@
--- a/src/fw_iptables.c
+++ b/src/fw_iptables.c
@@ -449,7 +449,7 @@ iptables_fw_init(void) {
/* CHAIN_TO_ROUTER, related and established packets ACCEPT */
rc |= iptables_do_command("-t filter -A " CHAIN_TO_ROUTER " -m state --state RELATED,ESTABLISHED -j ACCEPT");
/* CHAIN_TO_ROUTER, bogus SYN packets DROP */
- rc |= iptables_do_command("-t filter -A " CHAIN_TO_ROUTER " -p tcp --tcp-flags SYN SYN --tcp-option \\! 2 -j DROP");
+ rc |= iptables_do_command("-t filter -A " CHAIN_TO_ROUTER " -p tcp --tcp-flags SYN SYN \\! --tcp-option 2 -j DROP");
/* CHAIN_TO_ROUTER, packets to HTTP listening on gw_port on router ACCEPT */
rc |= iptables_do_command("-t filter -A " CHAIN_TO_ROUTER " -p tcp --dport %d -j ACCEPT", gw_port);