diff --git a/net/wifidog/Makefile b/net/wifidog/Makefile index 15b975a0c..a9593a830 100644 --- a/net/wifidog/Makefile +++ b/net/wifidog/Makefile @@ -9,27 +9,20 @@ include $(TOPDIR)/rules.mk PKG_NAME:=wifidog PKG_VERSION:=1.3.0 -PKG_RELEASE:=3 - - -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_RELEASE:=4 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/wifidog/wifidog-gateway -PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=1.3.0 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.xz +PKG_SOURCE_VERSION:=$(PKG_VERSION) PKG_MIRROR_HASH:=9ffd9f3ae54baceb723abb7a04e27a9b6a3ff1479f8a3bfda9b8a496e8b4050f +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) + +PKG_MAINTAINER:=Michael Haas +PKG_LICENSE:=GPL-2.0-or-later +PKG_LICENSE_FILES:=COPYING 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 @@ -49,7 +42,7 @@ endef define Package/wifidog-tls $(call Package/wifidog/Default) - DEPENDS+= +libcyassl + DEPENDS+= +PACKAGE_wifidog-tls:libwolfssl VARIANT:=tls endef @@ -73,11 +66,6 @@ endef Package/wifidog-tls/conffiles = $(Package/wifidog/conffiles) - -define Package/wifidog/configure - $(call Build/Configure/Default) -endef - ifeq ($(BUILD_VARIANT),tls) CONFIGURE_ARGS += \ @@ -90,7 +78,7 @@ define Package/wifidog/install $(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/ + $(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/ diff --git a/net/wifidog/patches/020-Modify-get-ip-from-iface-method.patch b/net/wifidog/patches/020-Modify-get-ip-from-iface-method.patch new file mode 100644 index 000000000..a1afe597a --- /dev/null +++ b/net/wifidog/patches/020-Modify-get-ip-from-iface-method.patch @@ -0,0 +1,28 @@ +From 37b2dda9b1d62eb91028f6d590beddd36f7b79c8 Mon Sep 17 00:00:00 2001 +From: Nathan Samson +Date: Mon, 1 Feb 2016 21:37:22 +0100 +Subject: [PATCH] Modify get ip from iface method. + +This used to use a RAW socket, while now it used a DGRAM socket. +Previously it failed with operation not permitted, while this version +seems to work reliably. + +diff --git a/src/util.c b/src/util.c +index 46ec5a2..426ba13 100644 +--- a/src/util.c ++++ b/src/util.c +@@ -174,11 +174,13 @@ get_iface_ip(const char *ifname) + u_int32_t ip; + + /* Create a socket */ +- if ((sockd = socket(AF_INET, SOCK_RAW, htons(0x8086))) < 0) { ++ if ((sockd = socket(AF_INET, SOCK_DGRAM, 0)) < 0) { + debug(LOG_ERR, "socket(): %s", strerror(errno)); + return NULL; + } + ++ /* I want to get an IPv4 IP address */ ++ if_data.ifr_addr.sa_family = AF_INET; + /* Get IP of internal interface */ + strncpy(if_data.ifr_name, ifname, 15); + if_data.ifr_name[15] = '\0';