include $(TOPDIR)/rules.mk PKG_NAME:=urngd PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL=$(PROJECT_GIT)/project/urngd.git PKG_SOURCE_DATE:=2023-07-25 PKG_SOURCE_VERSION:=7aefb47be57df0467d97d539f7fe9e23e607a3b4 PKG_MIRROR_HASH:=427d4228fd65cf4320b8c212e710b86bcbfcdd4239f4e67132b3b471f7437202 PKG_LICENSE:=GPL-2.0 BSD-3-Clause PKG_LICENSE_FILES:= include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/cmake.mk define Package/urngd SECTION:=utils CATEGORY:=Base system TITLE:=OpenWrt non-physical true random number generator based on timing jitter DEPENDS:=+libubox endef define Package/urngd/description urngd is OpenWrt's micro non-physical true random number generator based on timing jitter. Using the Jitter RNG core, the rngd provides an entropy source that feeds into the Linux /dev/random device if its entropy runs low. It updates the /dev/random entropy estimator such that the newly provided entropy unblocks /dev/random. The seeding of /dev/random also ensures that /dev/urandom benefits from entropy. Especially during boot time, when the entropy of Linux is low, the Jitter RNGd provides a source of sufficient entropy. endef define Package/urngd/install $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/$(PKG_NAME).init $(1)/etc/init.d/$(PKG_NAME) $(INSTALL_DIR) $(1)/sbin $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_NAME) $(1)/sbin/$(PKG_NAME) endef $(eval $(call BuildPackage,urngd))