-
Notifications
You must be signed in to change notification settings - Fork 3.9k
olsrd: add new package #30170
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
olsrd: add new package #30170
Changes from all commits
Commits
Show all changes
7 commits
Select commit
Hold shift + click to select a range
7e435e0
olsrd: add new package
BKPepe c8eebee
olsrd: fix respawn_threshold lookup in the IPv6 init script
BKPepe 4d027db
olsrd: add missing jshn dependency to olsrd-utils
BKPepe 1d68696
olsrd: initialize the LQ multiplier list pointer in the ubus handler
BKPepe d47c0f4
olsrd: reject non-address input before eval in olsrd-neigh.sh
BKPepe e7f24a2
olsrd: report the packaged version in the binary
BKPepe 605206e
olsrd: record why the version check logs "Terminated"
BKPepe File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,333 @@ | ||
| # SPDX-License-Identifier: GPL-2.0-or-later | ||
| # | ||
| # Copyright (C) 2009-2016 OpenWrt.org | ||
| # | ||
|
|
||
| include $(TOPDIR)/rules.mk | ||
|
|
||
| PKG_NAME:=olsrd | ||
| PKG_SOURCE_DATE:=2024-06-09 | ||
| PKG_RELEASE:=1 | ||
|
|
||
| PKG_SOURCE_PROTO:=git | ||
| PKG_SOURCE_URL:=https://github.com/OLSR/olsrd.git | ||
| PKG_SOURCE_VERSION:=d72be9ad60f65dda28a0543b4ffff8cd9a5da2d7 | ||
| PKG_MIRROR_HASH:=e05d2724e6c76233148ce460b9611bafccff2114904542fa3b5caf75dc1c4e04 | ||
|
|
||
| PKG_MAINTAINER:=Nick Hainke <vincent@systemli.org> | ||
| PKG_BUILD_PARALLEL:=0 | ||
| PKG_LICENSE:=BSD-3-Clause | ||
| PKG_LICENSE_FILES:=license.txt | ||
|
|
||
| include $(INCLUDE_DIR)/package.mk | ||
|
|
||
| TARGET_CFLAGS += $(FPIC) | ||
|
|
||
| define Package/olsrd/template | ||
| SECTION:=net | ||
| CATEGORY:=Network | ||
| SUBMENU:=Routing and Redirection | ||
| TITLE:=OLSR (Optimized Link State Routing) daemon | ||
| URL:=https://www.olsr.org/ | ||
| endef | ||
|
|
||
| define Package/olsrd | ||
| $(call Package/olsrd/template) | ||
| MENU:=1 | ||
| DEPENDS:=+libpthread +libubus +iptables +IPV6:ip6tables | ||
| endef | ||
|
|
||
| define Package/olsrd/conffiles | ||
| /etc/config/olsrd | ||
| /etc/config/olsrd6 | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-arprefresh | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=Kernel ARP cache refresh plugin | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-dot-draw | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=Dot topology information plugin | ||
| endef | ||
|
|
||
|
|
||
| define Package/olsrd-mod-filtergw | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=Filter Gateway plugin | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-bmf | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd +kmod-tun | ||
| TITLE:=Basic multicast forwarding plugin | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-dyn-gw | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=Dynamic internet gateway plugin | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-dyn-gw-plain | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=Dynamic internet gateway plain plugin | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-httpinfo | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=Small informative web server plugin | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-jsoninfo | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=Small informative plugin with JSON output | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-netjson | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=netjson plugin with JSON output | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-mdns | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=MDNS/Zeroconf/Bonjour packet distribution | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-nameservice | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=Lightweight hostname resolver plugin | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-p2pd | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=Peer to Peer Discovery plugin | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-pgraph | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=output network topology for pgraph | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-pud | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd +libgps | ||
| TITLE:=Position Update Distribution plugin | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-quagga | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=Quagga plugin | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-secure | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=Message signing plugin to secure routing domain | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-sgwdynspeed | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=Smart Gateway dynamic speed plugin | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-txtinfo | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=Small informative web server plugin | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-watchdog | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd | ||
| TITLE:=Watchdog plugin | ||
| endef | ||
|
|
||
| define Package/olsrd-utils | ||
| $(call Package/olsrd/template) | ||
| DEPENDS:=olsrd +jshn | ||
| TITLE:=Utils for OLSRD | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-pud/conffiles | ||
| /etc/olsrd.d/olsrd.pud.position.conf | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-secure/conffiles | ||
| /etc/olsrd.d/olsrd_secure_key | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-sgwdynspeed/conffiles | ||
| /etc/olsrd.d/olsrd.sgw.speed.conf | ||
| endef | ||
|
|
||
| MAKE_FLAGS+= \ | ||
| NO_DEBUG_MESSAGES=1 \ | ||
| VERS="$(PKG_VERSION)" \ | ||
| OS="linux" \ | ||
| DESTDIR="$(PKG_INSTALL_DIR)" \ | ||
| STRIP="true" \ | ||
| INSTALL_LIB="true" \ | ||
| SUBDIRS="arprefresh bmf dot_draw dyn_gw dyn_gw_plain httpinfo filtergw jsoninfo netjson mdns nameservice p2pd pgraph pud quagga secure sgwdynspeed txtinfo watchdog" | ||
|
|
||
| define Build/Compile | ||
| $(call Build/Compile/Default,all) | ||
| $(call Build/Compile/Default,libs) | ||
| endef | ||
|
|
||
| define Package/olsrd/install | ||
| $(INSTALL_DIR) $(1)/lib/functions | ||
| $(INSTALL_DATA) ./files/olsrd.sh $(1)/lib/functions/olsrd.sh | ||
| $(INSTALL_DIR) $(1)/etc/config | ||
| $(INSTALL_CONF) ./files/olsrd.config $(1)/etc/config/olsrd | ||
| $(INSTALL_CONF) ./files/olsrd6.config $(1)/etc/config/olsrd6 | ||
| $(INSTALL_DIR) $(1)/usr/sbin | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/olsrd $(1)/usr/sbin/ | ||
| $(INSTALL_DIR) $(1)/etc/init.d | ||
| $(INSTALL_BIN) ./files/olsrd4.init $(1)/etc/init.d/olsrd | ||
| $(INSTALL_BIN) ./files/olsrd6.init $(1)/etc/init.d/olsrd6 | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-arprefresh/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/arprefresh/olsrd_arprefresh.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-filtergw/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/filtergw/olsrd_filtergw.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-dot-draw/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/dot_draw/olsrd_dot_draw.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-bmf/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/bmf/olsrd_bmf.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-dyn-gw/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/dyn_gw/olsrd_dyn_gw.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-dyn-gw-plain/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/dyn_gw_plain/olsrd_dyn_gw_plain.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-httpinfo/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/httpinfo/olsrd_httpinfo.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-jsoninfo/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/jsoninfo/olsrd_jsoninfo.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-netjson/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/netjson/olsrd_netjson.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-mdns/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/mdns/olsrd_mdns.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-nameservice/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/nameservice/olsrd_nameservice.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-p2pd/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/p2pd/olsrd_p2pd.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-pgraph/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/pgraph/olsrd_pgraph.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-pud/install | ||
| $(INSTALL_DIR) $(1)/etc/olsrd.d | ||
| $(CP) ./files/olsrd.pud.position.conf $(1)/etc/olsrd.d/ | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/pud/nmealib/lib/libnmea.so $(1)/usr/lib/ | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/pud/wireformat/lib/libOlsrdPudWireFormat.so $(1)/usr/lib/ | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/pud/olsrd_pud.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-quagga/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/quagga/olsrd_quagga.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-secure/install | ||
| $(INSTALL_DIR) $(1)/etc/olsrd.d | ||
| $(CP) ./files/olsrd_secure_key $(1)/etc/olsrd.d/ | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/secure/olsrd_secure.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-sgwdynspeed/install | ||
| $(INSTALL_DIR) $(1)/etc/olsrd.d | ||
| $(CP) ./files/olsrd.sgw.speed.conf $(1)/etc/olsrd.d/ | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/sgwdynspeed/olsrd_sgwdynspeed.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-txtinfo/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/txtinfo/olsrd_txtinfo.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-mod-watchdog/install | ||
| $(INSTALL_DIR) $(1)/usr/lib | ||
| $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/watchdog/olsrd_watchdog.so.* $(1)/usr/lib/ | ||
| endef | ||
|
|
||
| define Package/olsrd-utils/install | ||
| $(INSTALL_DIR) $(1)/usr/bin | ||
| $(INSTALL_BIN) ./files/olsrd-neigh.sh $(1)/usr/bin/olsrd-neigh | ||
| endef | ||
|
|
||
| $(eval $(call BuildPackage,olsrd)) | ||
| $(eval $(call BuildPackage,olsrd-mod-arprefresh)) | ||
| $(eval $(call BuildPackage,olsrd-mod-dot-draw)) | ||
| $(eval $(call BuildPackage,olsrd-mod-filtergw)) | ||
| $(eval $(call BuildPackage,olsrd-mod-bmf)) | ||
| $(eval $(call BuildPackage,olsrd-mod-dyn-gw)) | ||
| $(eval $(call BuildPackage,olsrd-mod-dyn-gw-plain)) | ||
| $(eval $(call BuildPackage,olsrd-mod-httpinfo)) | ||
| $(eval $(call BuildPackage,olsrd-mod-jsoninfo)) | ||
| $(eval $(call BuildPackage,olsrd-mod-netjson)) | ||
| $(eval $(call BuildPackage,olsrd-mod-mdns)) | ||
| $(eval $(call BuildPackage,olsrd-mod-nameservice)) | ||
| $(eval $(call BuildPackage,olsrd-mod-p2pd)) | ||
| $(eval $(call BuildPackage,olsrd-mod-pgraph)) | ||
| $(eval $(call BuildPackage,olsrd-mod-pud)) | ||
| $(eval $(call BuildPackage,olsrd-mod-quagga)) | ||
| $(eval $(call BuildPackage,olsrd-mod-secure)) | ||
| $(eval $(call BuildPackage,olsrd-mod-sgwdynspeed)) | ||
| $(eval $(call BuildPackage,olsrd-mod-txtinfo)) | ||
| $(eval $(call BuildPackage,olsrd-mod-watchdog)) | ||
| $(eval $(call BuildPackage,olsrd-utils)) | ||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is the hard
+iptables/+IPV6:ip6tablesdependency still wanted? The only consumer isolsrd_setup_smartgw_rules()infiles/olsrd.sh:749-816, and every rule it inserts targets the firewall3 chainsforwarding_rule,input_ruleandpostrouting_rule. firewall4 (default since 22.03) does not create those chains, so on a stock image the inserts fail with "No chain/target/match by that name" while the dependency still drags legacy iptables onto every device that installs olsrd — including the ones that never enable SmartGateway.If SmartGateway is still expected to work, the rules need an nftables path; if it is effectively dead, the dependency could at least be relaxed so olsrd doesn't pull iptables in unconditionally. Either way it would be good to decide this as part of the move rather than inherit it.
Generated by Claude Code