odhcpd: several bugfixes and improved integration
authorSteven Barth <cyrus@openwrt.org>
Fri, 17 Jan 2014 13:59:51 +0000 (13:59 +0000)
committerSteven Barth <cyrus@openwrt.org>
Fri, 17 Jan 2014 13:59:51 +0000 (13:59 +0000)
SVN-Revision: 39308

package/network/services/odhcpd/Makefile
package/network/services/odhcpd/files/odhcpd-update
package/network/services/odhcpd/files/odhcpd.defaults [new file with mode: 0644]

index c4f76cbd626e43156b6734c9b71dd8160fa1a271..9391fc7752d5f39eb933ad9847649bf3240de5c3 100644 (file)
@@ -8,20 +8,21 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=odhcpd
-PKG_VERSION:=2013-12-04
+PKG_VERSION:=2014-01-17
 PKG_RELEASE=$(PKG_SOURCE_VERSION)
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
 PKG_SOURCE_URL:=git://github.com/sbyx/odhcpd.git
 PKG_SOURCE_PROTO:=git
-PKG_SOURCE_VERSION:=d2e8dc035bbbe8f29533817b892ddd41350b87f8
+PKG_SOURCE_VERSION:=0a41d480c058b68fe09ac7de044c561dee955233
 
 PKG_MAINTAINER:=Steven Barth <steven@midlink.org>
 
 include $(INCLUDE_DIR)/package.mk
 include $(INCLUDE_DIR)/cmake.mk
 
+CMAKE_OPTIONS += -DUBUS=1
 ifneq ($(CONFIG_PACKAGE_odhcpd_ext_prefix_class),0)
   CMAKE_OPTIONS += -DEXT_PREFIX_CLASS=$(CONFIG_PACKAGE_odhcpd_ext_prefix_class)
 endif
@@ -56,6 +57,8 @@ define Package/odhcpd/install
        $(INSTALL_BIN) ./files/odhcpd-update $(1)/usr/sbin/
        $(INSTALL_DIR) $(1)/etc/init.d
        $(INSTALL_BIN) ./files/odhcpd.init $(1)/etc/init.d/odhcpd
+       $(INSTALL_DIR) $(1)/etc/uci-defaults
+       $(INSTALL_BIN) ./files/odhcpd.defaults $(1)/etc/uci-defaults
 endef
 
 $(eval $(call BuildPackage,odhcpd))
index 20980f2228cbffd32608b4fc29733ea363784f8d..e17cd0bfff6bfbc3fcf474e8ea2275c043dcdc75 100755 (executable)
@@ -1,3 +1,5 @@
 #!/bin/sh
 # Make dnsmasq reread hostfile
-killall -SIGHUP dnsmasq
+
+pid=$(pidof dnsmasq)
+[ "$(readlink /proc/$pid/exe)" = "/usr/sbin/dnsmasq" ] && kill -SIGHUP $pid
diff --git a/package/network/services/odhcpd/files/odhcpd.defaults b/package/network/services/odhcpd/files/odhcpd.defaults
new file mode 100644 (file)
index 0000000..4d36045
--- /dev/null
@@ -0,0 +1,19 @@
+#!/bin/sh
+uci -q get dhcp.odhcpd && exit 0
+touch /etc/config/dhcp
+
+uci batch <<EOF
+set dhcp.odhcpd=odhcpd
+set dhcp.odhcpd.maindhcp=0
+set dhcp.odhcpd.leasefile=/tmp/hosts/odhcpd
+set dhcp.odhcpd.leasetrigger=/usr/sbin/odhcpd-update
+set dhcp.lan.dhcpv6=hybrid
+set dhcp.lan.ra=hybrid
+set dhcp.lan.ndp=hybrid
+set dhcp.wan6=dhcp
+set dhcp.wan6.dhcpv6=hybrid
+set dhcp.wan6.ra=hybrid
+set dhcp.wan6.ndp=hybrid
+set dhcp.wan6.master=1
+commit dhcp
+EOF