diff --git a/package/network/services/odhcpd/Makefile b/package/network/services/odhcpd/Makefile new file mode 100644 index 00000000000..e1a8dfdfe7e --- /dev/null +++ b/package/network/services/odhcpd/Makefile @@ -0,0 +1,50 @@ +# +# Copyright (C) 2013 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:=odhcpd +PKG_VERSION:=2013-10-16 +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:=05969d06380387fc6d093e80b142145c2a9c2293 + +PKG_MAINTAINER:=Steven Barth + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/cmake.mk + +define Package/odhcpd + SECTION:=net + CATEGORY:=Network + TITLE:=OpenWrt DHCP/DHCPv6(-PD)/RA Server & Relay + DEPENDS:=+libubox +libuci +libubus +endef + +define Package/odhcpd/description + odhcpd is a daemon for serving and relaying IP management protocols to + configure clients and downstream routers. It tries to follow the RFC 6204 + requirements for IPv6 home routers. + + odhcpd provides server services for DHCP, RA, stateless and stateful DHCPv6, + prefix delegation and can be used to relay RA, DHCPv6 and NDP between routed + (non-bridged) interfaces in case no delegated prefixes are available. +endef + +define Package/odhcpd/install + $(INSTALL_DIR) $(1)/usr/sbin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/odhcpd $(1)/usr/sbin/ + $(INSTALL_BIN) ./files/odhcpd-update $(1)/usr/sbin/ + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/odhcpd.init $(1)/etc/init.d/odhcpd +endef + +$(eval $(call BuildPackage,odhcpd)) diff --git a/package/network/services/odhcpd/files/odhcpd-update b/package/network/services/odhcpd/files/odhcpd-update new file mode 100755 index 00000000000..20980f2228c --- /dev/null +++ b/package/network/services/odhcpd/files/odhcpd-update @@ -0,0 +1,3 @@ +#!/bin/sh +# Make dnsmasq reread hostfile +killall -SIGHUP dnsmasq diff --git a/package/network/services/odhcpd/files/odhcpd.init b/package/network/services/odhcpd/files/odhcpd.init new file mode 100644 index 00000000000..c8a311484ed --- /dev/null +++ b/package/network/services/odhcpd/files/odhcpd.init @@ -0,0 +1,18 @@ +#!/bin/sh /etc/rc.common + +START=35 +STOP=85 +USE_PROCD=1 + +start_service() { + procd_open_instance + procd_set_param command /usr/sbin/odhcpd + procd_set_param respawn + procd_close_instance +} + +service_triggers() +{ + procd_add_reload_trigger "dhcp" +} +