AnyRover Release Management
AnyRover V2 Changelog
Stable 1.8
Changes from v1.8.19 to v1.8.20 (25 October 2023)
Bugfixes:
IPsec: remove debugging output when starting IKEv1
DSL: ADSL was not always configured correctly
DSL: fix DSL restart
New Features:
IPsec: new attribute closeaction
Changes from v1.8.18 to v1.8.19 (6 April 2023)
Bugfixes:
DHCP server: remove error message on boot for unknown device
Reset button: improve code to prevent false Reset events
GPIO: fix event detection: negative edge was ignored if not preceded by positive edge
*_target: fix to prevent occasional connection losses
SCEP: fix for case when not all DN fields were given
SCEP: fix subjectAlternativeName handling
SCEP: fix certificate removal when SCEP config changes
SMS: fix reception of SMS if sender is a name (broken in 1.8.18)
New Features:
OpenVPN: new attributes (server|client)_auth
OpenVPN: net attribute for additional TLS auth key
SCEP: allow to restart IPsec tunnel on certificate renewal
Changes from v1.8.17 to v1.8.18 (1 October 2021)
Bugfixes:
certificate script: always set subjectKeyIdentifier and authorityKeyIdentifier
Pelix: only log "TCP connection closed" once a minute
Pelix: reduce number of consecutive messages "Resending init string" to 3
Enable local DNS lookups from /etc/hosts
GPS: add plausibility check before setting time
SMS: fix parsing to allow the word "OK" to appear in messages
GPS: only jump clock if 5 consecutive GPS messages show time difference
OpenVPN: remove deprecated attribute ns-cert-type
Factory config: change default name servers; old ones are no longer available
New Features:
GRE: enable GRETAP tunnel
cablynxctrl: allow to run single command with '-c cmd'
eeprom-tool: allow to only read one value from eeprom
OpenVPN: allow to configure hash algorithm
OpenVPN: allow to configure additional TLS key when using certificates
Build: create ecdsa host key instead of deprecated dss key
Changes from v1.8.16 to v1.8.17 (16 November 2020)
Bugfixes:
GPTXT,ADC message was wrong
GPTXT,MIP message caused IPsec with IKEv2 to crash (Bug introduced in 1.8.16)
Routing: empty "policy=" entries in config file corrupted routing table
SMS console: did work even if "console=no" was set in config
gpio_daemon: fix segfault when using "CBCTL:cmd args"
DSL factory config: fixed some comments
New features:
DHCP server: make location of lease file configurable
Removed features:
Libraries: removed some libraries that are no longer used
Changes from v1.8.15 to v1.8.16 (5 December 2019)
Bugfixes:
DHCP server: correctly handle some multiple options
DSL / PPPoE: fix file permissions to avoid warning in log files
multi-switch script: do not do reverse lookpus on traceroute
multi-switch script: fix LED handling
OpenVPN: default CCD file did not work
New features:
Sytem time: update RTC on NTP sync
DHCP client: add parameter "vendor", sometimes needed for Swisscom DSL lines
Modem: centralize modem info reading
cablynxctrl: new command nmeaquery to check current NMEA message rate
canbus: Allow autodetection of connected CAN bus adapter
multi-switch script: add support to restart OpenVPN tunnel on route change
firewall: support SNAT and DNAT rules in other chains than default
firewall: allow to create new chains and jumps to these chains in one step
Certificates: allow to store multiple certificates in one [certificate] section
phonehome script: allow to specify port
Show:
New command: show dsl
Removed features:
Do not start telnet daemon on boot
Changes from v1.8.14 to v1.8.15 (15 February 2019)
Bugfixes:
IPsec: fix parameter modecfg
Time sync with modem time did not work for all available modem types
DSL: allow to configure ATM and PTM modes simultaneously
IMSI checker: make more robust
MobileIP: make modem selection over AnyControl work
Dual modem: always show correct status
Huawei modem: correctly configure modem LED
IPsec: make it work if system clock is only set from modem
gpio_daemon: fix potential segfault
AnyControl: sohw IPsec status correctly again
Config: allow for empty port or address in (tcp|udp)_(server|target)
Switch: do not start switch if [switch] start=no
Dual modem: only remove NAT rule for modem that went down, not both
tcp_target: do not buffer outgoing messages but send immediately
sms_config.sh: do not insert additional white space when setting value
New features:
NTP: new config parameters localaccess and ntp_option
Add support for 2nd modem in AnyControl
GPS: add filter to (tcp|udp)_(target|server)
Modem: add network attachement before dialling
SIM PIN: accept PINs with up to 8 digits (before: 6)
USB serial: add support for cp210x USB-serial chips
GPI: add hysteresis to input signal
SNMP: add parameter sysdescription
DNS: allow to configure search domains for DNS lookups
Shutdown: allow scripts to be run on shutdown
EEPROM: add tool to read EEPROM contents
DHCP: new argument noarp so DHCP client does not check lease using ARP
Clock Sync: make LED animation on modem clock sync configurable
Add PIC software version 5.1.1 (will not install automatically)
Show:
show ntp
Update help text
Removed features:
Config cleanup, remove some internal signals that are no longer available
Changes from v1.8.13 to v1.8.14 (12 January 2018)
Bugfixes:
Fix WLAN configuration with multiple SSIDs on one WLAN interface.
IPsec (IKEv2): regularly use patched charon library.
gpio_daemon: fix fatal error occurrences during modem connection.
gpio_daemon: properly read answer from modem after sending AT command.
gpio_daemon: fix memory leak with GPRMC parsing for clock check.
gpio_daemon: fix SMS re-queueing.
cablynxctrl: fix esfalg command to show correct values and angles.
Boa: do not fork on startup, so stopping will work later on and adjust healthcheck to still work with this fix.
healthcheck: fix output, add IPsec status (IKEv1 only).
show log: did not work if different log file was specified.
Features:
WLAN: Add 802.1X Authentication for multiple SSIDs on one WLAN interface.
IPsec: use esp_strict also with IKEv1.
healthcheck: add AnyRover software version.
Changes:
WLAN: Change bssid adjustment for WLAN AP.
gpio_daemon: remove some unused code.
gpio_daemon: do error checking on reading input ports.
install.sh: remove old (unused) install script from former user install.
adjust path to update script (/usr/bin instead of /home/config/bin).
healthinfo: do not use () around number of mac addresses.
config file: remove SMS hash functions.
Config: remove file pelix.conf, is now integrated in cablynx.conf.
Factory config: rename DSL config, adjust to support G.Dmt.
Factory config: add cablynx.dsl, config to check DSL modem.
PIC:
add firmware version 5.0.3.
Show:
show dhcp: print number of addresses and range.
new command show boot (uptime, boot reason).
show firewall: allow to show filter or nat alone.
Changes from v1.8.12 to v1.8.13 (20 November 2017)
Bugfixes:
Fix memory leak on SMS handling (was already fixed in 1.8.9, but reintroduced in 1.8.10)
Fix memory lead on SMS handling that leaked approx. 34+SMS length bytes per incoming SMS.
Remove double phone number check for incoming SMS. Second check did not work with spaces in phone number (yep, that is possible...)
Fix crash on incoming SMS messages (not the first SMS) resulting in "Fatal signal 6".
New Features:
New function "fakesms nbr text" in cablynxctrl to simulate incoming SMS.
Changes from v1.8.11 to v1.8.12 (6 November 2017)
Bugfixes:
show ipsec: did not work for IKEv2
New features:
Pelix: add possibility to define source address for communications to Pelix server.
Datcom: make send interval configurable.
Datcom: allow to read input data from file, not only stdin.
Config file:
Clean up white space.
Add paramters in [ipsec]: fragmentation, mobike, ph1_prf, ph(1|2)_strict
Fix explanation for IPsec authentication options auth_method, local_auth, remote_auth.
Changes from v1.8.10 to v1.8.11 (31 October 2017)
Bugfixes:
Fix DNS Proxy (CVE-2017-14491 - 14496 and CVE-2017-13704)
Switch-in-hooks: Script was not executable.
Update WLAN tool to fix CERT case ID: VU#228519 (a.k.a. KRACK).
New Features:
New GPTXT string for Modem and GPS information
Health check for GPS module
New script to change active modem (to be used with AnyControl).
SCEP: Add support for SHA2 signature algorithms
IPsec: make IKEv2 work as it does on AnyRover v3. IKEv1 remains unchanged.
Changes from v1.8.9 to v1.8.10 (7 September 2017)
Bugfixes:
DHCP client: keep config upon reload
SMS SenderID conversion
Fix standalone RADIUS server
Allow interface to be configured without IP address
Fix crash when receiving 2nd SMS with command
Features:
Web Signaltool: display signal level similar to new AnyControl
Add Howto for PIC handling
Improve DSL configuration
Make SMS sending more reliable
Improve script to create CA and certificates: Allow sha256 signatures, support for intermediary certificates, support for p12 files
Wireless tools: update to new version
Adjustments for new 3D GPS receiver
Wired 802.1X: hook scripts
RADIUS server: new parameter radius_ipaddr, make accouting port configurable, make listen address configureable
Add section [pelix] to config file
Enable Roaming functions for second modem
Web server: allow to set mime type of unknown files
Support for static host entries in /etc/hosts
OpenVPN: allow to set encryption algorithm
show:
print physical interfaces of bridge
show 8021x
show dhcp
show arp
Changes from v1.8.8 to v1.8.9 (22 September 2016)
Bugfixes:
DHCP client: keep config upon reload
IPsec: allow remote argument to be a hostname
Canbus tool: fix segfault
Canbus tool: parse all values
Modem status data: make setup more robust
DHCP: properly call hook scripts
IPsec: restart IPsec upon DHCP events; helps to establish IPsec in situations where there is no 3G/4G connection upon boot.
Fix memory leak on SMS handling (needs thousands of SMS to be noticeable).
Features:
Support for ublox and Huawei modems
Firewall: new keyword ipsec to allow filtering packets coming through IPsec tunnel.
New tool for DATCOM integration.
WLAN: make possible to run up to 6 SSID on one single AP (up from 2).
Changes from v1.8.7 to v1.8.8 (22 March 2016)
Bugfixes:
WLAN MAC ACL: delete ACL file before inserting values.
adsl_3g script: make LEDs work correctls.
Remove all mentions of "CabLynx ECO" from config file and documentation.
Canbus: start daemon with correct name of config file.
libusl_daemon: do not start timer before daemonization.
Startup script dhcp: create directory /etc/udhcpd if it doesn't exist yet.
DSL: kick DHCP client in bridge modem after DSL module is configured.
gpio_daemon: fix memory leak if CBCTL command is empty or unknown.
Startup scripts: do not try to kill non-existing user processes on shutdown.
SCEP: check validity of CA cert before creating CSR.
glibc: patch CVE-2015-7457.
Features:
Allow log level to be set for cron daemon.
Allow to mount additional partitions.
Add support for ublox modems.
Update busybox to 1.18.5
New tool for communication with PELIX location server.
DSL: create device files for additional GPIO ports.
show:
New command to show image version.
Add output of "netstat" to show tech.
Make "show id" work for ublox modems.
Changes from v1.8.6 to v1.8.7 (15 December 2015)
Bugfixes:
Mobile IP shutdown script said "killing process 0" if no instance running.
Did not dial when another USB-serial device was connected before modem.
Exchange Mode and Reset buttons.
gptxt: do not send error messages as GPTXT strings.
IMSI checker did not work for dual modem operation.
Features
Allow setting MTU on GRE/IPIP tunnels.
Change startup script order (NTP: 43 to 53)
Add support for 2nd modem.
alarm: allow support for real numbers in interval.
Support for 5th Ethernet (WAN) port.
Support for internal DSL modem.
Firewall: allow filtering based on MAC address.
WLAN AP mode: add MAC address access list (accept or deny list).
Add scripts needed for AnyGator integration.
gpio_daemon
New command in cablynxctrl to show switch port status.
Prepare for new ublox GPS receiver and parse G?RMC to set time.
show tech:
Add information about switch ports.
Add ARP cache.
Default config adjustments:
New example lines for vlans.
Disable access to telnet port.
Merge access to two DHCP ports into one line.
IPsec: comment line for certificates, default is PSK.
Remove configured tcp_targets.
Changes from v1.8.6.1 to 1.8.6.2 (November 2015)
Exchange Mode and Reset buttons.
Changes from v1.8.6 to 1.8.6.1 (November 2015)
Support for 5th Ethernet (WAN) port.
Changes from v1.8.5 to 1.8.6 (10 September 2015)
Bugfixes:
Do not print error messages when stopping syslog if no syslogd running.
WLAN: Do not print regdomain rules to logfile.
SD-Card: Do not try to mount non-existing partitions.
Config file: only do dos2unix conversion if carriage return present in file.
Fix typo to make "S22gpiodefault.sh restart" work.
gptxt messages: add ipsec status info.
IPsec: flush route cache on tunnel up and down.
SMS commands: check phone_number for all commands, not just eco.
gpio_daemon
Close several file descriptors before forking child process.
Fix logging during proper shutdown.
Log error when accessing serial port fails, do not terminate.
Close tcp server socket on "too many open files".
Reopen admin sock on config reload.
New command to reload config.
New parameter to configure not to restart modem on NO CARRIER.
Fix several memory leaks on config reload.
Improved memory management debugging (not active on production systems).
PIC tool:
Tell reason of failure.
Add support for CSD and WUT.
Add new PIC Software version 4 and 5.
Fix help text.
Add help text for Wake Up Type field.
New command to read PIC software version.
Lock mechanism to prevent concurrent access.
Better error handling; prevents occasional console locking.
Changes:
New parameter ign_boot to assume value of ignition upon boot.
New script hook before automatic shutdown /etc/shutdown.d/.
Multi-switch script: test multiple hop counts to find if link available.
Add dosfstools (needed to create FAT32 filesystems).
Shorten retry interval for IPsec connections (10s,20s,40s -> 10s,10s,10s).
Send information about IPsec to AnyControl.
Add possibility to reboot AnyRover from AnyControl (needs changes in AnyControl as well).
Add boot reason to logfile.
Add new tool: socat.
New script for PIC firmware update.
show tech:
Add hostname.
Add *_target information.
Add device files.
Add MTD information.
Add more info about running processes (top -bn1).
Add info about PIC.
Add info about routing cache.
Use "ls -la" instead of "dir".
CAN bus tool:
Add support for Squarell CAN devices.
Changes from v1.8.4 to 1.8.5 (7 November 2014)
Bugfixes:
DHCP: put complete hostname to leases file (last byte was missing).
SNMP: remove unneeded quotes from config.
IPsec: fix route handling, in some cases, not all routes were set.
Kernel: patch for tty-bug CVE-2014-0196.
SSH: update to fix security hole (CVE-2012-0920). It was actually not possible to exploit this on the AnyRover.
gpio_daemon: fix memory leaks.
WLAN: make 5GHz Access Points work.
Shell: make "sort -o file file" work. This command used to produce an empty file.
System shutdown: get rid of some error messages concerning DHCP.
OpenConnect: make it work again.
Kernel patch: fix LZO security hole.
System startup: remove potential lockups when files are missing.
PIC-Tool: query correct analog input.
System time handling: make all programs use local time for log file entries.
gpio_daemon: fix potential segfault.
System time handling: add sanity check before setting system time from GPS data.
file_target: make it work when file is on SD-Card.
Kernel: remove log messages that sometimes fill the log file (i2c_message...)
GPS-receiver: ekfreset resets calibration data and temperature table
Ethernet Bridging: make bridge of eth0 and wlan0 work reliably.
DHCP: stop clients on vlans upon stop.
Certificate script: Fix CA subject handling
OpenVPN: Fix IP address handling in startup-script
ADC: Change formula to calculate input voltage.
gpio_daemon: restart child process if it crashes.
Roaming: make it work properly
OpenVPN: adjust path to /sbin/ip program
New Features and improvements:
Manual update
DHCP: Possibility for hook scripts on DHCP-events.
cablynxctrl: new function nmearate to adjust rate of NMEA-messages.
Firewall: new config parameters snat and dnat for source and destinaton NAT.
show tech: add APN information.
Show tech: allow possibility to create encrypted system dumps.
IPsec: add possibility to limit tunnel to single protocol or port.
Firewall: allow filtering on physical interfaces of a bridge.
Firewall: add operator ! to allow exclusion rules.
Can2com: add new tool to handle data from can2com box.
Sierra Modem MC7304: add initial support for new modems.
Switch: add new config parameter to disable individual switch ports.
System libraries: update several libraries.
PIC tool: add long options
System check: add "show md5" command to check all system files
CAN bus: add startup script to enable canbus tool.
phonehome.sh: New parameter to call sleep upon login. Needed for automated and SMS controlled phone home calls.
Certificate script: allow to set nsCertType field
wget: new version, fixes CVE-2014-4877
Changes from v1.8.3 to 1.8.4 (1 April 2014)
Bugfix: add missing config parameters to cablynx.factory
Add new script to get system time from modem
Kernel config: include netfilter modules match_tcpmss, match_mac and match_physdev
Boa webserver: new version that can be run as root
Add script hook for USB mount events
LED script: add new functioon to switch on LEDs individually and new commands "redblink", "greenblink" and "greenblitz"
Bugfix: DHCP server: allow multiple values for options and change parameter typo for name
add simple json parser for awk
Bugfix: make orientation work with hardware type B
Startup script: new plausibility check to prevent error message
Bugfix: make ekfreset before calibrating gyro and direction
Bugfix: change buffer size in gpio_daemon, so reading SMS does not fail when too many SMS are available
Config file: typo in [scep] section (Organization)
Alarm tool: allow to start recurring alarms.
Show tech: add lsmod output
Changes from v1.8.2 to 1.8.3 (17 February 2014)
Gpio_daemon: fix in GPS fd handling, improve GPS health check and adjust default parameters, make baud rate for GPS device configurable with new cablynxctrl command "gpsbaud"
enable switch plug detector in default config file
Bugfix: properly reset switch upon reboot, so it will work in bootloader when vlans are configured
MobileIP: update to version 0.9.3 without functional change
Add new script to return configured and actual AnyRover orientation to AnyControl
PIC tool: accept hex values as input, and add -H to show bits of NVGPO
Bugfix: add missing libraries to SNMP and curl
Certificates: allow changing of subject when creating certificates, check for CA only when creating certificates, not for CSR and make some formatting
IPsec: delete temporary private key file before using it
GPIOs: add device file for 1PPS and set to input
Changes from v1.8.1 to 1.8.2 (22 January 2014)
NTP: allow restrict flags to prevent possible denial of service attack on other systems
set minimum date in startup script
Gpio_daemon: new cablynxctrl commands: esfon, esfoff and gpsreset and new functions for GPS data sanity checks
remove gpio_out because this is now done via PIC tool
Bugfix: do not remove comments and empty lines in [script]- and similar sections of cablynx.conf during boot
Add support for Sierra Wireless MC8705 modem
Bugfix: make roaming disabling work correctly with new cablynxctrl commands roamingstatus, roamingon and roamingoff
Bugfix: set selrat command after roaming in gpio_daemon
Kernel: add support for RT53XX WLAN cards
WLAN: sort and rename WLAN modules according to USB bus position. Add parameter wlan_switch to switch wlan0 and wlan1
Switch off power of WLAN modules during boot
Bugfix: get rid of error message during boot
Bugfix: parameter -L in dhcpcd is lost when using "dhcpcd -n"
Changes from v1.8.0 to 1.8.1 (30 December 2013)
Gpio_daemon: split AT socket handling in two parts accept and recv to prevent unnecessary log messages. add feature to detect ethernet cable plug events and call hook scripts. make out_on/off in cablynxctrl work again. Fix EKF-Message for ekfreset
Update PIC application to new version
external USB port: switch off power during early boot and suppress output
PIC-Tool: do not allow to set wdog interval to less than 20s, extend to allow 5V and console enable/disable, set logic for switch enable/disable, limit input values to allowed ranges
remove gyrocontrol script because it is no longer needed
Show commands: add "show wlan", cleanup "route" and "ip"
Bugfix: make it possible again to switch watchdog off
Modem: add firmware update support for MC7710 modem and prevent sefault on unknown type
Update modem driver
Add possibility to disable roaming on 2G/3G/4G interface
MobileIP: Bugfix: do not make 2.5min timeout upon ppp down, do not deadlock when only route to HA changes IP address
change order of some startup scripts
Bugfix: make dead reckoning work correctly again
Time zone handling: adjust for new libc based system and add timezone info database
IPsec: modify private key if it is in pkcs8 form, which strongswan cannot handle. Adjust pluto to prevent some log messages
apps: update wget and add ssl support
Changes from v1.6.17 to 1.8.0 (28 November 2013)
Add ubootenv and nvram tool to be able to reed u-boot config and nvram info
Extend command "show ip" to show VLAN switch ports and add funtion "show route all" to show all routing tables
Add some more infos about GPS to "show tech" command
Add backoff mechanism such that modem waits longer and longer after failed login attempts
WLAN: allow certificate based authentication
config: adjust some wireless default values
add support for DIP switches
Adjust gpio_daemon for new hardware
Add tools pic, to communicate with PC, and arpp for PIC reprogramming
MobileIP: update to version 0.9.2
Config: disable [wan] per default
WLAN: add Redping WLAN driver for Digi iMX53 internal WLAN card
GPIOs: set some default values for LED GPIOs (all green)
Add QT and threading libraries, needed for PIC programming software
WLAN: remove support for first generation WLAN card based on RT73 chipset
Add function to LED control to switch off all LEDs
Speed up boot process
Make all serial ports work
Add new startup script and driver as kernel module for SD-card
Kernel: register all GPIOs that have a gpio-function
Make new makedevs.conf for AnyRover V2
Add GPIO kernel modules and remove ADC modules
Add GPIO expander
Replace core libraries
Update tools and libraries for new processor and remove utilities for old processor
Update kernel to version 2.6.35