Let sysupgrade run a --test upgrade to verify that the image is
compatible before attempting an upgrade.
This fixes an issue where a router can get stuck without network
connectivity when a a remote autoupgrade was triggered.
Fixes#193
X-FIRMWARE-VERSION gets set to the content of the file referenced by UCI setting "autoupdater.settings.version_file"
If "autoupdater.settings.version_file" is unset X-FIRMWARE-VERSION is
omitted
In case a radio exists, but is disabled, the survey request will return
successfully, but without data.
The code could not handle this case, as the newest_element_index would
be negative in this case, leading to json_object_array_get_idx returning
a null-pointer.
Check for a null pointer prior adding the PHY index, avoiding a
null-pointer dereference.
Signed-off-by: David Bauer <mail@david-bauer.net>
If an autoupdater long option (prefixed with '--') are unknown then a segmentation fault occurs.
Example:
root@node:~# autoupdater --xyz
Segmentation fault
[Matthias Schiffer: changed sentinel syntax]
* include bugfix to allow sending unicast packets to neighbours
* FIX crash due to wrong format string
* FIX packet forwarding on mesh devices added via socket
* allow to build statically
* avoid adding mesh interfaces multiple times
This renames batman-adv.ko to batman-adv-legacy.ko. And also moves
scripts to a "-legacy" variant to avoid build errors when both
batman-adv and batman-adv-legacy are selected. Finally, moves the
batman-adv-legacy config to /etc/config/batman-adv-legacy.
This allows to select and install the batman-adv mainline and
batman-adv-legacy simultaneously.
Instead of unconditionally loading this module on boot the gluon_bat0
netifd protocol script will later take care of loading either the batman-adv
or batman-adv-legacy module, depending on the configured routing
algorithm in UCI.
* memory alignment fixes
* fixes for uninitialized memory
* fixes for neighbour detection (removal of neighbours)
* scheduling fixes in taskqueue
* schedule removal of nodes in NUD_PROBE
simple-uci was modifying the metatable of UCI cursor objects, thus changing
the behaviour of *all* UCI cursors, and not only UCI cursors that are
created through simple-uci.
Fortunately, the destination buffer is always big enough, so no buffer
overflow can happen. Use memcpy instead of strncpy to make this explicit
(and slightly more efficient).