Skip to content

Commit 315ef8a

Browse files
committed
pbr: update to 1.2.1-r41
Remove many obsolete files. Makefile: * remove netifd-flavour related code * remove trailing white spaces Init-script: * proper deletion of default network rules for IPv{4,6} * fix netifd function error when IPv6 is enabled * remove trailing white spaces Signed-off-by: Stan Grishin <stangri@melmac.ca>
1 parent 9d751f3 commit 315ef8a

File tree

15 files changed

+22
-3699
lines changed

15 files changed

+22
-3699
lines changed

net/pbr/Makefile

Lines changed: 5 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk
55

66
PKG_NAME:=pbr
77
PKG_VERSION:=1.2.1
8-
PKG_RELEASE:=35
8+
PKG_RELEASE:=41
99
PKG_LICENSE:=AGPL-3.0-or-later
1010
PKG_MAINTAINER:=Stan Grishin <stangri@melmac.ca>
1111

@@ -33,12 +33,6 @@ $(call Package/pbr/default)
3333
DEFAULT_VARIANT:=1
3434
endef
3535

36-
define Package/pbr-netifd
37-
$(call Package/pbr/default)
38-
TITLE+= with nft/nft set and netifd support
39-
VARIANT:=netifd
40-
endef
41-
4236
define Package/pbr/default/description
4337
This service enables policy-based routing for WAN interfaces and various VPN tunnels.
4438
endef
@@ -48,18 +42,11 @@ define Package/pbr/description
4842
This version supports OpenWrt (23.05 and newer) with firewall4/nft.
4943
endef
5044

51-
define Package/pbr-netifd/description
52-
$(call Package/pbr/default/description)
53-
This version supports OpenWrt with (23.05 and newer) firewall4/nft.
54-
This version uses OpenWrt native netifd/tables to set up interfaces. This is a WIP.
55-
endef
56-
5745
define Package/pbr/default/conffiles
5846
/etc/config/pbr
5947
endef
6048

6149
Package/pbr/conffiles = $(Package/pbr/default/conffiles)
62-
Package/pbr-netifd/conffiles = $(Package/pbr/default/conffiles)
6350

6451
define Build/Configure
6552
endef
@@ -90,20 +77,14 @@ define Package/pbr/install
9077
$(call Package/pbr/default/install,$(1))
9178
endef
9279

93-
define Package/pbr-netifd/install
94-
$(call Package/pbr/default/install,$(1))
95-
$(INSTALL_DIR) $(1)/etc/uci-defaults
96-
endef
97-
# $(INSTALL_BIN) ./files/etc/uci-defaults/91-pbr-netifd $(1)/etc/uci-defaults/91-pbr-netifd
98-
9980
define Package/pbr/postinst
10081
#!/bin/sh
10182
# check if we are on real system
10283
if [ -z "$${IPKG_INSTROOT}" ]; then
103-
/etc/init.d/pbr netifd check && {
84+
/etc/init.d/pbr netifd check && {
10485
echo -n "Reinstalling pbr netifd integration... "
10586
/etc/init.d/pbr netifd install >/dev/null 2>&1 && echo "OK" || echo "FAIL"
106-
}
87+
}
10788
echo -n "Installing rc.d symlink for pbr... "
10889
/etc/init.d/pbr enable && echo "OK" || echo "FAIL"
10990
fi
@@ -118,10 +99,10 @@ if [ -z "$${IPKG_INSTROOT}" ]; then
11899
/etc/init.d/pbr stop >/dev/null 2>&1 && echo "OK" || echo "FAIL"
119100
echo -n "Removing rc.d symlink for pbr... "
120101
/etc/init.d/pbr disable && echo "OK" || echo "FAIL"
121-
/etc/init.d/pbr netifd check && {
102+
/etc/init.d/pbr netifd check && {
122103
echo -n "Uninstalling pbr netifd integration... "
123104
/etc/init.d/pbr netifd uninstall >/dev/null 2>&1 && echo "OK" || echo "FAIL"
124-
}
105+
}
125106
fi
126107
exit 0
127108
endef
@@ -135,40 +116,4 @@ fi
135116
exit 0
136117
endef
137118

138-
define Package/pbr-netifd/postinst
139-
#!/bin/sh
140-
# check if we are on real system
141-
if [ -z "$${IPKG_INSTROOT}" ]; then
142-
echo -n "Installing pbr integration with netifd... "
143-
/etc/init.d/pbr netifd check && /etc/init.d/pbr netifd install >/dev/null 2>&1 && echo "OK" || echo "FAIL"
144-
echo -n "Installing rc.d symlink for pbr... "
145-
/etc/init.d/pbr enable && echo "OK" || echo "FAIL"
146-
fi
147-
exit 0
148-
endef
149-
150-
define Package/pbr-netifd/prerm
151-
#!/bin/sh
152-
# check if we are on real system
153-
if [ -z "$${IPKG_INSTROOT}" ]; then
154-
echo -n "Stopping pbr service... "
155-
/etc/init.d/pbr stop >/dev/null 2>&1 && echo "OK" || echo "FAIL"
156-
echo -n "Removing rc.d symlink for pbr... "
157-
/etc/init.d/pbr disable && echo "OK" || echo "FAIL"
158-
echo -n "Uninstalling pbr integration with netifd... "
159-
/etc/init.d/pbr netifd check && /etc/init.d/pbr netifd uninstall >/dev/null 2>&1 && echo "OK" || echo "FAIL"
160-
fi
161-
exit 0
162-
endef
163-
164-
define Package/pbr-netifd/postrm
165-
#!/bin/sh
166-
# check if we are on real system
167-
if [ -z "$${IPKG_INSTROOT}" ]; then
168-
fw4 -q reload || true
169-
fi
170-
exit 0
171-
endef
172-
173119
$(eval $(call BuildPackage,pbr))
174-
# $(eval $(call BuildPackage,pbr-netifd))

net/pbr/files/etc/config/pbr-iptables

Lines changed: 0 additions & 50 deletions
This file was deleted.

net/pbr/files/etc/config/pbr.iptables

Lines changed: 0 additions & 50 deletions
This file was deleted.

net/pbr/files/etc/hotplug.d/firewall/70-pbr

Lines changed: 0 additions & 6 deletions
This file was deleted.

net/pbr/files/etc/init.d/pbr

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,7 @@ pbr_get_gateway4() {
257257
}
258258
pbr_get_gateway6() {
259259
local iface="$2" dev="$3" gw
260-
[ "$iface" = "$uplink_interface" ] && iface="$uplink_interface6"
260+
[ "$iface" = "$uplink_interface" ] && iface="$uplink_interface6"
261261
network_get_gateway6 gw "$iface" true
262262
if [ -z "$gw" ] || [ "$gw" = '::/0' ] || [ "$gw" = '::0/0' ] || [ "$gw" = '::' ]; then
263263
gw="$(ip -6 a list dev "$dev" 2>/dev/null | grep inet6 | grep 'scope global' | awk '{print $2}')"
@@ -813,7 +813,7 @@ nft_file() {
813813
;;
814814
create)
815815
rm -f "$nftTempFile" "$nftPermFile"
816-
for i in "$nftTempFile" "$nftPermFile"; do
816+
for i in "$nftTempFile" "$nftPermFile"; do
817817
mkdir -p "${i%/*}"
818818
done
819819
{ echo '#!/usr/sbin/nft -f'; echo ''; } > "$nftTempFile"
@@ -847,7 +847,7 @@ nft_file() {
847847
;;
848848
netifd_create)
849849
rm -f "$nftTempFile" "$nftNetifdPermFile"
850-
for i in "$nftTempFile" "$nftNetifdPermFile"; do
850+
for i in "$nftTempFile" "$nftNetifdPermFile"; do
851851
mkdir -p "${i%/*}"
852852
done
853853
{ echo '#!/usr/sbin/nft -f'; echo ''; } > "$nftTempFile"
@@ -884,7 +884,7 @@ nftset() {
884884
nftset4="${nftPrefix}${iface:+_$iface}_4${target:+_$target}${type:+_$type}${uid:+_$uid}"
885885
nftset6="${nftPrefix}${iface:+_$iface}_6${target:+_$target}${type:+_$type}${uid:+_$uid}"
886886

887-
if [ "${#nftset4}" -gt '255' ]; then
887+
if [ "${#nftset4}" -gt '255' ]; then
888888
json add error 'errorNftsetNameTooLong' "$nftset4"
889889
return 1
890890
fi
@@ -998,7 +998,7 @@ nftset() {
998998
fi
999999
}
10001000

1001-
cleanup_rt_tables() {
1001+
cleanup_rt_tables() {
10021002
local i
10031003
# shellcheck disable=SC2013
10041004
for i in $(grep -oh "${ipTablePrefix}_.*" "$rtTablesFile"); do
@@ -1204,7 +1204,7 @@ resolver() {
12041204
;;
12051205
compare_hash)
12061206
[ -z "$resolverSetSupported" ] && return 1
1207-
uci_changes 'dhcp' && uci_commit 'dhcp'
1207+
uci_changes 'dhcp' && uci_commit 'dhcp'
12081208
local resolverNewHash
12091209
if [ -s "$packageDnsmasqFile" ]; then
12101210
resolverNewHash="$(md5sum "$packageDnsmasqFile" | awk '{ print $1; }')"
@@ -1238,8 +1238,8 @@ netifd() {
12381238
local iface="$1" action="${2:-install}"
12391239
local rt_name="${ipTablePrefix}_${iface%6}"
12401240

1241-
uci_remove 'network' "${rt_name}_ipv4" 2>/dev/null
1242-
uci_remove 'network' "${rt_name}_ipv6" 2>/dev/null
1241+
uci_remove 'network' 'rule' "${rt_name}_ipv4" 2>/dev/null
1242+
uci_remove 'network' 'rule6' "${rt_name}_ipv6" 2>/dev/null
12431243

12441244
if [ -n "$netifd_strict_enforcement" ] && str_contains "$netifd_interface_local" "$iface"; then
12451245
if [ -n "$netifd_interface_default" ]; then
@@ -1275,7 +1275,7 @@ netifd() {
12751275
uci_set 'network' "${rt_name}_ipv4" 'lookup' "${rt_name}"
12761276
uci_set 'network' "${rt_name}_ipv4" 'mark' "${mark}"
12771277
uci_set 'network' "${rt_name}_ipv4" 'mask' "${fw_mask}"
1278-
if [ -n "$ipv6_enabled"]; then
1278+
if [ -n "$ipv6_enabled" ]; then
12791279
uci_add 'network' 'rule6' "${rt_name}_ipv6"
12801280
uci_set 'network' "${rt_name}_ipv6" 'priority' "${priority}"
12811281
uci_set 'network' "${rt_name}_ipv6" 'lookup' "${rt_name}"
@@ -1408,7 +1408,7 @@ dns_policy_routing() {
14081408
fi
14091409

14101410
if { is_ipv4 "$(str_first_word "$src_addr")" && [ -z "$dest_dns_ipv4" ]; } || \
1411-
{ is_ipv6 "$(str_first_word "$src_addr")" && [ -z "$dest_dns_ipv6" ]; }; then
1411+
{ is_ipv6 "$(str_first_word "$src_addr")" && [ -z "$dest_dns_ipv6" ]; }; then
14121412
processPolicyError='true'
14131413
json add error 'errorPolicyProcessMismatchFamily' "${name}: '$src_addr' '$dest_dns':'$dest_dns_port'"
14141414
return 1
@@ -1531,14 +1531,14 @@ policy_routing() {
15311531
fi
15321532

15331533
# TODO: implement actual family mismatch check on lists
1534-
# if is_family_mismatch "$src_addr" "$dest_addr"; then
1534+
# if is_family_mismatch "$src_addr" "$dest_addr"; then
15351535
# processPolicyError='true'
15361536
# json add error 'errorPolicyProcessMismatchFamily' "${name}: '$src_addr' '$dest_addr'"
15371537
# return 1
15381538
# fi
15391539

15401540
if [ -z "$proto" ]; then
1541-
if [ -n "${src_port}${dest_port}" ]; then
1541+
if [ -n "${src_port}${dest_port}" ]; then
15421542
proto='tcp udp'
15431543
else
15441544
proto='all'
@@ -1594,7 +1594,7 @@ policy_routing() {
15941594
fi
15951595
fi
15961596

1597-
if [ -n "$dest_addr" ]; then
1597+
if [ -n "$dest_addr" ]; then
15981598
if [ "${dest_addr:0:1}" = "!" ]; then
15991599
negation='!='; value="${dest_addr//\!}"; nftset_suffix='_neg';
16001600
else
@@ -1917,7 +1917,7 @@ interface_routing() {
19171917
}
19181918
try ip -4 rule replace fwmark "${mark}/${fw_mask}" table "$tid" priority "$priority" || ipv4_error=1
19191919
fi
1920-
try nft add chain inet "$nftTable" "${nftPrefix}_mark_${mark}" || ipv4_error=1
1920+
try nft add chain inet "$nftTable" "${nftPrefix}_mark_${mark}" || ipv4_error=1
19211921
try nft add rule inet "$nftTable" "${nftPrefix}_mark_${mark} ${nftRuleParams} meta mark set (meta mark & ${fw_maskXor}) | ${mark}" || ipv4_error=1
19221922
try nft add rule inet "$nftTable" "${nftPrefix}_mark_${mark} return" || ipv4_error=1
19231923
if [ -n "$ipv6_enabled" ]; then
@@ -2085,7 +2085,7 @@ process_interface() {
20852085
return 0
20862086
fi
20872087

2088-
if [ "$iface" = 'tor' ]; then
2088+
if [ "$iface" = 'tor' ]; then
20892089
case "$action" in
20902090
create|reload|reload_interface)
20912091
torDnsPort="$(get_tor_dns_port)"
@@ -2320,7 +2320,7 @@ boot() {
23202320
rc_procd start_service 'on_boot' && service_started 'on_boot'
23212321
}
23222322

2323-
on_interface_reload() {
2323+
on_interface_reload() {
23242324
if [ ! -e "$packageLockFile" ]; then
23252325
logger -t "$packageName" "Reload on interface change aborted: service is stopped."
23262326
return 0
@@ -2570,7 +2570,7 @@ stop_service() {
25702570
output_okn
25712571
else
25722572
output_failn
2573-
fi
2573+
fi
25742574
output 1 'Resetting interfaces '
25752575
config_load 'network'
25762576
config_foreach process_interface 'interface' 'destroy'

0 commit comments

Comments
 (0)