hnetd: update to latest
Signed-off-by: Steven Barth <steven@midlink.org>
This commit is contained in:
parent
46f5251a5f
commit
83d41fdd19
3 changed files with 76 additions and 12 deletions
hnetd
|
@ -7,12 +7,12 @@
|
||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=hnetd
|
PKG_NAME:=hnetd
|
||||||
PKG_SOURCE_VERSION:=10b22c409f2ecadaaec45e068fd01c74ffe5c772
|
PKG_SOURCE_VERSION:=faa2b7a42c33f23fac9e08f8e70a8c7ed59ce812
|
||||||
PKG_VERSION:=2014-11-25-$(PKG_SOURCE_VERSION)
|
PKG_VERSION:=2015-04-10-$(PKG_SOURCE_VERSION)
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL:=git://github.com/sbyx/hnetd.git
|
PKG_SOURCE_URL:=https://github.com/sbyx/hnetd.git
|
||||||
PKG_MAINTAINER:=Steven Barth <cyrus@openwrt.org>
|
PKG_MAINTAINER:=Steven Barth <cyrus@openwrt.org>
|
||||||
PKG_LICENSE:=GPL-2.0
|
PKG_LICENSE:=GPL-2.0
|
||||||
|
|
||||||
|
@ -28,21 +28,43 @@ CMAKE_OPTIONS += -DL_LEVEL=7
|
||||||
# OpenWRT target
|
# OpenWRT target
|
||||||
CMAKE_OPTIONS += -DBACKEND=openwrt
|
CMAKE_OPTIONS += -DBACKEND=openwrt
|
||||||
|
|
||||||
define Package/hnetd
|
ifeq ($(BUILD_VARIANT),openssl)
|
||||||
|
CMAKE_OPTIONS += -DDTLS_OPENSSL=1
|
||||||
|
endif
|
||||||
|
|
||||||
|
define Package/hnetd/Default
|
||||||
SECTION:=net
|
SECTION:=net
|
||||||
CATEGORY:=Network
|
CATEGORY:=Network
|
||||||
TITLE:=HNCP Homenet daemon
|
TITLE:=HNCP Homenet daemon - $(2)
|
||||||
URL:=https://github.com/sbyx/hnetd
|
URL:=https://github.com/sbyx/hnetd
|
||||||
DEPENDS:=+odhcpd +odhcp6c +netifd
|
DEPENDS:=+odhcpd +odhcp6c +netifd $(3)
|
||||||
DEPENDS+=+@IPV6
|
DEPENDS+=+@IPV6
|
||||||
|
VARIANT:=$1
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
Package/hnetd-nossl=$(call Package/hnetd/Default,nossl,no authentication)
|
||||||
|
Package/hnetd-openssl=$(call Package/hnetd/Default,openssl,authentication via OpenSSL,+libopenssl)
|
||||||
|
|
||||||
define Package/hnet-full
|
define Package/hnet-full
|
||||||
SECTION:=net
|
SECTION:=net
|
||||||
CATEGORY:=Network
|
CATEGORY:=Network
|
||||||
TITLE:=HNCP Homenet metapackage
|
TITLE:=HNCP Homenet metapackage
|
||||||
URL:=https://github.com/sbyx/hnetd
|
URL:=https://github.com/sbyx/hnetd
|
||||||
DEPENDS:=+hnetd +luci-app-hnet
|
DEPENDS:=+hnetd-nossl +luci-app-hnet
|
||||||
|
# Routing
|
||||||
|
DEPENDS+=+babels
|
||||||
|
# Service discovery
|
||||||
|
DEPENDS+=+ohybridproxy
|
||||||
|
# Distributed PCP support
|
||||||
|
DEPENDS+=+miniupnpd +minimalist-pcproxy
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/hnet-full-secure
|
||||||
|
SECTION:=net
|
||||||
|
CATEGORY:=Network
|
||||||
|
TITLE:=HNCP Homenet metapackage
|
||||||
|
URL:=https://github.com/sbyx/hnetd
|
||||||
|
DEPENDS:=+hnetd-openssl +luci-app-hnet
|
||||||
# Routing
|
# Routing
|
||||||
DEPENDS+=+babels
|
DEPENDS+=+babels
|
||||||
# Service discovery
|
# Service discovery
|
||||||
|
@ -56,22 +78,25 @@ define Package/luci-app-hnet
|
||||||
CATEGORY:=LuCI
|
CATEGORY:=LuCI
|
||||||
SUBMENU:=3. Applications
|
SUBMENU:=3. Applications
|
||||||
TITLE:=HNCP Homenet configuration and visualization
|
TITLE:=HNCP Homenet configuration and visualization
|
||||||
DEPENDS:=+hnetd
|
# DEPENDS:=+hnetd
|
||||||
|
# TBD - how to express dependency on 'some' hnetd?
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/hnetd/description
|
define Package/hnetd-$(BUILD_VARIANT)/description
|
||||||
This package provides a daemon which implementats distributed prefix assignment
|
This package provides a daemon which implementats distributed prefix assignment
|
||||||
and service discovery for a home network consisting of multiple routers
|
and service discovery for a home network consisting of multiple routers
|
||||||
connected to multiple service providers. It provides a netifd protocol "hnet"
|
connected to multiple service providers. It provides a netifd protocol "hnet"
|
||||||
for use in /etc/config/network.
|
for use in /etc/config/network.
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/hnetd/install
|
define Package/hnetd-$(BUILD_VARIANT)/install
|
||||||
$(INSTALL_DIR) $(1)/usr/sbin/
|
$(INSTALL_DIR) $(1)/usr/sbin/
|
||||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/hnetd $(1)/usr/sbin/
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/hnetd $(1)/usr/sbin/
|
||||||
$(INSTALL_DIR) $(1)/lib/netifd/proto
|
$(INSTALL_DIR) $(1)/lib/netifd/proto
|
||||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/openwrt/hnet.sh $(1)/lib/netifd/proto
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/openwrt/hnet.sh $(1)/lib/netifd/proto
|
||||||
ln -s hnetd $(1)/usr/sbin/hnet-ifresolve
|
ln -s hnetd $(1)/usr/sbin/hnet-ifresolve
|
||||||
|
ln -s hnetd $(1)/usr/sbin/hnet-trust
|
||||||
|
ln -s hnetd $(1)/usr/sbin/hnet-dump
|
||||||
$(INSTALL_DIR) $(1)/etc/init.d
|
$(INSTALL_DIR) $(1)/etc/init.d
|
||||||
$(INSTALL_BIN) ./files/hnetd.init $(1)/etc/init.d/hnetd
|
$(INSTALL_BIN) ./files/hnetd.init $(1)/etc/init.d/hnetd
|
||||||
$(INSTALL_DIR) $(1)/etc/config
|
$(INSTALL_DIR) $(1)/etc/config
|
||||||
|
@ -87,6 +112,10 @@ define Package/hnet-full/install
|
||||||
true
|
true
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define Package/hnet-full-secure/install
|
||||||
|
true
|
||||||
|
endef
|
||||||
|
|
||||||
define Package/luci-app-hnet/install
|
define Package/luci-app-hnet/install
|
||||||
$(INSTALL_DIR) $(1)/usr/lib/lua/luci
|
$(INSTALL_DIR) $(1)/usr/lib/lua/luci
|
||||||
$(INSTALL_DIR) $(1)/www
|
$(INSTALL_DIR) $(1)/www
|
||||||
|
@ -94,7 +123,7 @@ define Package/luci-app-hnet/install
|
||||||
$(CP) -R $(PKG_BUILD_DIR)/openwrt/luci/htdocs/* $(1)/www/
|
$(CP) -R $(PKG_BUILD_DIR)/openwrt/luci/htdocs/* $(1)/www/
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/hnetd/postinst
|
define Package/hnetd-$(BUILD_VARIANT)/postinst
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
[ -n "$${IPKG_INSTROOT}" ] || {
|
[ -n "$${IPKG_INSTROOT}" ] || {
|
||||||
(. /etc/uci-defaults/x-hnetd.defaults) && rm -f /etc/uci-defaults/x-hnetd.defaults
|
(. /etc/uci-defaults/x-hnetd.defaults) && rm -f /etc/uci-defaults/x-hnetd.defaults
|
||||||
|
@ -104,6 +133,8 @@ define Package/hnetd/postinst
|
||||||
}
|
}
|
||||||
endef
|
endef
|
||||||
|
|
||||||
$(eval $(call BuildPackage,hnetd))
|
$(eval $(call BuildPackage,hnetd-nossl))
|
||||||
|
$(eval $(call BuildPackage,hnetd-openssl))
|
||||||
$(eval $(call BuildPackage,hnet-full))
|
$(eval $(call BuildPackage,hnet-full))
|
||||||
|
$(eval $(call BuildPackage,hnet-full-secure))
|
||||||
$(eval $(call BuildPackage,luci-app-hnet))
|
$(eval $(call BuildPackage,luci-app-hnet))
|
||||||
|
|
|
@ -1,3 +1,14 @@
|
||||||
|
config security security
|
||||||
|
# Simplest security mode:
|
||||||
|
# option password foo
|
||||||
|
# Trust consensus and CA-based share these options:
|
||||||
|
# option certificate_file /etc/hnetd-cert.pem
|
||||||
|
# option private_key_file /etc/hnetd-key.pem
|
||||||
|
# Then to enable trust consensus:
|
||||||
|
# option trust_store /etc/hnetd-trust.dat
|
||||||
|
# Or CA-based authentication:
|
||||||
|
# option trust_certificate_file /etc/ca-cert.pem
|
||||||
|
|
||||||
config pa pa
|
config pa pa
|
||||||
# option ip4prefix 10.0.0.0/8
|
# option ip4prefix 10.0.0.0/8
|
||||||
# option ulaprefix fd12:3456:789A::/48
|
# option ulaprefix fd12:3456:789A::/48
|
||||||
|
|
|
@ -51,6 +51,7 @@ start_service() {
|
||||||
# Routing script
|
# Routing script
|
||||||
procd_append_param command -r /usr/sbin/hnetd-routing
|
procd_append_param command -r /usr/sbin/hnetd-routing
|
||||||
|
|
||||||
|
# Prefix assignment (pa)
|
||||||
config_get val pa ip4prefix
|
config_get val pa ip4prefix
|
||||||
[ -n "$val" ] && procd_append_param command --ip4prefix $val
|
[ -n "$val" ] && procd_append_param command --ip4prefix $val
|
||||||
|
|
||||||
|
@ -60,15 +61,36 @@ start_service() {
|
||||||
config_get val pa ulamode
|
config_get val pa ulamode
|
||||||
[ -n "$val" ] && procd_append_param command --ulamode $val
|
[ -n "$val" ] && procd_append_param command --ulamode $val
|
||||||
|
|
||||||
|
# Service discovery (sd)
|
||||||
config_get val sd router_name
|
config_get val sd router_name
|
||||||
[ -n "$val" ] && procd_append_param command -n $val
|
[ -n "$val" ] && procd_append_param command -n $val
|
||||||
|
|
||||||
config_get val sd domain_name
|
config_get val sd domain_name
|
||||||
[ -n "$val" ] && procd_append_param command -m $val
|
[ -n "$val" ] && procd_append_param command -m $val
|
||||||
|
|
||||||
|
# Security (needs security-enabled build)
|
||||||
|
config_get val security password
|
||||||
|
[ -n "$val" ] && procd_append_param command --password $val
|
||||||
|
|
||||||
|
config_get val security certificate_file
|
||||||
|
[ -n "$val" ] && procd_append_param command --certificate $val
|
||||||
|
|
||||||
|
config_get val security private_key_file
|
||||||
|
[ -n "$val" ] && procd_append_param command --privatekey $val
|
||||||
|
|
||||||
|
config_get val security trust_store
|
||||||
|
[ -n "$val" ] && procd_append_param command --trust $val
|
||||||
|
|
||||||
|
config_get val security trust_certificate_file
|
||||||
|
[ -n "$val" ] && procd_append_param command --verify-path $val
|
||||||
|
|
||||||
# For more verbose logging, uncomment this:
|
# For more verbose logging, uncomment this:
|
||||||
#procd_append_param command --loglevel 7
|
#procd_append_param command --loglevel 7
|
||||||
|
|
||||||
procd_set_param respawn
|
procd_set_param respawn
|
||||||
procd_close_instance
|
procd_close_instance
|
||||||
}
|
}
|
||||||
|
|
||||||
|
service_triggers() {
|
||||||
|
procd_add_reload_trigger "hnet"
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue