mirror of
https://dev.iopsys.eu/feed/iopsys.git
synced 2025-12-28 06:59:28 +08:00
Compare commits
134 Commits
map-config
...
memorie_fi
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a82adcc50a | ||
|
|
e32acf9fd0 | ||
|
|
266b0029b4 | ||
|
|
473c387777 | ||
|
|
44fd9e6ed1 | ||
|
|
3d31052d40 | ||
|
|
dc56c93b73 | ||
|
|
0dd95029e6 | ||
|
|
5f92faf0a1 | ||
|
|
31ed1f802b | ||
|
|
c73ac6665b | ||
|
|
431d1fbf34 | ||
|
|
2ddb4fb5fc | ||
|
|
1835fe7a50 | ||
|
|
d0e30dade4 | ||
|
|
be867f1b25 | ||
|
|
9b2318242b | ||
|
|
8fee87c3c6 | ||
|
|
2fbdb4b3d2 | ||
|
|
337c9a52f9 | ||
|
|
6c86adbf86 | ||
|
|
e316bea78f | ||
|
|
233d714564 | ||
|
|
13b742fe44 | ||
|
|
c23ae5dad1 | ||
|
|
3c7aa191ea | ||
|
|
d8bbc9de81 | ||
|
|
92e353bb49 | ||
|
|
17fd78bc94 | ||
|
|
68ca3b1d07 | ||
|
|
05a5616347 | ||
|
|
90f102b36a | ||
|
|
3e95e599e4 | ||
|
|
12d1e79339 | ||
|
|
9ffed931c6 | ||
|
|
aa8949e9e4 | ||
|
|
c31e10cd88 | ||
|
|
1257c11c69 | ||
|
|
147c6de58c | ||
|
|
b821b189d1 | ||
|
|
cae7d71907 | ||
|
|
92748d489a | ||
|
|
9847af7e74 | ||
|
|
8e98dc9526 | ||
|
|
1fe4fbdd4e | ||
|
|
e4f24b2223 | ||
|
|
ec905407f0 | ||
|
|
0c0c7316fa | ||
|
|
72da7b55c2 | ||
|
|
60fe16d7ce | ||
|
|
cb1fa79dcd | ||
|
|
15ab89ef7d | ||
|
|
975f4e7552 | ||
|
|
a3a7c6da1b | ||
|
|
dca442ce01 | ||
|
|
6f00aa22fd | ||
|
|
575f5c9d19 | ||
|
|
a699302f46 | ||
|
|
4ef7a8034b | ||
|
|
9675953bf6 | ||
|
|
d3d4c87f82 | ||
|
|
52ced81af6 | ||
|
|
20f17b81c5 | ||
|
|
aafcebaf3d | ||
|
|
6126333ad9 | ||
|
|
fc15efe427 | ||
|
|
59d28497d9 | ||
|
|
3a4a1b64bf | ||
|
|
1ce127080e | ||
|
|
f9a4bfa6d6 | ||
|
|
e4365786b9 | ||
|
|
65c619060d | ||
|
|
ef370bc886 | ||
|
|
0730c65372 | ||
|
|
626e1241d6 | ||
|
|
b86544da9a | ||
|
|
3e38df2389 | ||
|
|
d34d6e8bf0 | ||
|
|
2f8a76e34d | ||
|
|
55f1310daa | ||
|
|
57b528f2af | ||
|
|
670904cd6c | ||
|
|
ad0633029c | ||
|
|
9b823e5937 | ||
|
|
431325e6e6 | ||
|
|
fd8fa1d7e2 | ||
|
|
572bfa61dd | ||
|
|
5963ff1139 | ||
|
|
363d3dfcb7 | ||
|
|
cf12bbe6e2 | ||
|
|
426437c233 | ||
|
|
742ded177d | ||
|
|
a5f6b10a50 | ||
|
|
c25139968a | ||
|
|
f52700c0f0 | ||
|
|
5bc8757a3e | ||
|
|
5b0fe1d2dc | ||
|
|
a31ae89e79 | ||
|
|
bd72194d2d | ||
|
|
babb25709b | ||
|
|
ea37c333f9 | ||
|
|
be07b58cf5 | ||
|
|
13a6a59469 | ||
|
|
b6301bba94 | ||
|
|
dd627b7f70 | ||
|
|
0d2a12f029 | ||
|
|
0f1460f45f | ||
|
|
022e506a56 | ||
|
|
9025395702 | ||
|
|
35ce40b964 | ||
|
|
0c915ba8b8 | ||
|
|
60ab6d1a6b | ||
|
|
8ec45319bc | ||
|
|
1536d860dd | ||
|
|
49858f3601 | ||
|
|
1c305c69e4 | ||
|
|
e592e2d567 | ||
|
|
ff7714c88e | ||
|
|
9dda4d7ffa | ||
|
|
10cee1f785 | ||
|
|
8816c26e2a | ||
|
|
aba742a5e7 | ||
|
|
d199dadd39 | ||
|
|
fca18d2da5 | ||
|
|
3b819f5b1d | ||
|
|
b49d14370d | ||
|
|
3f2befa23a | ||
|
|
52809e1e94 | ||
|
|
52ff5c79dd | ||
|
|
09ad1ffa91 | ||
|
|
1d2d9b7b97 | ||
|
|
7f405f04ac | ||
|
|
16134d0a2d | ||
|
|
5fbc784901 |
@@ -5,11 +5,11 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=libbbfdm
|
||||
PKG_VERSION:=6.3.6
|
||||
PKG_VERSION:=6.4.18
|
||||
PKG_FIXUP:=autoreconf
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/bbf.git
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=b22628c0ddd294bc04f3768e7c1559ab6ad4192f
|
||||
PKG_SOURCE_VERSION:=2758c0380e9dbec87b119df239aee29c7ed1ec48
|
||||
PKG_RELEASE=$(PKG_SOURCE_VERSION)
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
@@ -125,8 +125,10 @@ endef
|
||||
|
||||
define Build/InstallDev
|
||||
$(INSTALL_DIR) $(1)/usr/lib
|
||||
$(INSTALL_DIR) $(1)/usr/include
|
||||
$(INSTALL_DIR) $(1)/usr/include/libbbfdm
|
||||
$(INSTALL_DIR) $(1)/usr/include/libbbf_api
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/include/*.h $(1)/usr/include/
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/*.h $(1)/usr/include/libbbfdm/
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/libbbf_api/*.h $(1)/usr/include/libbbf_api/
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/bin/.libs/libbbfdm.{a,so*} $(1)/usr/lib/
|
||||
|
||||
@@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=dectmngr
|
||||
PKG_RELEASE:=3
|
||||
PKG_VERSION:=3.4.0
|
||||
PKG_VERSION:=3.4.7
|
||||
|
||||
LOCAL_DEV=0
|
||||
ifneq ($(LOCAL_DEV),1)
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/dectmngr.git
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=6d85dfeb2e29eb7a05069c11e850195b2d283494
|
||||
PKG_SOURCE_VERSION:=237bb7280029924e80373ea090e51434def89048
|
||||
PKG_MIRROR_HASH:=skip
|
||||
endif
|
||||
|
||||
|
||||
Binary file not shown.
BIN
dectmngr/files/etc/dspg/04131C10.bin
Normal file
BIN
dectmngr/files/etc/dspg/04131C10.bin
Normal file
Binary file not shown.
@@ -26,6 +26,7 @@ start_service() {
|
||||
local opt_ext=
|
||||
local rfpi=
|
||||
local model_id=
|
||||
local rxtun=
|
||||
|
||||
test $(db get hw.board.hasDect) = "0" && return
|
||||
|
||||
@@ -41,6 +42,9 @@ start_service() {
|
||||
}
|
||||
opt_ext="$opt_ext -model $model_id"
|
||||
|
||||
rxtun=$(db -q get hw.board.dect_rxtun)
|
||||
[ -n "$rxtun" -a ${#rxtun} -eq 2 ] && opt_ext="$opt_ext -rxtun $rxtun"
|
||||
|
||||
config_load dect
|
||||
config_get log_dect_cmbs global log_dect_cmbs syslog
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ exec_class_log() {
|
||||
}
|
||||
|
||||
get_priority() {
|
||||
local prio=$(echo $1|tr [A-Z] [a-z]);
|
||||
local prio=$(echo $1|tr 'A-Z' 'a-z');
|
||||
case "${prio}" in
|
||||
"lowest")
|
||||
echo 8;;
|
||||
@@ -55,7 +55,7 @@ get_priority() {
|
||||
}
|
||||
|
||||
get_mark() {
|
||||
local prio=$(echo $1|tr [A-Z] [a-z]);
|
||||
local prio=$(echo $1|tr 'A-Z' 'a-z');
|
||||
case "${prio}" in
|
||||
"lowest")
|
||||
echo "0x41/0x3df";;
|
||||
|
||||
@@ -15,7 +15,7 @@ exec_log() {
|
||||
}
|
||||
|
||||
get_priority() {
|
||||
local prio=$(echo $1|tr [A-Z] [a-z]);
|
||||
local prio=$(echo $1|tr 'A-Z' 'a-z');
|
||||
case "${prio}" in
|
||||
"lowest")
|
||||
echo 0;;
|
||||
@@ -98,7 +98,7 @@ manage_rule() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
protocol=$(echo ${proto}|tr [A-Z] [a-z])
|
||||
protocol=$(echo ${proto}|tr 'A-Z' 'a-z')
|
||||
prio_num=$(get_priority ${priority})
|
||||
if [ -n "${macaddr}" -a -n "${prio_num}" ]; then
|
||||
for p in ${port}; do
|
||||
|
||||
@@ -19,7 +19,7 @@ exec_log() {
|
||||
}
|
||||
|
||||
get_priority() {
|
||||
local prio=$(echo $1|tr [A-Z] [a-z]);
|
||||
local prio=$(echo $1|tr 'A-Z' 'a-z');
|
||||
case "${prio}" in
|
||||
"lowest")
|
||||
echo 0;;
|
||||
|
||||
@@ -7,13 +7,13 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=easy-soc-libs
|
||||
PKG_VERSION:=6.4.32
|
||||
PKG_VERSION:=6.4.34
|
||||
PKG_RELEASE:=1
|
||||
|
||||
LOCAL_DEV=0
|
||||
ifneq ($(LOCAL_DEV),1)
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=88577dd44871eb5d5eafc696b73b1972ada8432a
|
||||
PKG_SOURCE_VERSION:=dd2ab2e5b83d585849aae3d539c1a8cd6dcb7146
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/easy-soc-libs.git
|
||||
PKG_MAINTAINER:=Anjan Chanda <anjan.chanda@iopsys.eu>
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
|
||||
|
||||
@@ -13,7 +13,7 @@ LOCAL_DEV=0
|
||||
ifneq ($(LOCAL_DEV),1)
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/endptmngr.git
|
||||
PKG_SOURCE_VERSION:=1d4f1aafcb929e64597d226a710fd0c1b949ba08
|
||||
PKG_SOURCE_VERSION:=548fa04d2714feeadb500192905fa6fb8172e6dd
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
endif
|
||||
|
||||
@@ -7,6 +7,8 @@ USE_PROCD=1
|
||||
NAME=endptmngr
|
||||
|
||||
start_service() {
|
||||
[ "$(db -q get hw.board.hasVoice)" = "1" ] || return
|
||||
|
||||
procd_open_instance
|
||||
procd_set_param env hw_board_hasDect=$(db get hw.board.hasDect)
|
||||
procd_set_param command $NAME
|
||||
|
||||
@@ -45,12 +45,12 @@ MODULE_INCLUDE=-I$(PKG_BUILD_DIR)
|
||||
ifeq ($(CONFIG_TARGET_iopsys_brcm63xx_arm),y)
|
||||
LINUX_DIR:=$(BUILD_DIR)/bcmkernel/bcm963xx/kernel/linux-4.19
|
||||
MODULES_SUBDIR:=lib/modules/4.19.183
|
||||
TARGET_CROSS:=$(CONFIG_BCM_TOOLCHAIN)/bin/$(CONFIG_BCM_TOOLTUPLE)
|
||||
TARGET_CROSS:=$(CONFIG_BRCM_ALT_TOOLCHAIN_BASE)/$(CONFIG_BRCM_ALT_ARM_TOOLCHAIN_TOPDIR)/bin/$(CONFIG_BRCM_ALT_ARM_TOOLCHAIN_PREFIX)-
|
||||
|
||||
ifeq ($(CONFIG_BCM_CHIP_ID),$(filter $(CONFIG_BCM_CHIP_ID),"63158" "6856" "6858"))
|
||||
# These targets use a 64-bit kernel
|
||||
LINUX_KARCH:=arm64
|
||||
TARGET_CROSS:=/opt/toolchains/crosstools-aarch64-gcc-9.2-linux-4.19-glibc-2.30-binutils-2.32/bin/aarch64-buildroot-linux-gnu-
|
||||
TARGET_CROSS:=$(CONFIG_BRCM_ALT_TOOLCHAIN_BASE)/$(CONFIG_BRCM_ALT_AARCH64_TOOLCHAIN_TOPDIR)/bin/$(CONFIG_BRCM_ALT_AARCH64_TOOLCHAIN_PREFIX)-
|
||||
endif
|
||||
# For some reason, Broadcom's kernel does not set the include paths correctly when compiling out-of-tree modules
|
||||
EXTRA_KCPPFLAGS:="-I $(LINUX_DIR)/../bcmkernel/include -I $(LINUX_DIR)/arch/arm/mach-bcm963xx/include"
|
||||
|
||||
@@ -8,11 +8,11 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=icwmp
|
||||
PKG_VERSION:=8.2.18
|
||||
PKG_VERSION:=8.2.26
|
||||
PKG_FIXUP:=autoreconf
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/icwmp.git
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=00e48a59436160b1692f2da3590904bf296f1ab4
|
||||
PKG_SOURCE_VERSION:=5785827b6e28ec878df142c2d9a7cbac8f8bad54
|
||||
PKG_RELEASE=$(PKG_SOURCE_VERSION)
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
|
||||
@@ -1,6 +1,12 @@
|
||||
#!/bin/sh
|
||||
|
||||
#created by the icwmp package
|
||||
log() {
|
||||
echo "${@}"|logger -t firewall.cwmp -p info
|
||||
}
|
||||
|
||||
if [ ! -f "/var/state/cwmp" ]; then
|
||||
touch "/var/state/cwmp"
|
||||
exit 0;
|
||||
fi
|
||||
|
||||
@@ -8,24 +14,25 @@ zone_name=$(uci -c /var/state -q get cwmp.acs.zonename)
|
||||
port=$(uci -q get cwmp.cpe.port)
|
||||
ipaddr=$(uci -c /var/state -q get cwmp.acs.ip)
|
||||
ip6addr=$(uci -c /var/state -q get cwmp.acs.ip6)
|
||||
incoming_rule=$(uci -q get cwmp.cpe.incoming_rule|tr [A-Z] [a-z])
|
||||
incoming_rule=$(uci -q get cwmp.cpe.incoming_rule|tr 'A-Z' 'a-z')
|
||||
|
||||
if [ "$zone_name" = "" ]; then
|
||||
if [ -z "${zone_name}" ]; then
|
||||
log "empty firewall zone name"
|
||||
exit 0
|
||||
elif [ "$zone_name" = "icwmp" ]; then
|
||||
iptables -nL zone_icwmp_input 2> /dev/null
|
||||
if [ $? != 0 ]; then
|
||||
iptables -N zone_icwmp_input
|
||||
iptables -t filter -A INPUT -j zone_icwmp_input
|
||||
iptables -I zone_icwmp_input -p tcp --dport $port -j REJECT
|
||||
iptables -w 1 -N zone_icwmp_input
|
||||
iptables -w 1 -t filter -A INPUT -j zone_icwmp_input
|
||||
iptables -w 1 -I zone_icwmp_input -p tcp --dport $port -j REJECT
|
||||
else
|
||||
iptables -F zone_icwmp_input
|
||||
iptables -I zone_icwmp_input -p tcp --dport $port -j REJECT
|
||||
iptables -w 1 -F zone_icwmp_input
|
||||
iptables -w 1 -I zone_icwmp_input -p tcp --dport $port -j REJECT
|
||||
fi
|
||||
else
|
||||
iptables -F zone_icwmp_input 2> /dev/null
|
||||
iptables -t filter -D INPUT -j zone_icwmp_input 2> /dev/null
|
||||
iptables -X zone_icwmp_input 2> /dev/null
|
||||
iptables -w 1 -F zone_icwmp_input 2> /dev/null
|
||||
iptables -w 1 -t filter -D INPUT -j zone_icwmp_input 2> /dev/null
|
||||
iptables -w 1 -X zone_icwmp_input 2> /dev/null
|
||||
fi
|
||||
|
||||
cmd="iptables -w 1 -I zone_${zone_name}_input -p tcp"
|
||||
|
||||
@@ -6,16 +6,16 @@ log() {
|
||||
|
||||
handle_icwmp_update() {
|
||||
local defwan=$(uci -q get cwmp.cpe.default_wan_interface)
|
||||
local vendorspecinf=`ubus call network.interface.${defwan} status | jsonfilter -e "@.data.vendorspecinf"`
|
||||
local vendorspecinf=`ifstatus ${defwan} | jsonfilter -e "@.data.vendorspecinf"`
|
||||
|
||||
log "Handling dhcp option value ${vendorspecinf}"
|
||||
[ -n "$vendorspecinf" ] && {
|
||||
local url=""
|
||||
local old_url=$(uci -q get cwmp.acs.dhcp_url)
|
||||
local old_url="$(uci -q get cwmp.acs.dhcp_url)"
|
||||
|
||||
case $vendorspecinf in
|
||||
http://*|https://*)
|
||||
url="$vendorspecinf"
|
||||
url="${vendorspecinf}"
|
||||
;;
|
||||
*)
|
||||
for optval in $vendorspecinf; do
|
||||
@@ -30,9 +30,10 @@ handle_icwmp_update() {
|
||||
|
||||
if [ -n "$url" ]; then
|
||||
log "## icwmp url[${old_url}] changed to [${url}]"
|
||||
if [ -z "${old_url}" -o "${url}" != "${old_url}" ]; then
|
||||
if [ "${url}" != "${old_url}" ]; then
|
||||
log "Restarting icwmp url[${old_url}] changed to [${url}]"
|
||||
uci -q set cwmp.acs.dhcp_url="$url"
|
||||
uci commit cwmp
|
||||
ubus call uci commit '{"config":"cwmp"}'
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -57,15 +57,6 @@ wait_for_resolvfile() {
|
||||
done
|
||||
}
|
||||
|
||||
get_default_wan_interface() {
|
||||
local default_wan_interface
|
||||
|
||||
config_load cwmp
|
||||
config_get default_wan_interface cpe default_wan_interface "wan"
|
||||
|
||||
echo ${default_wan_interface}
|
||||
}
|
||||
|
||||
set_wan_interface() {
|
||||
local wan_interface="${1}"
|
||||
local l3_device=""
|
||||
@@ -95,14 +86,14 @@ copy_cwmp_etc_files_to_varstate() {
|
||||
fi
|
||||
fi
|
||||
|
||||
mkdir -p /var/state/icwmpd
|
||||
if [ -f /etc/icwmpd/.icwmpd_backup_session.xml ]
|
||||
mkdir -p /var/run/icwmpd
|
||||
if [ -f /etc/icwmpd/icwmpd_backup_session.xml ]
|
||||
then
|
||||
mv /etc/icwmpd/.icwmpd_backup_session.xml /var/state/icwmpd 2>/dev/null
|
||||
mv /etc/icwmpd/icwmpd_backup_session.xml /var/run/icwmpd 2>/dev/null
|
||||
fi
|
||||
if [ -f /etc/icwmpd/.dm_enabled_notify.xml ]
|
||||
if [ -f /etc/icwmpd/dm_enabled_notify.xml ]
|
||||
then
|
||||
mv /etc/icwmpd/.dm_enabled_notify /var/state/icwmpd 2>/dev/null
|
||||
mv /etc/icwmpd/dm_enabled_notify /var/run/icwmpd 2>/dev/null
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -111,13 +102,13 @@ copy_cwmp_varstate_files_to_etc() {
|
||||
then
|
||||
cp /var/state/cwmp /etc/icwmpd 2>/dev/null
|
||||
fi
|
||||
if [ -f /var/state/icwmpd/.icwmpd_backup_session.xml ]
|
||||
if [ -f /var/run/icwmpd/icwmpd_backup_session.xml ]
|
||||
then
|
||||
cp /var/state/icwmpd/.icwmpd_backup_session.xml /etc/icwmpd 2>/dev/null
|
||||
cp /var/run/icwmpd/icwmpd_backup_session.xml /etc/icwmpd 2>/dev/null
|
||||
fi
|
||||
if [ -f /var/state/icwmpd/.dm_enabled_notify.xml ]
|
||||
if [ -f /var/run/icwmpd/dm_enabled_notify.xml ]
|
||||
then
|
||||
cp /var/state/icwmpd/.dm_enabled_notify /etc/icwmpd 2>/dev/null
|
||||
cp /var/run/icwmpd/dm_enabled_notify /etc/icwmpd 2>/dev/null
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -130,7 +121,6 @@ validate_acs_section()
|
||||
'periodic_inform_time:string' \
|
||||
'url:string' \
|
||||
'dhcp_url:string' \
|
||||
'dhcp_discovery:or("enable", "disable")' \
|
||||
'compression:or("GZIP","Deflate","Disabled")' \
|
||||
'retry_min_wait_interval:range(1, 65535)' \
|
||||
'retry_interval_multiplier:range(1000, 65535)' \
|
||||
@@ -189,10 +179,32 @@ validate_defaults() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
boot() {
|
||||
local dhcp_url=""
|
||||
local discovery="1"
|
||||
|
||||
config_load cwmp
|
||||
config_get_bool dhcp_discovery acs dhcp_discovery 1
|
||||
config_get dhcp_url acs dhcp_url ""
|
||||
|
||||
if [ "${dhcp_discovery}" == "enable" -o "${dhcp_discovery}" == "1" ]; then
|
||||
if [ -z "${dhcp_url}" ]; then
|
||||
log "dhcp discovery enabled but no dhcp url, trigger update"
|
||||
/etc/icwmpd/update.sh
|
||||
fi
|
||||
fi
|
||||
start
|
||||
}
|
||||
|
||||
start_service() {
|
||||
local enable_cwmp=`uci -q get cwmp.cpe.enable`
|
||||
local wan_interface=$(get_default_wan_interface)
|
||||
local dhcp_discovery=`uci -q get cwmp.acs.dhcp_discovery`
|
||||
local enable_cwmp
|
||||
local wan_interface
|
||||
local dhcp_discovery
|
||||
|
||||
config_load cwmp
|
||||
config_get_bool enable_cwmp cpe enable 1
|
||||
config_get dhcp_discovery acs dhcp_discovery
|
||||
config_get wan_interface cpe default_wan_interface "wan"
|
||||
|
||||
if [ "$enable_cwmp" = "0" -o "$enable_cwmp" = "false" ]; then
|
||||
log "CWMP is not enabled"
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
# Copy defaults by the factory to the cwmp UCI user section.
|
||||
|
||||
# Get Manufacturer OUI.
|
||||
oui=$(uci -q get cwmp.cpe.manufacturer_oui)
|
||||
if [ -z "${oui}" ]; then
|
||||
oui=$(db -q get device.deviceinfo.ManufacturerOUI)
|
||||
fi
|
||||
|
||||
# Get factory base MAC.
|
||||
baseMac=$(db -q get hw.board.basemac)
|
||||
|
||||
# Erase colon and space characters.
|
||||
baseMac=${baseMac//:/}
|
||||
baseMac=${baseMac// /}
|
||||
|
||||
# Caseing and fixed length string.
|
||||
mac=$(printf "%12.12X" $((0x$baseMac)))
|
||||
oui=$(echo "${oui}" | tr 'a-f' 'A-F')
|
||||
|
||||
# Get system serial number.
|
||||
serial=$(db -q get hw.board.serial_number)
|
||||
serial=$(uci -q get cwmp.cpe.serial_number)
|
||||
if [ -z "${serial}" ]; then
|
||||
serial=$(db -q get device.deviceinfo.SerialNumber)
|
||||
fi
|
||||
|
||||
# Get userid values
|
||||
acs_userid=$(uci -q get cwmp.acs.userid)
|
||||
@@ -21,12 +21,12 @@ cpe_userid=$(uci -q get cwmp.cpe.userid)
|
||||
# Only set if they are empty
|
||||
if [ -z "$acs_userid" ]
|
||||
then
|
||||
uci -q set cwmp.acs.userid="${mac:0:6}-${serial}"
|
||||
uci -q set cwmp.acs.userid="${oui}-${serial}"
|
||||
fi
|
||||
|
||||
if [ -z "$cpe_userid" ]
|
||||
then
|
||||
uci -q set cwmp.cpe.userid="${mac:0:6}-${serial}"
|
||||
uci -q set cwmp.cpe.userid="${oui}-${serial}"
|
||||
fi
|
||||
|
||||
# No need for commit here, it is done by uci_apply_defaults().
|
||||
|
||||
@@ -1 +1 @@
|
||||
/var/state/icwmpd/.icwmpd_backup_session.xml
|
||||
/var/run/icwmpd/icwmpd_backup_session.xml
|
||||
|
||||
@@ -6,5 +6,9 @@ config IEEE1905_EXTENSION_ALLOWED
|
||||
bool "Allow plugins to extend 1905 CMDUs and/or TLVs"
|
||||
default y
|
||||
|
||||
config IEEE1905_PLATFORM_HAS_WIFI
|
||||
bool "Platform has WiFi"
|
||||
default y if PACKAGE_libwifi
|
||||
|
||||
endmenu
|
||||
endif
|
||||
|
||||
@@ -5,12 +5,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=ieee1905
|
||||
PKG_VERSION:=4.1.1
|
||||
PKG_VERSION:=4.6.0
|
||||
|
||||
LOCAL_DEV=0
|
||||
ifneq ($(LOCAL_DEV),1)
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=28dbe8330ba82f131771a0cfd502c41867f0ad83
|
||||
PKG_SOURCE_VERSION:=373602c3644ead5c61aece58e1f88f52838bb38b
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/ieee1905.git
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
@@ -37,23 +37,23 @@ endef
|
||||
define Package/libieee1905
|
||||
$(call Package/ieee1905/Default,$(1))
|
||||
TITLE+= (library for CMDU and TLV handling)
|
||||
DEPENDS= +libubox +libuci +libubus +libeasy +libnl-genl +libwifi \
|
||||
DEPENDS= +libubox +libuci +libubus +libeasy +libnl-genl \
|
||||
+libjson-c +libblobmsg-json
|
||||
endef
|
||||
|
||||
define Package/ieee1905
|
||||
$(call Package/ieee1905/Default,$(1))
|
||||
TITLE+= ieee1905d (daemon implementing 1905.1 and provides cli)
|
||||
DEPENDS= +libubox +libuci +libubus +libeasy +libnl-genl +libwifi \
|
||||
+libjson-c +libblobmsg-json +libwifi +ubus +libpthread \
|
||||
+libnl-genl +libieee1905
|
||||
DEPENDS= +libubox +libuci +libubus +libeasy +libnl-genl \
|
||||
+libjson-c +libblobmsg-json +ubus +libpthread \
|
||||
+libieee1905 +IEEE1905_PLATFORM_HAS_WIFI:libwifi
|
||||
endef
|
||||
|
||||
|
||||
define Package/map-plugin
|
||||
$(call Package/ieee1905/Default,$(1))
|
||||
TITLE:=Multi-AP (Easymesh) plugin
|
||||
DEPENDS= +libubox +libuci +libubus +libeasy +libnl-genl +libwifi \
|
||||
DEPENDS= +libubox +libuci +libubus +libeasy +libnl-genl \
|
||||
+libjson-c +libblobmsg-json +ieee1905 +libieee1905
|
||||
endef
|
||||
|
||||
@@ -70,6 +70,10 @@ TARGET_CFLAGS += \
|
||||
-I$(STAGING_DIR)/usr/include/libnl3 \
|
||||
-D_GNU_SOURCE
|
||||
|
||||
ifeq ($(CONFIG_IEEE1905_PLATFORM_HAS_WIFI),y)
|
||||
TARGET_CFLAGS += -DHAS_WIFI
|
||||
endif
|
||||
|
||||
MAKE_PATH:=src
|
||||
|
||||
|
||||
@@ -100,6 +104,7 @@ define Build/InstallDev/map-plugin
|
||||
$(INSTALL_DIR) $(1)/usr/lib/ieee1905
|
||||
$(CP) $(PKG_BUILD_DIR)/src/extensions/map/map2.h $(1)/usr/include/map2.h
|
||||
$(CP) $(PKG_BUILD_DIR)/src/extensions/map/map_module.h $(1)/usr/include/map_module.h
|
||||
$(CP) $(PKG_BUILD_DIR)/src/extensions/map/cntlrsync.h $(1)/usr/include/cntlrsync.h
|
||||
$(CP) $(PKG_BUILD_DIR)/src/extensions/map/map.so $(1)/usr/lib/ieee1905/map.so
|
||||
$(CP) $(PKG_BUILD_DIR)/src/extensions/map/libmaputil.so $(1)/usr/lib/libmaputil.so
|
||||
endef
|
||||
|
||||
18
iop/config
18
iop/config
@@ -17,7 +17,6 @@ CONFIG_PACKAGE_ddns-scripts=y
|
||||
CONFIG_PACKAGE_ds-lite=y
|
||||
CONFIG_PACKAGE_ethtool=y
|
||||
CONFIG_PACKAGE_getopt=y
|
||||
CONFIG_PACKAGE_glib2=y
|
||||
CONFIG_PACKAGE_gre=y
|
||||
CONFIG_PACKAGE_icwmp=y
|
||||
CONFIG_PACKAGE_ieee1905=y
|
||||
@@ -40,11 +39,26 @@ CONFIG_PACKAGE_jq=y
|
||||
CONFIG_PACKAGE_libreswan=m
|
||||
CONFIG_PACKAGE_libwifi=y
|
||||
CONFIG_PACKAGE_lscpu=y
|
||||
CONFIG_PACKAGE_luci-nginx=y
|
||||
|
||||
# BEGIN: luci-nginx metapackage with some changes
|
||||
# We do not need luci-theme-bootstrap
|
||||
# We do not want libiwinfo-lua on non-WiFi targets, but it is already
|
||||
# depended on by other luci-packages, so no need to take it in explicitly
|
||||
CONFIG_PACKAGE_nginx=y
|
||||
CONFIG_PACKAGE_nginx-mod-luci=y
|
||||
CONFIG_PACKAGE_luci-mod-admin-full=y
|
||||
CONFIG_PACKAGE_luci-app-firewall=y
|
||||
CONFIG_PACKAGE_luci-app-opkg=y
|
||||
CONFIG_PACKAGE_luci-proto-ppp=y
|
||||
CONFIG_PACKAGE_luci-proto-ipv6=y
|
||||
CONFIG_PACKAGE_rpcd-mod-rrdns=y
|
||||
# END: luci-nginx metapackage with some changes
|
||||
|
||||
# CONFIG_LUCI_JSMIN is not set
|
||||
# CONFIG_LUCI_CSSTIDY is not set
|
||||
CONFIG_PACKAGE_luci-mod-dashboard=y
|
||||
CONFIG_PACKAGE_luci-theme-openwrt-2020=y
|
||||
|
||||
CONFIG_PACKAGE_map=y
|
||||
CONFIG_PACKAGE_miniupnpd=y
|
||||
CONFIG_PACKAGE_mwan3=y
|
||||
|
||||
@@ -13,12 +13,9 @@ function genconfig {
|
||||
export DEVELOPER=0
|
||||
target="bogus"
|
||||
target_config_path=""
|
||||
bcm27xx="target/linux/iopsys-bcm27xx"
|
||||
brcm63xx_arm="target/linux/iopsys-brcm63xx-arm"
|
||||
ramips="target/linux/iopsys-ramips"
|
||||
mediatek="target/linux/iopsys-mediatek"
|
||||
econet="target/linux/iopsys-econet"
|
||||
intel_mips="target/linux/intel_mips"
|
||||
x86="target/linux/iopsys-x86"
|
||||
armvirt="target/linux/iopsys-armvirt"
|
||||
|
||||
@@ -114,21 +111,15 @@ function genconfig {
|
||||
iopsys_brcm63xx_arm=$(cd $brcm63xx_arm; ./genconfig)
|
||||
[ -e $ramips/genconfig ] &&
|
||||
iopsys_ramips=$(cd $ramips; ./genconfig)
|
||||
[ -e $mediatek/genconfig ] &&
|
||||
iopsys_mediatek=$(cd $mediatek; ./genconfig)
|
||||
[ -e $econet/genconfig ] &&
|
||||
iopsys_econet=$(cd $econet; ./genconfig)
|
||||
[ -e $intel_mips/genconfig ] &&
|
||||
iopsys_intel_mips=$(cd $intel_mips; ./genconfig)
|
||||
[ -e $x86/genconfig ] &&
|
||||
iopsys_x86=$(cd $x86; ./genconfig)
|
||||
[ -e $armvirt/genconfig ] &&
|
||||
iopsys_armvirt=$(cd $armvirt; ./genconfig)
|
||||
[ -e $bcm27xx/genconfig ] &&
|
||||
iopsys_bcm27xx=$(cd $bcm27xx; ./genconfig)
|
||||
|
||||
if [ "$profile" == "LIST" ]; then
|
||||
for list in iopsys_brcm63xx_arm iopsys_ramips iopsys_mediatek iopsys_econet iopsys_intel_mips iopsys_x86 iopsys_armvirt iopsys_bcm27xx; do
|
||||
for list in iopsys_brcm63xx_arm iopsys_ramips iopsys_econet iopsys_x86 iopsys_armvirt; do
|
||||
echo "$list based boards:"
|
||||
for b in ${!list}; do
|
||||
echo -e "\t$b"
|
||||
@@ -153,14 +144,6 @@ function genconfig {
|
||||
fi
|
||||
done
|
||||
|
||||
for p in $iopsys_mediatek; do
|
||||
if [ $p == $profile ]; then
|
||||
target="iopsys_mediatek"
|
||||
target_config_path="$mediatek/config"
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
for p in $iopsys_econet; do
|
||||
if [ $p == $profile ]; then
|
||||
target="iopsys_econet"
|
||||
@@ -169,14 +152,6 @@ function genconfig {
|
||||
fi
|
||||
done
|
||||
|
||||
for p in $iopsys_intel_mips; do
|
||||
if [ $p == $profile ]; then
|
||||
target="intel_mips"
|
||||
target_config_path="$intel_mips/config"
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
for p in $iopsys_x86; do
|
||||
if [ $p == $profile ]; then
|
||||
target="iopsys_x86"
|
||||
@@ -192,15 +167,6 @@ function genconfig {
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
for p in $iopsys_bcm27xx; do
|
||||
if [ $p == $profile ]; then
|
||||
target="iopsys_bcm27xx"
|
||||
target_config_path="$bcm27xx/config"
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
}
|
||||
|
||||
git remote -v | grep -qE '(git@|ssh://)' && {
|
||||
@@ -352,32 +318,16 @@ function genconfig {
|
||||
echo "" >> .config
|
||||
fi
|
||||
|
||||
#special handling for intel_mips/iopsys_ramips which use TARGET_DEVICES
|
||||
if [ "$target" = "intel_mips" ]; then
|
||||
subtarget="xrx500"
|
||||
echo "CONFIG_TARGET_${target}=y" >> .config
|
||||
echo "CONFIG_TARGET_${target}_${subtarget}=y" >> .config
|
||||
device=$(echo $BOARDTYPE | tr a-z A-Z)
|
||||
echo "CONFIG_TARGET_DEVICE_${target}_${subtarget}_DEVICE_${device}=y" >> .config
|
||||
elif [ "$target" = "iopsys_ramips" ]; then
|
||||
# Special handling for targets which use TARGET_DEVICES
|
||||
if [ "$target" = "iopsys_ramips" ]; then
|
||||
subtarget="mt7621"
|
||||
echo "CONFIG_TARGET_${target}=y" >> .config
|
||||
echo "CONFIG_TARGET_${target}_${subtarget}=y" >> .config
|
||||
echo "CONFIG_TARGET_DEVICE_${target}_${subtarget}_DEVICE_${BOARDTYPE}=y" >> .config
|
||||
elif [ "$target" = "iopsys_mediatek" ]; then
|
||||
subtarget="mt7622"
|
||||
echo "CONFIG_TARGET_${target}=y" >> .config
|
||||
echo "CONFIG_TARGET_${target}_${subtarget}=y" >> .config
|
||||
echo "CONFIG_TARGET_${target}_${subtarget}_DEVICE_${BOARDTYPE}=y" >> .config
|
||||
elif [ "$target" = "iopsys_econet" ]; then
|
||||
subtarget="en7562"
|
||||
echo "CONFIG_TARGET_${target}=y" >> .config
|
||||
echo "CONFIG_TARGET_${target}_${subtarget}=y" >> .config
|
||||
elif [ "$target" = "iopsys_bcm27xx" ]; then
|
||||
subtarget="iopsys_bcm2711"
|
||||
echo "CONFIG_TARGET_${target}=y" >> .config
|
||||
echo "CONFIG_TARGET_${target}_${subtarget}=y" >> .config
|
||||
echo "CONFIG_TARGET_DEVICE_${target}_${subtarget}_DEVICE_${BOARDTYPE}=y" >> .config
|
||||
else
|
||||
echo "CONFIG_TARGET_${target}=y" >> .config
|
||||
echo "CONFIG_TARGET_${target}_${BOARDTYPE}=y" >> .config
|
||||
|
||||
@@ -12,12 +12,9 @@ function genconfig_min {
|
||||
export DEVELOPER=0
|
||||
target="bogus"
|
||||
target_config_path=""
|
||||
bcm27xx="target/linux/iopsys-bcm27xx"
|
||||
brcm63xx_arm="target/linux/iopsys-brcm63xx-arm"
|
||||
ramips="target/linux/iopsys-ramips"
|
||||
mediatek="target/linux/iopsys-mediatek"
|
||||
econet="target/linux/iopsys-econet"
|
||||
intel_mips="target/linux/intel_mips"
|
||||
x86="target/linux/iopsys-x86"
|
||||
armvirt="target/linux/iopsys-armvirt"
|
||||
|
||||
@@ -113,21 +110,15 @@ function genconfig_min {
|
||||
iopsys_brcm63xx_arm=$(cd $brcm63xx_arm; ./genconfig)
|
||||
[ -e $ramips/genconfig ] &&
|
||||
iopsys_ramips=$(cd $ramips; ./genconfig)
|
||||
[ -e $mediatek/genconfig ] &&
|
||||
iopsys_mediatek=$(cd $mediatek; ./genconfig)
|
||||
[ -e $econet/genconfig ] &&
|
||||
iopsys_econet=$(cd $econet; ./genconfig)
|
||||
[ -e $intel_mips/genconfig ] &&
|
||||
iopsys_intel_mips=$(cd $intel_mips; ./genconfig)
|
||||
[ -e $x86/genconfig ] &&
|
||||
iopsys_x86=$(cd $x86; ./genconfig)
|
||||
[ -e $armvirt/genconfig ] &&
|
||||
iopsys_armvirt=$(cd $armvirt; ./genconfig)
|
||||
[ -e $bcm27xx/genconfig ] &&
|
||||
iopsys_bcm27xx=$(cd $bcm27xx; ./genconfig)
|
||||
|
||||
if [ "$profile" == "LIST" ]; then
|
||||
for list in iopsys_brcm63xx_arm iopsys_ramips iopsys_mediatek iopsys_econet iopsys_intel_mips iopsys_x86 iopsys_armvirt iopsys_bcm27xx; do
|
||||
for list in iopsys_brcm63xx_arm iopsys_ramips iopsys_econet iopsys_x86 iopsys_armvirt; do
|
||||
echo "$list based boards:"
|
||||
for b in ${!list}; do
|
||||
echo -e "\t$b"
|
||||
@@ -152,14 +143,6 @@ function genconfig_min {
|
||||
fi
|
||||
done
|
||||
|
||||
for p in $iopsys_mediatek; do
|
||||
if [ $p == $profile ]; then
|
||||
target="iopsys_mediatek"
|
||||
target_config_path="$mediatek/config"
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
for p in $iopsys_econet; do
|
||||
if [ $p == $profile ]; then
|
||||
target="iopsys_econet"
|
||||
@@ -168,14 +151,6 @@ function genconfig_min {
|
||||
fi
|
||||
done
|
||||
|
||||
for p in $iopsys_intel_mips; do
|
||||
if [ $p == $profile ]; then
|
||||
target="intel_mips"
|
||||
target_config_path="$intel_mips/config"
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
for p in $iopsys_x86; do
|
||||
if [ $p == $profile ]; then
|
||||
target="iopsys_x86"
|
||||
@@ -191,15 +166,6 @@ function genconfig_min {
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
for p in $iopsys_bcm27xx; do
|
||||
if [ $p == $profile ]; then
|
||||
target="iopsys_bcm27xx"
|
||||
target_config_path="$bcm27xx/config"
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
}
|
||||
|
||||
git remote -v | grep -qE '(git@|ssh://)' && {
|
||||
@@ -343,34 +309,16 @@ function genconfig_min {
|
||||
echo "" >> .config
|
||||
fi
|
||||
|
||||
#special handling for intel_mips/iopsys_ramips which use TARGET_DEVICES
|
||||
if [ "$target" = "intel_mips" ]; then
|
||||
subtarget="xrx500"
|
||||
echo "CONFIG_TARGET_${target}=y" >> .config
|
||||
echo "CONFIG_TARGET_${target}_${subtarget}=y" >> .config
|
||||
device=$(echo $BOARDTYPE | tr a-z A-Z)
|
||||
echo "CONFIG_TARGET_DEVICE_${target}_${subtarget}_DEVICE_${device}=y" >> .config
|
||||
elif [ "$target" = "iopsys_ramips" ]; then
|
||||
# Special handling for targets which use TARGET_DEVICES
|
||||
if [ "$target" = "iopsys_ramips" ]; then
|
||||
subtarget="mt7621"
|
||||
echo "CONFIG_TARGET_${target}=y" >> .config
|
||||
echo "CONFIG_TARGET_${target}_${subtarget}=y" >> .config
|
||||
echo "CONFIG_TARGET_DEVICE_${target}_${subtarget}_DEVICE_${BOARDTYPE}=y" >> .config
|
||||
elif [ "$target" = "iopsys_mediatek" ]; then
|
||||
subtarget="mt7622"
|
||||
echo "CONFIG_TARGET_${target}=y" >> .config
|
||||
echo "CONFIG_TARGET_${target}_${subtarget}=y" >> .config
|
||||
echo "CONFIG_TARGET_${target}_${subtarget}_DEVICE_${BOARDTYPE}=y" >> .config
|
||||
elif [ "$target" = "iopsys_econet" ]; then
|
||||
subtarget="en7562"
|
||||
echo "CONFIG_TARGET_${target}=y" >> .config
|
||||
echo "CONFIG_TARGET_${target}_${subtarget}=y" >> .config
|
||||
elif [ "$target" = "iopsys_bcm27xx" ]; then
|
||||
subtarget="iopsys_bcm2711"
|
||||
echo "CONFIG_TARGET_${target}=y" >> .config
|
||||
echo "CONFIG_TARGET_${target}_${subtarget}=y" >> .config
|
||||
echo "CONFIG_TARGET_MULTI_PROFILE=y" >> .config
|
||||
echo "CONFIG_TARGET_PER_DEVICE_ROOTFS=y" >> .config
|
||||
echo "CONFIG_TARGET_DEVICE_${target}_${subtarget}_DEVICE_${BOARDTYPE}=y" >> .config
|
||||
else
|
||||
echo "CONFIG_TARGET_${target}=y" >> .config
|
||||
echo "CONFIG_TARGET_${target}_${BOARDTYPE}=y" >> .config
|
||||
|
||||
30
libmicroxml/patches/101-fix-seg-fault.patch
Normal file
30
libmicroxml/patches/101-fix-seg-fault.patch
Normal file
@@ -0,0 +1,30 @@
|
||||
diff --git a/mxml-attr.c b/mxml-attr.c
|
||||
index 5df4bbd..bd75aa6 100644
|
||||
--- a/mxml-attr.c
|
||||
+++ b/mxml-attr.c
|
||||
@@ -183,8 +183,10 @@ mxmlElementSetAttr(mxml_node_t *node, /* I - Element node */
|
||||
else
|
||||
valuec = NULL;
|
||||
|
||||
- if (mxml_set_attr(node, name, valuec))
|
||||
- free(valuec);
|
||||
+ if (mxml_set_attr(node, name, valuec)) {
|
||||
+ if (valuec != NULL)
|
||||
+ free(valuec);
|
||||
+ }
|
||||
}
|
||||
|
||||
|
||||
@@ -233,8 +235,10 @@ mxmlElementSetAttrf(mxml_node_t *node, /* I - Element node */
|
||||
if (!value)
|
||||
mxml_error("Unable to allocate memory for attribute '%s' in element %s!",
|
||||
name, node->value.element.name);
|
||||
- else if (mxml_set_attr(node, name, value))
|
||||
- free(value);
|
||||
+ else if (mxml_set_attr(node, name, value)) {
|
||||
+ if (value != NULL)
|
||||
+ free(value);
|
||||
+ }
|
||||
}
|
||||
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=map-agent
|
||||
PKG_VERSION:=6.3.2
|
||||
PKG_VERSION:=6.6.0
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||
PKG_SOURCE_VERSION:=39193fccea6493c57d169611d8f21256753f7a3b
|
||||
PKG_SOURCE_VERSION:=69219d6752dacd86040eb529af42d474f37a4f0b
|
||||
PKG_MAINTAINER:=Anjan Chanda <anjan.chanda@iopsys.eu>
|
||||
|
||||
PKG_LICENSE:=PROPRIETARY IOPSYS
|
||||
@@ -21,8 +21,6 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
endif
|
||||
|
||||
PKG_BUILD_DEPENDS:=map-plugin
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/map-agent
|
||||
|
||||
@@ -17,6 +17,7 @@ config agent 'agent'
|
||||
# option steer_legacy_retry_secs '3600'
|
||||
# option assoc_ctrl_secs '30'
|
||||
# option band '2'
|
||||
# option type 'fronthaul'
|
||||
|
||||
#config ap
|
||||
# option ifname 'wl1'
|
||||
@@ -24,8 +25,9 @@ config agent 'agent'
|
||||
# list exclude '00:11:22:33:44:55'
|
||||
# list exclude_btm '00:aa:bb:cc:dd:ee'
|
||||
# option band '5'
|
||||
# option type 'fronthaul'
|
||||
|
||||
#config bk-iface
|
||||
#config bsta
|
||||
# option ifname 'apclii0'
|
||||
# option enabled '1'
|
||||
# option onboarded '0'
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
#!/bin/sh
|
||||
|
||||
wan=$(db -q get hw.board.ethernetWanPort)
|
||||
MAPFILE="/tmp/multiap.backhaul"
|
||||
|
||||
|
||||
[ -z "$wan" ] && exit 1 # no configuration
|
||||
[ "$PORT" != "$wan" ] && exit 0
|
||||
@@ -32,14 +34,16 @@ update_bstas() {
|
||||
}
|
||||
|
||||
if [ "$LINK" = "up" ]; then
|
||||
touch /tmp/map.agent.bsta_global_disable
|
||||
#touch "$MAPFILE"
|
||||
|
||||
config_load "mapagent"
|
||||
bridge=$(uci get mapagent.agent.al_bridge | cut -d '-' -f2)
|
||||
config_foreach remove_from_bridge bsta $bridge
|
||||
config_foreach update_bstas bsta down
|
||||
|
||||
/lib/wifi/multiap set_uplink "eth" "$PORT"
|
||||
else
|
||||
rm -f /tmp/map.agent.bsta_global_disable
|
||||
rm -f "$MAPFILE"
|
||||
config_load "mapagent"
|
||||
config_foreach update_bstas bsta up
|
||||
fi
|
||||
|
||||
@@ -10,7 +10,11 @@
|
||||
. /usr/share/libubox/jshn.sh
|
||||
. /lib/wifi/traffic_separation
|
||||
|
||||
MAPFILE="/tmp/multiap.backhaul"
|
||||
|
||||
diff=0
|
||||
onbrd_bssid=0
|
||||
onbrd_band=0
|
||||
|
||||
usage() {
|
||||
cat <<EOF
|
||||
@@ -233,6 +237,7 @@ write_bsta_config() {
|
||||
|
||||
#echo diff = $diff > /dev/console
|
||||
|
||||
|
||||
config_load mapagent
|
||||
|
||||
mapagent_apply_wl_bsta() {
|
||||
@@ -258,6 +263,7 @@ write_bsta_config() {
|
||||
local section=$1
|
||||
local bsta=$2
|
||||
|
||||
|
||||
config_get ifname $section ifname
|
||||
#echo bsta = $bsta > /dev/console
|
||||
|
||||
@@ -265,15 +271,43 @@ write_bsta_config() {
|
||||
#echo found ifname=$ifname > /dev/console
|
||||
|
||||
config_get bssid $section bssid
|
||||
config_get band $section band
|
||||
ret=$(mapagent_apply_wl_bsta $ifname $bssid)
|
||||
[ "$ret" == "1" ] && diff=1
|
||||
[ "$ret" == "1" ] && {
|
||||
diff=1
|
||||
onbrd_bssid=$bssid
|
||||
onbrd_band=$band
|
||||
}
|
||||
}
|
||||
|
||||
mapagent_apply_bssid_same_band() {
|
||||
apply_config() {
|
||||
local section=$1
|
||||
local bsta=$2
|
||||
|
||||
config_get ifname $section ifname
|
||||
|
||||
[ "$bsta" == "$ifname" ] || return
|
||||
uci -q set wireless.${section}.bssid=$bssid
|
||||
}
|
||||
|
||||
config_get band $1 band
|
||||
config_get onboarded $1 onboarded "0"
|
||||
|
||||
[ "$onbrd_band" != "$band" -o "$onboarded" = "1" ] && return
|
||||
|
||||
config_get ifname $1 ifname
|
||||
|
||||
config_load wireless
|
||||
config_foreach apply_config wifi-iface $ifname $onbrd_bssid
|
||||
uci commit wireless
|
||||
}
|
||||
|
||||
config_foreach mapagent_process_bk bsta $ifname
|
||||
|
||||
#echo result diff = $diff > /dev/console
|
||||
[ "$diff" == "1" ] && {
|
||||
config_foreach mapagent_apply_bssid_same_band bsta
|
||||
ubus call uci commit '{"config":"wireless"}'
|
||||
#echo reloading wireless > /dev/console
|
||||
}
|
||||
@@ -670,6 +704,35 @@ bsta_swap_to_link() {
|
||||
wpa_cli -i "$1" save_config > /dev/null
|
||||
}
|
||||
|
||||
set_uplink_backhaul_info() {
|
||||
local ul_1905id=$1
|
||||
local ul_mac=$2
|
||||
|
||||
json_load "$(cat $MAPFILE)"
|
||||
json_add_string "backhaul_device_id" "$ul_1905id"
|
||||
json_add_string "backhaul_macddr" "$ul_mac"
|
||||
json_dump > "$MAPFILE"
|
||||
json_cleanup
|
||||
}
|
||||
|
||||
set_uplink() {
|
||||
local type=$1
|
||||
local ifname=$2
|
||||
local hwaddr
|
||||
|
||||
hwaddr="$(ifconfig $ifname | grep -i hwaddr | awk '{print $5}' | awk '{print tolower($0)}')"
|
||||
|
||||
json_init
|
||||
json_add_string "type" "$type"
|
||||
json_add_string "ifname" "$ifname"
|
||||
json_add_string "macaddr" "$hwaddr"
|
||||
json_dump > "$MAPFILE"
|
||||
json_cleanup
|
||||
}
|
||||
|
||||
unset_uplink() {
|
||||
rm "$MAPFILE" > /dev/null 2>&1
|
||||
}
|
||||
|
||||
func=$1
|
||||
shift
|
||||
@@ -692,6 +755,9 @@ case "$func" in
|
||||
bsta_scan_on_enabled) bsta_scan_on_enabled $@;;
|
||||
bsta_use_link) bsta_use_link $@;;
|
||||
bsta_swap_to_link) bsta_swap_to_link $@;;
|
||||
set_uplink) set_uplink $@;;
|
||||
set_uplink_backhaul_info) set_uplink_backhaul_info $@;;
|
||||
unset_uplink) unset_uplink $@;;
|
||||
--help|help) usage;;
|
||||
*) usage; exit 1;;
|
||||
esac
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=map-controller
|
||||
PKG_VERSION:=5.2.2
|
||||
PKG_VERSION:=5.4.4
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||
PKG_SOURCE_VERSION:=827cb6e25e7428c7d7c4ed07dd0e018d2f727abc
|
||||
PKG_SOURCE_VERSION:=52e85d2dd2762148aaac808f0d867bce92c69a26
|
||||
|
||||
PKG_LICENSE:=PROPRIETARY IOPSYS
|
||||
PKG_LICENSE_FILES:=LICENSE
|
||||
@@ -20,9 +20,6 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
endif
|
||||
|
||||
|
||||
PKG_BUILD_DEPENDS:=map-plugin
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/map-controller
|
||||
|
||||
@@ -19,12 +19,6 @@ start_service() {
|
||||
config_get_bool enabled controller enabled 1
|
||||
[ "$enabled" -eq 0 ] && return
|
||||
|
||||
config_get_bool sync_from_uci_wireless controller sync_from_uci_wireless 0
|
||||
|
||||
if [ "$sync_from_uci_wireless" -eq 1 ]; then
|
||||
/lib/wifi/multiap sync_mapcontroller_from_wireless
|
||||
fi
|
||||
|
||||
procd_open_instance
|
||||
procd_set_param command "/usr/sbin/mapcontroller" "-d"
|
||||
|
||||
@@ -44,25 +38,13 @@ start_service() {
|
||||
|
||||
service_triggers()
|
||||
{
|
||||
config_load "mapcontroller"
|
||||
|
||||
procd_add_reload_trigger "mapcontroller"
|
||||
config_get_bool sync_from_uci_wireless controller sync_from_uci_wireless 0
|
||||
if [ "$sync_from_uci_wireless" -eq 1 ]; then
|
||||
procd_add_reload_trigger "wireless"
|
||||
fi
|
||||
}
|
||||
|
||||
reload_service() {
|
||||
local enabled
|
||||
|
||||
config_load "mapcontroller"
|
||||
|
||||
config_get_bool sync_from_uci_wireless controller sync_from_uci_wireless 0
|
||||
if [ "$sync_from_uci_wireless" -eq 1 ]; then
|
||||
/lib/wifi/multiap sync_mapcontroller_from_wireless
|
||||
fi
|
||||
|
||||
config_get_bool enabled controller enabled 1
|
||||
if [ "$enabled" -eq 0 ]; then
|
||||
stop
|
||||
|
||||
@@ -6,11 +6,11 @@ include $(TOPDIR)/rules.mk
|
||||
include $(INCLUDE_DIR)/kernel.mk
|
||||
|
||||
PKG_NAME:=map-topology
|
||||
PKG_VERSION:=3.1.0
|
||||
PKG_VERSION:=3.2.0
|
||||
|
||||
LOCAL_DEV:=0
|
||||
ifneq ($(LOCAL_DEV),1)
|
||||
PKG_SOURCE_VERSION:=b7556dcfb023acccbfd293f14ff036814bf25daf
|
||||
PKG_SOURCE_VERSION:=d1fae1ff7a8bc8daea08799b9ffbdeb424903e54
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/map-topology.git
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.xz
|
||||
|
||||
@@ -59,9 +59,6 @@ mld_p_up_interfaces=""
|
||||
mld_p_down_interfaces=""
|
||||
mld_p_exceptions=""
|
||||
|
||||
# Standard parameters need by BCM's multicast daemon
|
||||
allow_brdevice=0
|
||||
|
||||
proxdevs=""
|
||||
ethwan="$(db -q get hw.board.ethernetWanPort)"
|
||||
|
||||
@@ -170,6 +167,36 @@ config_mcast_querier_params() {
|
||||
echo "${protocol}-last-member-query-interval $last_mem_q_int" >> $CONFFILE
|
||||
}
|
||||
|
||||
config_snooping_upstream_interface() {
|
||||
local snooping_upstream_intf=""
|
||||
|
||||
json_load "$(devstatus $1)"
|
||||
logger -t "mcastconf" "$(devstatus $1)"
|
||||
itr=1
|
||||
json_select bridge-members
|
||||
|
||||
# loop over the bridge and find the device on wan port
|
||||
while json_get_var dev $itr; do
|
||||
case "$dev" in
|
||||
*.*)
|
||||
port="$(echo "$dev" | cut -d'.' -f 1)"
|
||||
if [ $port == $ethwan ]; then
|
||||
ifconfig $dev | grep RUNNING >/dev/null && $snooping_upstream_intf="$dev" && break
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
itr=$(($itr + 1))
|
||||
done
|
||||
json_select ..
|
||||
|
||||
# if none of the bridge members are on wan port, set the wan port itself
|
||||
if [ -n "$snooping_upstream_intf" ]; then
|
||||
echo "upstream-interface $snooping_upstream_intf" >>$CONFFILE
|
||||
else
|
||||
echo "upstream-interface $ethwan" >>$CONFFILE
|
||||
fi
|
||||
}
|
||||
|
||||
config_snooping_on_bridge() {
|
||||
local protocol="$1"
|
||||
local bcm_mcast_p=1
|
||||
@@ -187,39 +214,6 @@ config_snooping_on_bridge() {
|
||||
done
|
||||
}
|
||||
|
||||
handle_bridged_proxy_interface() {
|
||||
local p2="$1"
|
||||
local p_enable=0
|
||||
|
||||
if [ "$p2" == "igmp" ]; then
|
||||
p_enable=$igmp_p_enable
|
||||
else
|
||||
p_enable=$mld_p_enable
|
||||
fi
|
||||
|
||||
if [ $p_enable -eq 1 -a $allow_brdevice -eq 1 ]
|
||||
then
|
||||
proxdevs="$proxdevs $2"
|
||||
echo "upstream-interface $2" >>$CONFFILE
|
||||
else
|
||||
json_load "$(devstatus $2)"
|
||||
itr=1
|
||||
json_select bridge-members
|
||||
while json_get_var dev $itr; do
|
||||
case "$dev" in
|
||||
*.*)
|
||||
port="$(echo "$dev" | cut -d'.' -f 1)"
|
||||
if [ $port == $ethwan ]; then
|
||||
ifconfig $dev | grep RUNNING >/dev/null && proxdevs="$proxdevs $dev" && break
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
itr=$(($itr + 1))
|
||||
done
|
||||
json_select ..
|
||||
fi
|
||||
}
|
||||
|
||||
config_mcast_proxy_interface() {
|
||||
local itr
|
||||
local p1="$1"
|
||||
@@ -234,7 +228,8 @@ config_mcast_proxy_interface() {
|
||||
for proxif in $2; do
|
||||
case "$proxif" in
|
||||
br-*)
|
||||
handle_bridged_proxy_interface $p1 $proxif
|
||||
proxdevs="$proxdevs $proxif"
|
||||
echo "upstream-interface $proxif" >>$CONFFILE
|
||||
;;
|
||||
*)
|
||||
ifconfig $proxif | grep RUNNING >/dev/null && proxdevs="$proxdevs $proxif"
|
||||
@@ -246,7 +241,12 @@ config_mcast_proxy_interface() {
|
||||
echo "${p1}-proxy-interfaces $proxdevs" >> $CONFFILE
|
||||
fi
|
||||
|
||||
[ -n "$proxdevs" ] && echo "${p1}-mcast-interfaces $proxdevs" >> $CONFFILE
|
||||
# if proxdevs is empty set the wan port as mcast-interface
|
||||
if [ -n "$proxdevs" ]; then
|
||||
echo "${p1}-mcast-interfaces $proxdevs" >> $CONFFILE
|
||||
else
|
||||
echo "${p1}-mcast-interfaces $ethwan" >> $CONFFILE
|
||||
fi
|
||||
}
|
||||
|
||||
configure_mcpd_snooping() {
|
||||
@@ -259,14 +259,14 @@ configure_mcpd_snooping() {
|
||||
if [ "$protocol" == "igmp" ]; then
|
||||
config_snooping_common_params $protocol $igmp_s_version $igmp_s_robustness $igmp_s_mode
|
||||
config_mcast_querier_params $protocol $igmp_s_query_interval $igmp_s_q_resp_interval $igmp_s_last_mem_q_int
|
||||
config_mcast_proxy_interface $protocol "$igmp_s_iface"
|
||||
config_snooping_upstream_interface "$igmp_s_iface"
|
||||
config_snooping_on_bridge $protocol $igmp_s_iface $igmp_s_mode
|
||||
exceptions=$igmp_s_exceptions
|
||||
fast_leave=$igmp_s_fast_leave
|
||||
elif [ "$protocol" == "mld" ]; then
|
||||
config_snooping_common_params $protocol $mld_s_version $mld_s_robustness $mld_s_mode
|
||||
config_mcast_querier_params $protocol $mld_s_query_interval $mld_s_q_resp_interval $mld_s_last_mem_q_int
|
||||
config_mcast_proxy_interface $protocol "$mld_s_iface"
|
||||
config_snooping_upstream_interface "$mld_s_iface"
|
||||
config_snooping_on_bridge $protocol $mld_s_iface $mld_s_mode
|
||||
exceptions=$mld_s_exceptions
|
||||
fast_leave=$mld_s_fast_leave
|
||||
|
||||
@@ -5,12 +5,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=obuspa
|
||||
PKG_VERSION:=4.1.0.16
|
||||
PKG_VERSION:=4.1.0.18
|
||||
|
||||
LOCAL_DEV:=0
|
||||
ifneq ($(LOCAL_DEV),1)
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=9db79a21298becd2c6a133abad3063f532fc281b
|
||||
PKG_SOURCE_VERSION:=af3d4663d66942e3b0e3253375c5620629769aa5
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/fork/obuspa.git
|
||||
PKG_MAINTAINER:=Vivek Dutta <vivek.dutta@iopsys.eu>
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
|
||||
@@ -223,18 +223,14 @@ validate_mqtt_client_section()
|
||||
'ConnectRetryMaxInterval:uinteger:60'
|
||||
}
|
||||
|
||||
get_oui_from_hw() {
|
||||
local oui=$(uci -q get cwmp.cpe.manufacturer_oui)
|
||||
|
||||
if [ -z "${oui}" ]; then
|
||||
oui="$(db get device.deviceinfo.ManufacturerOUI)"
|
||||
fi
|
||||
get_oui_from_db() {
|
||||
local oui="$(db get device.deviceinfo.ManufacturerOUI)"
|
||||
|
||||
echo "${oui}"
|
||||
}
|
||||
|
||||
get_serial_from_hw() {
|
||||
local serial="$(db get hw.board.serial_number)"
|
||||
get_serial_from_db() {
|
||||
local serial="$(db get device.deviceinfo.SerialNumber)"
|
||||
|
||||
# this can encoded further
|
||||
echo "${serial}"
|
||||
@@ -254,8 +250,8 @@ publish_endpoint() {
|
||||
config_load obuspa
|
||||
config_get AgentEndpointID localagent EndpointID ""
|
||||
if [ -z "${AgentEndpointID}" ]; then
|
||||
serial=$(get_serial_from_hw)
|
||||
oui=$(get_oui_from_hw)
|
||||
serial=$(get_serial_from_db)
|
||||
oui=$(get_oui_from_db)
|
||||
AgentEndpointID="os::${oui}-${serial}"
|
||||
fi
|
||||
|
||||
|
||||
@@ -289,8 +289,8 @@ parser_timeout()
|
||||
#data format is digital with time unit
|
||||
#10s-10 seconds 10m-10 minutes 10h-10 hours 10d-10 days
|
||||
if [ -n "$1" ]; then
|
||||
flag=$(echo "$1"| tr -d [0-9] | tr '[A-Z]' '[a-z]')
|
||||
data=$(echo "$1"| tr -cd [0-9])
|
||||
flag=$(echo "$1"| tr -d '0-9' | tr 'A-Z' 'a-z')
|
||||
data=$(echo "$1"| tr -cd '0-9')
|
||||
|
||||
case $flag in
|
||||
m)
|
||||
|
||||
@@ -5,12 +5,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=periodicstats
|
||||
PKG_VERSION:=1.0.5
|
||||
PKG_VERSION:=1.1.0
|
||||
|
||||
LOCAL_DEV:=0
|
||||
ifneq ($(LOCAL_DEV),1)
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=26d65740dad0fd4e295a1bd88cd059b2bfaaf5af
|
||||
PKG_SOURCE_VERSION:=7426c7458f792cc66920c206d62869c5620f1400
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/periodicstats.git
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
@@ -26,7 +26,7 @@ define Package/periodicstats
|
||||
SECTION:=utils
|
||||
CATEGORY:=Utilities
|
||||
TITLE:=Periodic Statistics Daemon
|
||||
DEPENDS:=+libuci +libubox +libubus +libblobmsg-json +libjson-c +libbbfdm +libbbf_api +uspd
|
||||
DEPENDS:=+libuci +libubox +libubus +libblobmsg-json +libjson-c +libbbf_api
|
||||
endef
|
||||
|
||||
define Package/periodicstats/description
|
||||
|
||||
@@ -12,7 +12,7 @@ PKG_NAME:=peripheral_manager
|
||||
PKG_VERSION:=1.0.6
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE_VERSION:=785166a9861a119623556163179915727896156b
|
||||
PKG_SOURCE_VERSION:=15ba90f01914113e7c5e8f8a6df6279c882e8265
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/peripheral-manager
|
||||
|
||||
|
||||
@@ -6,11 +6,11 @@ usage () {
|
||||
}
|
||||
|
||||
[ $# -ne 1 ] && usage
|
||||
ledstate=$(echo $1 | tr '[A-Z]' '[a-z]')
|
||||
ledstate=$(echo $1 | tr 'A-Z' 'a-z')
|
||||
|
||||
case $ledstate in
|
||||
normal|test|allon|alloff|production)
|
||||
ubus call leds set "{\"state\" : \"$ledstate\"}"
|
||||
ubus call leds set "{\"state\" : \"$ledstate\"}"
|
||||
;;
|
||||
*)
|
||||
usage
|
||||
|
||||
38
ponmngr/Makefile
Normal file
38
ponmngr/Makefile
Normal file
@@ -0,0 +1,38 @@
|
||||
#
|
||||
# Copyright (C) 2013-2021 iopsys
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
include $(INCLUDE_DIR)/kernel.mk
|
||||
|
||||
PKG_NAME:=ponmngr
|
||||
PKG_VERSION:=1.0.0
|
||||
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||
|
||||
PKG_LICENSE:=GPL-2.0-only
|
||||
PKG_LICENSE_FILES:=LICENSE
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/ponmngr
|
||||
CATEGORY:=Utilities
|
||||
TITLE:=ponmngr packets manager daemon
|
||||
endef
|
||||
|
||||
define Package/ponmngr/description
|
||||
Configures pon
|
||||
endef
|
||||
|
||||
#define Build/Prepare
|
||||
# $(CP) -rf ./ponmngr/* $(PKG_BUILD_DIR)/
|
||||
#endef
|
||||
|
||||
define Build/Compile
|
||||
endef
|
||||
|
||||
define Package/ponmngr/install
|
||||
$(CP) ./files/* $(1)/
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,ponmngr))
|
||||
36
ponmngr/files/etc/init.d/pon
Executable file
36
ponmngr/files/etc/init.d/pon
Executable file
@@ -0,0 +1,36 @@
|
||||
#!/bin/sh /etc/rc.common
|
||||
|
||||
START=98
|
||||
STOP=10
|
||||
|
||||
USE_PROCD=1
|
||||
NAME=ponmngr
|
||||
PROG="/usr/sbin/omcid start"
|
||||
|
||||
include /lib/pon
|
||||
|
||||
|
||||
start_service() {
|
||||
if [ -f "/etc/config/pon" ]; then
|
||||
procd_open_instance $NAME
|
||||
procd_set_param command ${PROG}
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
start_gpon
|
||||
fi
|
||||
}
|
||||
|
||||
boot() {
|
||||
start
|
||||
}
|
||||
|
||||
stop_service() {
|
||||
service_stop ${PROG}
|
||||
stop_gpon
|
||||
}
|
||||
|
||||
reload_service() {
|
||||
stop
|
||||
start
|
||||
}
|
||||
|
||||
27
ponmngr/files/etc/uci-defaults/60-pon-generate
Executable file
27
ponmngr/files/etc/uci-defaults/60-pon-generate
Executable file
@@ -0,0 +1,27 @@
|
||||
#!/bin/sh
|
||||
|
||||
basemac="$(db -q get hw.board.basemac | tr -d ':')"
|
||||
|
||||
if [ -s "/etc/config/pon" ]; then
|
||||
if uci -q get pon.globals >/dev/null; then
|
||||
# return if there is any valid content
|
||||
exit
|
||||
else
|
||||
rm -f /etc/config/pon
|
||||
fi
|
||||
fi
|
||||
touch /etc/config/pon
|
||||
|
||||
mac=''
|
||||
if [ -z "$basemac" ]; then
|
||||
mac="12345678"
|
||||
else
|
||||
# read last 8 characters of basemac without :
|
||||
mac=${basemac: -8}
|
||||
fi
|
||||
|
||||
uci set pon.globals=globals
|
||||
uci set pon.globals.enabled="1"
|
||||
uci set pon.globals.serial_number="BRCM$mac"
|
||||
|
||||
uci commit pon
|
||||
70
ponmngr/files/lib/pon/broadcom.sh
Executable file
70
ponmngr/files/lib/pon/broadcom.sh
Executable file
@@ -0,0 +1,70 @@
|
||||
#!/bin/sh
|
||||
. /lib/functions.sh
|
||||
. /usr/share/libubox/jshn.sh
|
||||
|
||||
configure_snpwd() {
|
||||
local serial_no password
|
||||
serial_no="$1"
|
||||
password="$2"
|
||||
|
||||
# serial number comprises of 2 parts, vendor id and vendor specific, the vendor id is
|
||||
# a string while the vendor specific is a hex, so split the 2 and set accordingly
|
||||
local vendor_id vendor_specific
|
||||
vendor_id=${serial_no:0:4}
|
||||
vendor_specific=${serial_no: -8}
|
||||
|
||||
# attempt to conver vendor_id from string to hex
|
||||
vendor_id=$(echo $vendor_id | hexdump -e '4/1 "%02X" "\n"')
|
||||
vendor_id=${vendor_id:0:8}
|
||||
|
||||
bdmf_shell -c `cat /var/bdmf_sh_id` -cmd /b/configure gpon onu_sn={vendor_id=$vendor_id,vendor_specific=$vendor_specific}
|
||||
if [ -n "$password" ]; then
|
||||
password=$(echo $password | hexdump -n ${#password} -e '16/1 "%02X""\n"')
|
||||
bdmf_shell -c `cat /var/bdmf_sh_id` -cmd /b/configure gpon password=$password
|
||||
fi
|
||||
}
|
||||
|
||||
configure_gpon() {
|
||||
local enabled serial_no password
|
||||
config_load pon
|
||||
config_get enabled globals "enabled"
|
||||
|
||||
if [ "$enabled" == "0" ]; then
|
||||
exit
|
||||
fi
|
||||
|
||||
config_get serial_no globals "serial_number"
|
||||
config_get password globals "password"
|
||||
|
||||
configure_snpwd $serial_no $password
|
||||
}
|
||||
|
||||
start_gpon() {
|
||||
if [ -n "$(which gponctl)" ]; then
|
||||
configure_gpon
|
||||
gponctl start
|
||||
fi
|
||||
}
|
||||
|
||||
stop_gpon() {
|
||||
if [ -n "$(which gponctl)" ]; then
|
||||
gponctl stop
|
||||
fi
|
||||
}
|
||||
|
||||
get_gpon_status() {
|
||||
json_init
|
||||
status="$(gponctl getstate)"
|
||||
admin_status="$(echo $status | head -n1 | awk '{print $8;}')"
|
||||
json_add_string "admin_status" "$admin_status"
|
||||
op_status="$(echo $status | head -n1 | awk '{print $12;}')"
|
||||
case $op_status in
|
||||
NUMBER)
|
||||
op_status="$(echo $status | head -n1 | awk '{print $13;}')"
|
||||
;;
|
||||
esac
|
||||
|
||||
op_status=${op_status:1:2}
|
||||
json_add_string "operational_status" "$op_status"
|
||||
json_dump
|
||||
}
|
||||
19
ponmngr/files/usr/libexec/rpcd/pon
Executable file
19
ponmngr/files/usr/libexec/rpcd/pon
Executable file
@@ -0,0 +1,19 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /usr/share/libubox/jshn.sh
|
||||
. /lib/functions.sh
|
||||
include /lib/pon
|
||||
|
||||
case "$1" in
|
||||
list)
|
||||
echo '{ "status": {} }'
|
||||
;;
|
||||
call)
|
||||
case "$2" in
|
||||
status)
|
||||
get_gpon_status
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
|
||||
@@ -1,19 +1,9 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /lib/network/utils.sh
|
||||
populate_config_from_db() {
|
||||
. /lib/network/utils.sh
|
||||
|
||||
populate_config(){
|
||||
if [ -s "/etc/config/ports" ]; then
|
||||
if uci -q get ports.@ethport[0] >/dev/null; then
|
||||
# return if there is any valid content
|
||||
return 0
|
||||
else
|
||||
rm -f /etc/config/ports
|
||||
fi
|
||||
fi
|
||||
touch /etc/config/ports
|
||||
|
||||
local portorder="$(db -q get hw.board.ethernetPortOrder)"
|
||||
portorder="$(db -q get hw.board.ethernetPortOrder)"
|
||||
for port in $portorder; do
|
||||
uci add ports ethport
|
||||
uci rename ports.@ethport[-1]="$(get_port_name $port)"
|
||||
@@ -35,4 +25,44 @@ populate_config(){
|
||||
uci commit ports
|
||||
}
|
||||
|
||||
[ -f /sbin/db -a -f /etc/board-db/config/hw ] && populate_config
|
||||
populate_config_from_device_tree() {
|
||||
for port in $(find /proc/device-tree/ -name "port@*"); do
|
||||
port="$(cat $port/label)"
|
||||
[ -n "$port" ] || continue
|
||||
[ "$port" = "cpu" ] && continue
|
||||
PORT="$(echo $port | tr '[a-z]' '[A-Z]')"
|
||||
uci add ports ethport
|
||||
uci rename ports.@ethport[-1]="$PORT"
|
||||
uci set ports.@ethport[-1].enabled=1
|
||||
uci set ports.@ethport[-1].name="$PORT"
|
||||
uci set ports.@ethport[-1].ifname="$port"
|
||||
uci set ports.@ethport[-1].speed=1000
|
||||
uci set ports.@ethport[-1].duplex="full"
|
||||
uci set ports.@ethport[-1].autoneg=1
|
||||
uci set ports.@ethport[-1].eee=0
|
||||
if [ "$port" = "wan" ]; then
|
||||
uci set ports.@ethport[-1].pause=1
|
||||
uci set ports.@ethport[-1].uplink=1
|
||||
else
|
||||
uci set ports.@ethport[-1].pause=0
|
||||
fi
|
||||
done
|
||||
uci commit ports
|
||||
}
|
||||
|
||||
if [ -s "/etc/config/ports" ]; then
|
||||
if uci -q get ports.@ethport[0] >/dev/null; then
|
||||
# exit if there is any valid content
|
||||
exit 0
|
||||
else
|
||||
rm -f /etc/config/ports
|
||||
fi
|
||||
fi
|
||||
|
||||
touch /etc/config/ports
|
||||
|
||||
if [ -f /sbin/db ] && [ -f /etc/board-db/config/hw ]; then
|
||||
populate_config_from_db
|
||||
elif [ -d /proc/device-tree/ ]; then
|
||||
populate_config_from_device_tree
|
||||
fi
|
||||
|
||||
@@ -6,12 +6,12 @@ include $(TOPDIR)/rules.mk
|
||||
include $(INCLUDE_DIR)/kernel.mk
|
||||
|
||||
PKG_NAME:=qosmngr
|
||||
PKG_VERSION:=1.0.2
|
||||
PKG_VERSION:=1.0.4
|
||||
|
||||
LOCAL_DEV:=0
|
||||
ifneq ($(LOCAL_DEV),1)
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=460327011d932580f55c7b70acb1e652dd3c95a3
|
||||
PKG_SOURCE_VERSION:=e3d608e4bacd367fed99bcdd7f56b3fba7b02891
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/qosmngr.git
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
|
||||
@@ -21,6 +21,10 @@ generate_queue(){
|
||||
case $cpu_model in
|
||||
68*) no_of_q="0 1 2 3" ;;
|
||||
esac
|
||||
|
||||
if grep -qE '[0-9]+ archer$' /proc/devices; then
|
||||
no_of_q="0 1 2 3"
|
||||
fi
|
||||
fi
|
||||
|
||||
i=0
|
||||
|
||||
@@ -327,6 +327,15 @@ broute_filter_on_ether_type() {
|
||||
BR_RULE="$BR_RULE --proto $1"
|
||||
}
|
||||
|
||||
broute_filter_on_dscp() {
|
||||
# The broadcom option --ip-dscp-extend actually accepts tos
|
||||
# and not dscp and that too in hex, hence, perform the conversion
|
||||
# from dscp in uci to tos first and then convert to hex
|
||||
tos_val=$(($1<<2))
|
||||
tos_hex=$(printf "%x" $tos_val)
|
||||
BR_RULE="$BR_RULE --ip-dscp-extend $tos_hex"
|
||||
}
|
||||
|
||||
broute_filter_on_vid() {
|
||||
case "$BR_RULE" in
|
||||
*proto*)
|
||||
@@ -357,6 +366,7 @@ handle_ebtables_rules() {
|
||||
config_get src_if "$sid" "ifname"
|
||||
config_get src_mac "$sid" "src_mac"
|
||||
config_get dst_mac "$sid" "dst_mac"
|
||||
config_get dscp_filter "$sid" "dscp_filter"
|
||||
config_get pcp_check "$sid" "pcp_check"
|
||||
config_get eth_type "$sid" "ethertype"
|
||||
config_get vid "$sid" "vid_check"
|
||||
@@ -395,6 +405,13 @@ handle_ebtables_rules() {
|
||||
is_l2_rule=1
|
||||
fi
|
||||
|
||||
if [ -n "$dscp_filter" ]; then
|
||||
# filter on ethertype and proto is same thing
|
||||
broute_filter_on_ether_type IPv4
|
||||
broute_filter_on_dscp $dscp_filter
|
||||
is_l2_rule=1
|
||||
fi
|
||||
|
||||
if [ -n "$eth_type" ]; then
|
||||
broute_filter_on_ether_type $eth_type
|
||||
is_l2_rule=1
|
||||
|
||||
@@ -6,9 +6,9 @@ include $(TOPDIR)/rules.mk
|
||||
include $(INCLUDE_DIR)/kernel.mk
|
||||
|
||||
PKG_NAME:=questd
|
||||
PKG_VERSION:=5.2.2
|
||||
PKG_VERSION:=5.2.3
|
||||
|
||||
PKG_SOURCE_VERSION:=cd05311b505cc5025a8559c616b55e9fb4d1857d
|
||||
PKG_SOURCE_VERSION:=cf54bd65ec821ac67f3aa1caeebcd3ea9aae07ad
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/questd
|
||||
|
||||
|
||||
@@ -5,14 +5,14 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=rulengd
|
||||
PKG_VERSION:=1.2.4
|
||||
PKG_VERSION:=1.2.6
|
||||
PKG_RELEASE:=1
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
PKG_INSTALL:=1
|
||||
|
||||
PKG_SOURCE_PROTO=git
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/rulengd.git
|
||||
PKG_SOURCE_VERSION:=070a9778c2511a6f52a15904e29350aed69abdac
|
||||
PKG_SOURCE_VERSION:=e323bebe85cd7fb4eeb6cee535188227bc9b81e3
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
PKG_SOURCE_SUBDIR:=${PKG_NAME}-${PKG_VERSION}
|
||||
|
||||
@@ -5,11 +5,11 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=sulu
|
||||
PKG_VERSION:=0.2.21
|
||||
PKG_VERSION:=0.2.27
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/sulu.git
|
||||
PKG_SOURCE_VERSION:=1cb1723f36718997968e923732fd6327a354689a
|
||||
PKG_SOURCE_VERSION:=5dc2df8dbfe442504a99e46ddf07aefc9fad5faa
|
||||
|
||||
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION)
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
|
||||
9
swmodd/Config.in
Normal file
9
swmodd/Config.in
Normal file
@@ -0,0 +1,9 @@
|
||||
if PACKAGE_swmodd
|
||||
|
||||
menu "Configuration"
|
||||
|
||||
config SWMOD_HOST_IS_EXECENV
|
||||
bool "Enable host system as execution environment"
|
||||
default n
|
||||
endmenu
|
||||
endif
|
||||
@@ -6,12 +6,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=swmodd
|
||||
PKG_VERSION:=2.0.15
|
||||
PKG_VERSION:=2.0.21
|
||||
|
||||
LOCAL_DEV:=0
|
||||
ifneq ($(LOCAL_DEV),1)
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=39e711d51eed6d6268b18011cf7c40fc71eb332e
|
||||
PKG_SOURCE_VERSION:=78b54d0ed0223a9787133597d3beaa5e97d97520
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/swmodd.git
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
@@ -35,6 +35,10 @@ define Package/swmodd/description
|
||||
Software module daemon to manage software/deployment units using TR181 datamodel.
|
||||
endef
|
||||
|
||||
define Package/swmodd/config
|
||||
source "$(SOURCE)/Config.in"
|
||||
endef
|
||||
|
||||
TARGET_CFLAGS += \
|
||||
-I$(STAGING_DIR)/usr/include \
|
||||
-D_GNU_SOURCE
|
||||
@@ -44,6 +48,11 @@ MAKE_FLAGS += \
|
||||
SWMOD_LXC="yes"
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_SWMOD_HOST_IS_EXECENV),y)
|
||||
MAKE_FLAGS += \
|
||||
SWMOD_HOST_IS_EXECENV="yes"
|
||||
endif
|
||||
|
||||
ifeq ($(LOCAL_DEV),1)
|
||||
define Build/Prepare
|
||||
$(CP) -rf ~/git/swmodd/* $(PKG_BUILD_DIR)/
|
||||
|
||||
@@ -8,17 +8,19 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=twamp
|
||||
PKG_VERSION:=1.0.1
|
||||
PKG_VERSION:=1.1.0
|
||||
|
||||
PKG_SOURCE_VERSION:=dbddaa0c4d826dfdf37bb92f98a2b2ad23035ca3
|
||||
LOCAL_DEV:=0
|
||||
ifneq ($(LOCAL_DEV),1)
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/twamp.git
|
||||
|
||||
PKG_SOURCE_VERSION:=a0f7355afea41dbafd443d119cb394e038e70dc6
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
endif
|
||||
|
||||
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||
|
||||
PKG_LICENSE:=GPL-2.0-only
|
||||
PKG_LICENSE_FILES:=LICENSE
|
||||
|
||||
@@ -28,23 +30,36 @@ define Package/$(PKG_NAME)
|
||||
SECTION:=utils
|
||||
CATEGORY:=Utilities
|
||||
SUBMENU:=TRx69
|
||||
TITLE:=BBF twamp feature
|
||||
DEPENDS:=+libuci +libbbf_api
|
||||
TITLE:=BBF TWAMP/TWAMP Light feature
|
||||
DEPENDS:=+libuci +libbbf_api +ubox +libubus
|
||||
endef
|
||||
|
||||
define Package/$(PKG_NAME)/description
|
||||
BBF twamp feature
|
||||
BBF TWAMP/TWAMP Light feature
|
||||
endef
|
||||
|
||||
TARGET_CFLAGS += \
|
||||
-D_GNU_SOURCE
|
||||
|
||||
ifeq ($(LOCAL_DEV),1)
|
||||
define Build/Prepare
|
||||
$(CP) -rf ~/git/twamp/* $(PKG_BUILD_DIR)/
|
||||
endef
|
||||
endif
|
||||
|
||||
define Package/$(PKG_NAME)/install
|
||||
$(INSTALL_DIR) $(1)/usr/sbin
|
||||
$(INSTALL_DIR) $(1)/usr/lib/bbfdm
|
||||
$(INSTALL_DIR) $(1)/etc/uci-defaults
|
||||
$(INSTALL_DIR) $(1)/etc/config
|
||||
$(INSTALL_DIR) $(1)/etc/init.d
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/twampd $(1)/usr/sbin/
|
||||
$(INSTALL_DIR) $(1)/usr/lib/bbfdm
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/*.so $(1)/usr/lib/bbfdm
|
||||
$(CP) ./files/* $(1)/
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/libtwamp.so $(1)/usr/lib/bbfdm/libtwamp.so
|
||||
$(INSTALL_DATA) ./files/etc/config/twamp $(1)/etc/config/twamp
|
||||
$(INSTALL_BIN) ./files/etc/init.d/twampd $(1)/etc/init.d/twampd
|
||||
$(INSTALL_BIN) ./files/etc/firewall.twamp $(1)/etc/firewall.twamp
|
||||
$(INSTALL_BIN) ./files/etc/uci-defaults/92-twampfirewall $(1)/etc/uci-defaults/92-twampfirewall
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,$(PKG_NAME)))
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
|
||||
config twamp 'twamp'
|
||||
option id '1'
|
||||
option enable '1'
|
||||
option twamp_light '1'
|
||||
#Log levels: Critical=0, Warning=1, Notice=2, Info=3, Debug=4
|
||||
option log_level '3'
|
||||
|
||||
config twamp_reflector
|
||||
option id '1'
|
||||
config twamp_reflector 'reflector_1'
|
||||
option enable '0'
|
||||
option interface 'lan'
|
||||
option interface 'wan'
|
||||
option port '862'
|
||||
option max_ttl '1'
|
||||
|
||||
|
||||
31
twamp/files/etc/firewall.twamp
Normal file
31
twamp/files/etc/firewall.twamp
Normal file
@@ -0,0 +1,31 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /lib/functions.sh
|
||||
#created by the icwmp package
|
||||
log() {
|
||||
echo "${@}"|logger -t firewall.twamp -p info
|
||||
}
|
||||
|
||||
if [ ! -f "/etc/config/twamp" ]; then
|
||||
exit 0;
|
||||
fi
|
||||
|
||||
function configure_firewall()
|
||||
{
|
||||
local enable port interface
|
||||
|
||||
config_get enable ${1} enable "0"
|
||||
config_get port ${1} port
|
||||
config_get interface ${1} interface
|
||||
if [ "$enable" -eq 0 -o -z "${port}" -o -z "${interface}" ]; then
|
||||
return 0;
|
||||
fi
|
||||
|
||||
iptables -w 1 -nL zone_${interface}_input 2>/dev/null 1>&2
|
||||
if [ "$?" -eq 0 ]; then
|
||||
iptables -w 1 -I zone_${interface}_input -p udp --dport "${port}" -j ACCEPT -m comment --comment "TWAMP reflector port"
|
||||
fi
|
||||
}
|
||||
|
||||
config_load twamp
|
||||
config_foreach configure_firewall twamp_reflector
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/bin/sh /etc/rc.common
|
||||
#TWAMP Reflector software
|
||||
# Copyright (C) 2020 iopsys Software Solutions AB
|
||||
#Author: Amin Ben Ramdhane <amin.benramdhane@pivasoftware.com>
|
||||
# TWAMP Reflector software
|
||||
# Copyright (C) 2020-2022 IOPSYS Software Solutions AB
|
||||
# Author: Amin Ben Ramdhane <amin.benramdhane@pivasoftware.com>
|
||||
|
||||
START=99
|
||||
STOP=10
|
||||
@@ -10,45 +10,18 @@ USE_PROCD=1
|
||||
PROG="/usr/sbin/twampd"
|
||||
|
||||
start_service() {
|
||||
local id=`uci -q get twamp.twamp.id`
|
||||
local connection=`uci show twamp | grep "twamp.@twamp_reflector.*id=\'$id\'" | cut -d "." -f 2`
|
||||
local enable=`uci -q get twamp.$connection.enable`
|
||||
local interface=`uci -q get twamp.$connection.interface`
|
||||
local port=`uci -q get twamp.$connection.port`
|
||||
local port_list=`uci -q get twamp.$connection.port_list`
|
||||
port_list=`echo $port_list | tr "," " "`
|
||||
local enable=`uci -q get twamp.twamp.enable`
|
||||
if [ "$enable" = "1" ]; then
|
||||
if [ $interface = "wan" ]; then
|
||||
for str in $port_list; do
|
||||
if [ "${str/-}" != "$str" ] ; then
|
||||
str=`echo $str | tr "-" ":"`
|
||||
fi
|
||||
iptables -I zone_wan_input -p udp --dport "$str" -j ACCEPT -m comment --comment "Open UDP allowed port"
|
||||
iptables -I zone_wan_input -p tcp --dport "$port" -j ACCEPT -m comment --comment "Open TCP allowed port"
|
||||
done
|
||||
fi
|
||||
procd_open_instance
|
||||
procd_set_param command "$PROG"
|
||||
procd_set_param respawn "3" "7" "0"
|
||||
procd_close_instance
|
||||
else
|
||||
if [ $interface = "wan" ]; then
|
||||
if [ "${str/-}" != "$str" ] ; then
|
||||
str=`echo $str | tr "-" ":"`
|
||||
fi
|
||||
iptables -I zone_wan_input -p udp --dport "$str" -j REJECT -m comment --comment "Close UDP allowed port"
|
||||
iptables -I zone_wan_input -p tcp --dport "$port" -j REJECT -m comment --comment "Close TCP allowed port"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
boot() {
|
||||
start
|
||||
}
|
||||
|
||||
reload_service() {
|
||||
stop
|
||||
start
|
||||
stop
|
||||
start
|
||||
}
|
||||
|
||||
service_triggers() {
|
||||
|
||||
12
twamp/files/etc/uci-defaults/92-twampfirewall
Normal file
12
twamp/files/etc/uci-defaults/92-twampfirewall
Normal file
@@ -0,0 +1,12 @@
|
||||
#!/bin/sh
|
||||
|
||||
uci -q batch <<-EOT
|
||||
delete firewall.twamp
|
||||
set firewall.twamp=include
|
||||
set firewall.twamp.path=/etc/firewall.twamp
|
||||
set firewall.twamp.reload=1
|
||||
commit firewall
|
||||
EOT
|
||||
|
||||
exit 0
|
||||
|
||||
@@ -18,9 +18,12 @@ PKG_SOURCE_PROTO:=git
|
||||
ifdef CONFIG_TARGET_intel_mips
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/intel/uboot.git
|
||||
PKG_SOURCE_VERSION:=feed838bd1bfeeb57a9afb93b4d704971f423d92
|
||||
else ifdef CONFIG_TARGET_iopsys_econet
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/ensemble/u-boot.git
|
||||
PKG_SOURCE_VERSION:=1b320f0656bfc8504fa4f771dd77d8e403ed00e0
|
||||
else
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/fork/uboot.git
|
||||
PKG_SOURCE_VERSION:=670ad7a30f3c6871b6c8a972e19ca2dd78ea8c9b
|
||||
PKG_SOURCE_VERSION:=826af23a7723ee05dc9bc023d12a83f44aa649f4
|
||||
endif
|
||||
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
|
||||
@@ -55,6 +58,13 @@ define uboot/ex400
|
||||
PKG_RELEASE:=7
|
||||
endef
|
||||
|
||||
define uboot/en7562
|
||||
TITLE:=U-Boot for the en7562
|
||||
CONFIG:=econet-en7562-ram
|
||||
DEPENDS:=@TARGET_iopsys_econet
|
||||
UBOOT_IMG:=u-boot-nand.bin
|
||||
endef
|
||||
|
||||
define uboot/sdx810_ap
|
||||
TITLE:=U-Boot for the sdx810_ap
|
||||
DEPENDS:=@TARGET_iopsys_ramips
|
||||
@@ -85,6 +95,7 @@ endef
|
||||
|
||||
UBOOTS := \
|
||||
ex400 \
|
||||
en7562 \
|
||||
sdx810_ap \
|
||||
grx500 \
|
||||
grx500_speedport_smart3 \
|
||||
|
||||
@@ -5,12 +5,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=uspd
|
||||
PKG_VERSION:=2.1.39
|
||||
PKG_VERSION:=2.1.43
|
||||
|
||||
LOCAL_DEV:=0
|
||||
ifneq ($(LOCAL_DEV),1)
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=718d0b24529d94b7bec09b6ffc6c3f84073d7bde
|
||||
PKG_SOURCE_VERSION:=c5c9a2675b29ae38d339f44099db30e5f22a278b
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/uspd.git
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
|
||||
@@ -5,10 +5,10 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=wfadatad
|
||||
PKG_VERSION:=6.10.0
|
||||
PKG_VERSION:=6.10.2
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=74aa2efe7f3f835e02cab1f8965afabd918b1477
|
||||
PKG_SOURCE_VERSION:=aaeed1df50a22bd391e5b1609e946991157308f4
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/wfadatad.git
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
@@ -17,9 +17,6 @@ PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||
PKG_LICENSE:=PROPRIETARY IOPSYS
|
||||
PKG_LICENSE_FILES:=LICENSE
|
||||
|
||||
|
||||
PKG_BUILD_DEPENDS:=map-plugin
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/wfadatad
|
||||
@@ -68,7 +65,7 @@ define Package/wfadatad/install
|
||||
ifeq ($(CONFIG_WFA_DELM_STANDALONE),y)
|
||||
$(INSTALL_DIR) $(1)/etc/init.d
|
||||
$(INSTALL_DIR) $(1)/usr/sbin
|
||||
$(INSTALL_BIN) ./files/wfadatad.init $(1)/etc/init.d/
|
||||
$(INSTALL_BIN) ./files/deagent.init $(1)/etc/init.d/deagent
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/src/agent/deagent $(1)/usr/sbin/
|
||||
else
|
||||
$(INSTALL_DIR) $(1)/usr/lib/map-plugins
|
||||
@@ -81,7 +78,7 @@ define Package/wfadatad-collector/install
|
||||
ifeq ($(CONFIG_WFA_DELM_STANDALONE),y)
|
||||
$(INSTALL_DIR) $(1)/etc/init.d
|
||||
$(INSTALL_DIR) $(1)/usr/sbin
|
||||
$(INSTALL_BIN) ./files/wfadatad.collector.init $(1)/etc/init.d/
|
||||
$(INSTALL_BIN) ./files/decollector.init $(1)/etc/init.d/decollector
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/src/collector/decollector $(1)/usr/sbin/
|
||||
else
|
||||
$(INSTALL_DIR) $(1)/usr/lib/map-plugins
|
||||
|
||||
@@ -15,7 +15,7 @@ start_service() {
|
||||
procd_set_param command "$PROG" "-d" "-t 10"
|
||||
#procd_set_param stdout 1
|
||||
#procd_set_param stderr 1
|
||||
#procd_set_param respawn
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
}
|
||||
|
||||
@@ -23,6 +23,7 @@ start_service() {
|
||||
procd_set_param command "$PROG" "-d"
|
||||
#procd_set_param stdout 1
|
||||
#procd_set_param stderr 1
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
}
|
||||
}
|
||||
@@ -5,12 +5,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=wifimngr
|
||||
PKG_VERSION:=14.0.3
|
||||
PKG_VERSION:=14.0.5
|
||||
|
||||
LOCAL_DEV=0
|
||||
ifneq ($(LOCAL_DEV),1)
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=0b8fe7e672e5e14519121ccba9a61591d5ea16b4
|
||||
PKG_SOURCE_VERSION:=a34624069fe24e5988e7db379e24e379e4479741
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/wifimngr.git
|
||||
PKG_MAINTAINER:=Anjan Chanda <anjan.chanda@iopsys.eu>
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /lib/functions.sh
|
||||
. /usr/share/libubox/jshn.sh
|
||||
|
||||
MAPFILE="/tmp/multiap.backhaul"
|
||||
|
||||
wifi_onoff() {
|
||||
local devices="$(uci show wireless | grep '=wifi-device' | awk -F'[.,=]' '{print$2}')"
|
||||
@@ -30,6 +33,7 @@ start_ap_wps() {
|
||||
|
||||
supp_status() {
|
||||
wpasupp=$1
|
||||
ul_type=""
|
||||
|
||||
ifname="$(echo $wpasupp | cut -d . -f 2)"
|
||||
|
||||
@@ -57,7 +61,14 @@ supp_status() {
|
||||
return
|
||||
fi
|
||||
|
||||
if [ -f "/tmp/map.agent.bsta_global_disable" ]; then
|
||||
if [ -f $MAPFILE ]; then
|
||||
# check if uplink is eth
|
||||
json_load "$(cat $MAPFILE)"
|
||||
json_get_var ul_type "type"
|
||||
json_cleanup
|
||||
fi
|
||||
|
||||
if [ "$ul_type" = "eth" ]; then
|
||||
echo "CONFIGURED"
|
||||
return
|
||||
fi
|
||||
@@ -88,7 +99,7 @@ supp_wps() {
|
||||
for wpa in $wpasupp
|
||||
do
|
||||
logger -t button "WPS $wpa start"
|
||||
ubus -t 1 call $wpa wps_start
|
||||
ubus -t 1 call $wpa wps_start '{"multi_ap":true}'
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user