odhcpd: add new experimental dhcp-server

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38428 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Steven Barth 2013-10-16 09:03:55 +00:00
parent 0bd702e1cb
commit 7ba0aa8dcf
3 changed files with 71 additions and 0 deletions

View File

@ -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 <steven@midlink.org>
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))

View File

@ -0,0 +1,3 @@
#!/bin/sh
# Make dnsmasq reread hostfile
killall -SIGHUP dnsmasq

View File

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