Browse Source

odhcpd: several bugfixes and improved integration

SVN-Revision: 39308
Steven Barth 12 years ago
parent
commit
684537f3e7

+ 5 - 2
package/network/services/odhcpd/Makefile

@@ -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 <[email protected]>
 
 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))

+ 3 - 1
package/network/services/odhcpd/files/odhcpd-update

@@ -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

+ 19 - 0
package/network/services/odhcpd/files/odhcpd.defaults

@@ -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