Integrates:
- 51c6ee4: ("libamxo: Parser does not take into consideration a variable call (PPW-459)", 2025-02-24)
References: PPW-459
Signed-off-by: Hela Saadani <hela.saadani_ext@softathome.com>
During the prplOS build configuration phase, we're currently seeing
following warning:
WARNING: Makefile 'package/feeds/feed_amx/mod-amxb-pcb/Makefile' has a dependency on 'libpcb', which does not exist
WARNING: Makefile 'package/feeds/feed_amx/mod-amxb-pcb/Makefile' has a dependency on 'libusermngt', which does not exist
This is happening as mod-amxb-pcb defines a wrong dependency on
non-existent libpcb and libusermngt packages.
Package mod-amxb-pcb impossible to compile without vendor specific
"libpcp" library, that not part of prplOS, so let's fix it by removing
non-buildable package.
References: PCF-1637
Signed-off-by: Nikolai Merinov <n.merinov@inango-systems.com>
During the prplOS build configuration phase, we're currently seeing
following warning:
WARNING: Makefile 'package/feeds/feed_amx/libamxp/Makefile' has a build dependency on 'bison/host', which does not exist
WARNING: Makefile 'package/feeds/feed_amx/libamxp/Makefile' has a build dependency on 'flex/host', which does not exist
This happend as libamxp defines a wrong dependency on non existent
flex/host and bison/host packags.
remove dependencies to non existent flex/host and bison/host package.
OpenWrt provides flex and bison utilities as tools/flex and tools/bison
targets. This tools alwys compiled before start of packages compilation.
There is no way to describe this dependency explicitely in OpenWrt.
References: PCF-1637
Signed-off-by: Nikolai Merinov <n.merinov@inango-systems.com>
During the prplOS build configuration phase, we're currently seeing
following warning:
WARNING: Makefile 'package/feeds/feed_amx/libamxo/Makefile' has a build dependency on 'bison/host', which does not exist
WARNING: Makefile 'package/feeds/feed_amx/libamxo/Makefile' has a build dependency on 'flex/host', which does not exist
This happend as libamxo defines a wrong dependency on non existent
flex/host and bison/host packags.
OpenWrt provides flex and bison utilities as tools/flex and tools/bison
targets. This tools alwys compiled before start of packages compilation.
There is no way to describe this dependency explicitely in OpenWrt.
References: PCF-1637
Signed-off-by: Nikolai Merinov <n.merinov@inango-systems.com>
Introduces the mod-busstats package.
mod-busstats allows to fetch the statistics on usage of the inter-process communication bus connections of a component.
References: PCF-1679
Signed-off-by: Matthias Franck <matthias.franck@softathome.com>
- d5bad5c7c933 ("[CI] Update changelog for release master_v6.7.3")
- 6efded78885c ("Issue: HOP-8358 Performance improvements data model transactions")
- 45a060400d02 ("[CI] Update changelog for release master_v6.7.2")
- 8de3afc2dc63 ("Issue: HOP-8255 Custom action handlers must be used when available in creating pcb reply messages")
- 18239a4ca004 ("[CI] Update changelog for release master_v6.7.1")
- 2502b6555a5b ("Issue: HOP-8255 Custom action handlers must be used when available in creating pcb reply messages")
* HOP-8358: - Improve building reply of add instance
- Skip key verification if no key parameters are changed
- Optimize transactions, avoid double look-ups
- Make it possible to set read-only parameters when using protected mode.
* HOP-8255: When parameter values are replied the value is directly from memory, but when a read handler is set on the parameter that one should be used.
Signed-off-by: Hela Saadani <hela.saadani_ext@softathome.com>
- cf43e3842c55 ("[CI] Update changelog for release master_v5.3.2")
- 77e31399a82c ("Issue: HOP-8354 Fix parameter identation when saving odl files")
- aebd63e5e169 ("[CI] Update changelog for release master_v5.3.1")
- 884dd438d9fd ("Issue: HOP-8233 Cache parsed mib expressions")
* HOP-8354: Adds an indentation before parameters when saving odl files
* HOP-8233: Whenever the mibs are applied to the data model, their expression is re-parsed.
For components such as gmap-server that rely heavily on dynamically changing mibs,
this is an extra needless cost that may be optimized by caching the parsed expression.
Signed-off-by: Hela Saadani <hela.saadani_ext@softathome.com>
- b398887391f3 ("[CI] Update changelog for release master_v2.7.0")
- e88416196aae ("Issue: HOP-8351 Avoid variant copies")
Add a function that takes ownership of the variant data for deferred calls.
The variant data must be freed when the deferred call has been executed or when the queued deferred call is removed from the list.
Signed-off-by: Hela Saadani <hela.saadani_ext@softathome.com>
- b67bd98880f1 ("[CI] Update changelog for release master_v3.8.2")
- 88d148fd32c7 ("Issue: HOP-8351 Avoid variant copies")
Adds a function that takes ownership of the variant data for deferred calls.
The variant data must be freed when the deferred call has been executed or when the queued deferred call is removed from the list.
Signed-off-by: Hela Saadani <hela.saadani_ext@softathome.com>
in commit fa710078632f ("[CI] Update autogenerated files")
in commit 092b0e775568 ("baf: fix libcap-ng issues on various filesystems")
in commit af97038c00d8 ("ci: use new gitlab-ci templates")
in commit 4fafa9751b54 ("baf: introduce the baf.yml file")
in commit d33cba16a6bd ("Allow forcing components to run as root (PPW-185)")
References: PPW-185, PPW-74, PCF-1411, PCF-1456
Signed-off-by: Hela Saadani <hela.saadani_ext@softathome.com>
- ddd0af980d88 ("[CI] Update changelog for release master_v4.11.8")
- ea8a01b78bac ("Issue: HOP-8243 [Amxb] Always log bus timeouts to syslog")
A logging function can be set in lib amxb, if this is done all the amxb calls involving bus access will be logged using this function.
In order to always log bus timeouts , use syslog instead of the custom logging function when a timeout has occured. This increases visibility of bus timeouts.
Signed-off-by: Hela Saadani <hela.saadani_ext@softathome.com>
Commit 3dc4681f9b ("Integrating libamxp to master_v2.1.1") added
handling of subprocess capabilities via libcap-ng, which on targets
utilizing ext4 filesystem needs EXT4_FS_SECURITY kernel config symbol
enabled for proper support of extended filesystem attributes via
fsetxattr():
amxp_subproc_start()
`-amxp_subproc_vstart()
`-amxp_subproc_exec_child()
`-amxp_subproc_set_capabilities()
`-capng_apply_caps_fd()
`-fsetxattr()
open("/usr/sbin/unbound", O_RDWR|O_LARGEFILE) = 3
...
fsetxattr(3, "security.capability", "\1\0\0\2\0\0\0\0*$\0\200\0\0\0\0\0\0\0", 20, 0) = -1 EOPNOTSUPP (Not supported)
This failure then leads to missing CAP_NET_BIND_SERVICE capability and thus
unbound can't start:
[1726337363] unbound[30984:0] error: can't bind socket: Permission denied for 0.0.0.0 port 53
[1726337363] unbound[30984:0] error: can't bind socket: Permission denied for :: port 53
[1726337363] unbound[30984:0] fatal error: could not open ports
...
tr181-dns: dns - [i]Started Unbound (1 times) - (start_unbound@modunbound_main.c:455)
tr181-dns: dns - [i]wait for wait:done - (start_unbound@modunbound_main.c:457)
tr181-dns: dns - [x]Unbound stopped! - (unbound_stopped@modunbound_main.c:373)
That was fixed in commit 995891f8ca ("libamxrt: fix libcap-ng issues
on ext4 by enabling EXT4_FS_SECURITY").
Lately it was found out, that on some targets, like RPI the same issue
appeared again. It was found out, that it was due to the fact, that RPI
is using f2fs based rootfs_data overlay, because procd/fstools creates
f2fs based rootfs_data overlays if the available storage space is bigger
then 100MiB, in other cases its going to use ext4 filesystem.
So lets fix it for good for all the targets supported by underlying
OpenWrt system, by selecting the corresponding KERNEL_*_FS_SECURITY
config symbols. Unfortunatelly for f2fs we can't use target's specific
USES_F2FS as its not available, but we could probably use mkf2fs for
that purpose as every target seems to include it, so it should work.
Cc: stable-3.1
Fixes: PCF-1456
References: PCF-1411, PPW-74
Fixes: 3dc4681f9b ("Integrating libamxp to master_v2.1.1")
Signed-off-by: Petr Štetiar <petr.stetiar@prplfoundation.org>
(cherry picked from commit fcf51b9865)
Issue: HOP-8130 [libamxp]Memory leak can occur when signal can not be emitted
Issue: NET-6400 [AMX] Slots callback functions are called multiple times
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: 9d1f4b84b7ffd2912202050daef6d521b41410f6
Issue: HGWPR-32571 option p busybox not available
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: 7e240cf097bc725d015752ad2221751a6ca346fb
Issue: NET-6400 [AMX] Slots callback functions are called multiple times
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: d125f27086dd61a341cbd8a9f5db3f64437e38c5
Issue: HOP-8050 [ubusd] handle large messages - part 2: Fragment messages
Issue: HOP-8094 Too many or wrong events are send over bus systems
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: 661308edc0814ebc6da85c1c8fcb6696f13c5d48
Issue: HOP-8094 Too many or wrong events are send over bus systems
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: bfad57541d46e750337ebe631ea487da4518df7a
Issue: HOP-7910 [device] remove the debug information for the whole DM [fix]
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: c4ef0612f18277784b33a9b43403fbac12b9659e
Issue: HOP-7728 [LCM] The first DU instance gets renamed (but not in dm)
Issue: HOP-7820 Optimizations in ambiorix libraries
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: 12278f0689b3b1791626960a4b888819c5fc25e6
Issue: HOP-7728 [LCM] The first DU instance gets renamed (but not in dm)
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: 63065cb58f4061c4e9e11f7483d044981c833075
Issue: HOP-5920 Add support for read-only objects in a local datamodel [new]
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: ca6fcf9e303bedd6c0f7b37b75c8d5bd3a6be389
Issue: HOP-7623 Crash on "tr181-device;-D;" after upgrade followed by hard reset on HGW
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: 3921625de2920e97a530d25ee9d820db178c0046
Issue: HOP-7574 Loop detection can drop too much events due to initial sync [fix]
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: c792073da3b8d6ce93dab9a1ca254f2d57f1f2aa
Issue: HOP-7547 UBus responses can be handled when calling ubus_lookup_id which can lead to segfaults.
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: 326cd25c7255abfc50628c97a59c0b144707bc31
Issue: HOP-7529 amx pcb backend does not handle request getObject with a parameter list
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: d88df9bec115e69cbe98f273390fc1136a17e236
Issue: HOP-7484 race condition in amxp_subproc_vstart leads to sigchild loss
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: 61bbd7c8c8aaf3188e41e9bb2d116d792b2322af
Issue: HOP-7436 Depth must be ignored on get with parameter paths
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: b39317d66d377434b74483e11e5b566530cb9090
Issue: HOP-7418 Error in fetching a parameter recursively using search or wildcard path
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: 281ce75aad7ec2c525d4ac94eda2cf24df5a2c30
Commit 3dc4681f9b ("Integrating libamxp to master_v2.1.1") added
handling of subprocess capabilities via libcap-ng, which on targets
utilizing ext4 filesystem needs EXT4_FS_SECURITY kernel config symbol
enabled for proper support of extended filesystem attributes via
fsetxattr():
amxp_subproc_start()
`-amxp_subproc_vstart()
`-amxp_subproc_exec_child()
`-amxp_subproc_set_capabilities()
`-capng_apply_caps_fd()
`-fsetxattr()
open("/usr/sbin/unbound", O_RDWR|O_LARGEFILE) = 3
...
fsetxattr(3, "security.capability", "\1\0\0\2\0\0\0\0*$\0\200\0\0\0\0\0\0\0", 20, 0) = -1 EOPNOTSUPP (Not supported)
This failure then leads to missing CAP_NET_BIND_SERVICE capability and thus
unbound can't start:
[1726337363] unbound[30984:0] error: can't bind socket: Permission denied for 0.0.0.0 port 53
[1726337363] unbound[30984:0] error: can't bind socket: Permission denied for :: port 53
[1726337363] unbound[30984:0] fatal error: could not open ports
...
tr181-dns: dns - [i]Started Unbound (1 times) - (start_unbound@modunbound_main.c:455)
tr181-dns: dns - [i]wait for wait:done - (start_unbound@modunbound_main.c:457)
tr181-dns: dns - [x]Unbound stopped! - (unbound_stopped@modunbound_main.c:373)
So lets fix it by selecting KERNEL_EXT4_FS_SECURITY config symbol if
either target uses ext4 filesystem or kmod-fs-ext4 package is selected.
Fixes: PPW-74
References: PCF-1411
Fixes: 3dc4681f9b ("Integrating libamxp to master_v2.1.1")
Signed-off-by: Petr Štetiar <petr.stetiar@prplfoundation.org>
GitOrigin-RevId: 85e0e6f92a8112ba9c3e102fc9f39341f17de3ae
Issue: HOP-7332 Include mibs when checking for supported objects
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: 77c10f0c20f01ff94659a5e4c6b49e7c0826b187
Issue: VZ-3615 [VZ][WiFi][Random] WPS-PBC pairing fails using both Button and WebUI methods on the 5GHz band when SON is enabled
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: a6a6e76849c96883f80c1799c1c5ae5972651715
Issue: SOFA-435 amxa resolver go into infinite loop if a invalid path is used
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: 05f478ed2cedfe60595dcecc78674c2aff59bb2a
Issue: HGWPR-25822 NOT-20 Unauthenticated Web UI Denial of Service
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: f433c1a5c99efaca1bac7b4e4cf5029fc936e9e5
Issue: HOP-7194 : Add new helpers for Set module [new]
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: 506d1280507c9a6c7606fa2c3f6c4d32f89c1c81
Issue: NET-6038 Avoid double USP connections to the same sockets
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: d95c71721e9bb9ce4bd779ee32c974d3abb7ed82
Issue: HOP-7094 Sub-object synchronisation initalize with wrong value with pcb-plugin
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: 5c43d45bd48e43c290b7f7beed368503808f46ce
Issue: HOP-7179 Some private parameters are still present in the AMX/XML file
Signed-off-by: sahbot <sahbot@softathome.com>
GitOrigin-RevId: de82f723f9550f693b5211c6707e84fcb1d5f639
Issue: HOP-7084 amxp: add amxp_subproc_close_fd(amxp_subproc_t* proc, int fd)
Issue: HOP-7091 amxp: fds from amxp_subproc_open_fd() must not be O_NONBLOCK for the child
GitOrigin-RevId: 8ac6cf2d88f67082fc39240e77e5ff3bb079acdd
Issue: HOP-6957 Calculate remaining time of timers before checking and updating the state
Issue: HOP-6962 Disconnect the amxrt_wait_done callback before handling events [fix]
GitOrigin-RevId: d0f10452d3dbddaf443b5a3f9d68d36709909ead
Issue: HOP-6963 [ba-cli]Crash when removing backend with open connections
Issue: HOP-6964 [ba-cli]It must be possible to set protected mode on all open connections
GitOrigin-RevId: 73b5159ce17af5b092856799bfcea2bb58063f0a
Issue: HOP-6917 [AMX] Add function to get backend name from uri [new]
Issue: HOP-6966 [ba-cli] Unable to get protected object when using Device.
Issue: VZ-3176 Subscriptions on non existing objects must fail
GitOrigin-RevId: 39da11c5f43d1f9564a80f687f6d47d4354fcd95
Issue: HOP-6917 [AMX] Add function to get backend name from uri [new]
Issue: VZ-3176 Subscriptions on non existing objects must fail
GitOrigin-RevId: 222ec514c8075b91433624bbbb7a4f66d6d690e1
Issue: HOP-6953 Key parameters without read-only in definition are write-once and must be reported as read-write in gsdm
GitOrigin-RevId: e00e3755ffc5db706c7c4128f32b62279aa89075
Issue: HOP-6917 [AMX] Add function to get backend name from uri [new]
Issue: VZ-3176 Subscriptions on non existing objects must fail
GitOrigin-RevId: 0c41ac62657a524a5631ad7f200b93b62b0bf467
Issue: HOP-5430 Handle events from the amxs signal manager, if available, before other events [fix]
GitOrigin-RevId: dfefde32c7b8cc5a0826332c9767f261da20c4fd
Issue: HOP-5430 DHCPv6Client/DHCPv6Server in misconfigured state
Issue: HOP-6847 amxp: crash in amxp_signal_read() when suspending/resuming a signal manager
GitOrigin-RevId: 90725b60fc31b44a2e1d38ee374e4c1e70b17bfb
Issue: HOP-6760 segfault in libamxc amxc_string_to_upper and to_lower APIs providing an amxc string with a null buffer [fix]
GitOrigin-RevId: 55cd14ddbcdf898874eafd537025b648f2e17180
@@ -10,11 +10,23 @@ menu "Select libamxrt build options"
config SAH_LIB_AMXRT
bool "Build libamxrt"
default y
select KERNEL_EXT4_FS_SECURITY if USES_EXT4 || PACKAGE_kmod-fs-ext4
select KERNEL_JFFS2_FS_SECURITY if USES_JFFS2 || USES_JFFS2_NAND
select KERNEL_UBIFS_FS_SECURITY if USES_UBIFS
select KERNEL_F2FS_FS_SECURITY if PACKAGE_mkf2fs
config SAH_AMXRT_RWDATAPATH
string "Persistent storage location"
default "/etc/config"
config FORCE_RUNNING_AS_ROOT
bool "INSECURE: This options forces ambiorix components to run as the root user, even if they request to run as a different user"
default y
config REMOVE_CAPS_ODLS
bool "INSECURE: This option removes all the capability ODLs (*_caps.odl) from /etc/amx and subdirectories during first boot. This will also force all components to run as root"
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.