Skip to content

Tags: AVSystem/Anjay

Tags

3.15.0

Toggle 3.15.0's commit message
Anjay 3.15.0

3.14.1

Toggle 3.14.1's commit message
Anjay 3.14.1

Improvements:
- Improved certificate validation by adding date validation for certificates
  received during the EST /cacerts operation.
- Errors during EST /cacerts operation increment counter of re-enrollment
  attempts.

Bufixes:
- Fixed a bug where calling `./demo --help=full` caused an assertion
- Fix a bug with processing PKCS7 encodded response during EST reenroll request.
- Fix a bug with race condition between bootstrap and EST reenroll when using high
  SREN usage percentage
- Fix a bug with calculating a next EST /sren attemp based on a certificate
  which was considered invalid and rejected.

3.14.0

Toggle 3.14.0's commit message
Anjay 3.14.0

BREAKING CHANGES:
- Removed built-in support for TinyDTLS as a security backend.
- Enrollment over Secure Transport (EST) now requires Anjay to be compiled
  with LwM2M 1.1 support.

Features:
- EST Re-Enrollment is now automatically rescheduled in case of failure with
  regards to anjay_est_reenroll_config_t::sren_attempts_count
- Added an experimental server connection error callback.
- Added random jitter to the client-initiated Bootstrap Hold-Off Time to
  prevent multiple clients from bootstrapping simultaneously (configurable via
  `ANJAY_HOLDOFF_JITTER_RANDOM_FACTOR`).
- Implemented /1/x/14 Initial Registration Delay Timer resource.

Improvements:
- Made the demo client build independent of creating a Python virtual
  environment.

Bugfixes:
- Fixed a bug in Anjay's reaction to a failed EST Simple Re-enrollment (SREN)
  operation. If the EST server responded with an error (or did not respond at
  all), Anjay deleted it's certificate and failed to communicate with LwM2M
  Management Server even though the certificate from Simple Enrollment (SEN)
  might have been still valid. Now Anjay has a retry policy for SREN operation
  (by default 10 attempts evenly distributed in time) and only if all of them
  fail, it fallbacks to the Bootstrap Server with factory certificate and
  performs EST SEN operation again.
- Fixed incorrect Register payload version semantics after Bootstrap Trigger.
- Fixed an issue where the Client Hold-Off Time resource (/0/x/11) value was
  not used when the Bootstrap-Request Trigger resource (/1/x/9) was executed.
- Fixed a possible crash in Observe notification handling when
  `stored_notification_limit` was reached while another notification was being
  sent. In such cases, Anjay could attempt to drop an in-progress notification,
  which could lead to an assertion failure during payload serialization. Anjay
  now drops the newly generated excess notification instead, leaving the
  in-progress notification intact.

3.13.1

Toggle 3.13.1's commit message
Anjay 3.13.1

3.13.0

Toggle 3.13.0's commit message
Anjay 3.13.0

Features
- Introduced experimental SSL Error API under `WITH_SSL_ERROR_API` for MbedTLS
  and custom TLS backends
- Implemented FW Update Object v1.1 Resources.
- Introduced support for LwM2M 1.2 features:
  - LwM2M CBOR format,
  - Bootstrap Pack operation,
  - Observation Attributes (carried in Observe, not in Write Attributes)
  - `hqmax` and `edge` attributes (`con` attribute is supported separatley from
    LwM2M 1.2, enabled with `ANJAY_WITH_CON_ATTR`),
  - Discover `depth` parameter,
  - SenML-ETCH CBOR & JSON formats for composite operations,
  - deleting Resource Instances.

3.12.0

Toggle 3.12.0's commit message
Anjay 3.12.0

3.11.0

Toggle 3.11.0's commit message
Anjay 3.11.0

BREAKING CHANGES:
- Default value of maximal holdoff time during Bootstrap limited from 120 sec.
  to 20 sec. The limit can still be changed using ANJAY_MAX_HOLDOFF_TIME define.
- If the Server certificate is missing from the Data Model, Anjay falls back to
  PKIX verification, provided that a Trust Store is available, even when the
  certificate usage is set to DANE-TA or DANE-EE.
- avs_commons 5.5.0 that is used by Anjay 3.11.0 stoped passing the trust store
  to Mbed TLS backend for Certificate Usage 2 or 3. For details on how Anjay
  handles Certificate Usage resource refer to
  Anjay Specification -> Advanced Topics -> Certificate Usage.

Bugfixes:
- Updated avs_commons to a version without a PSK-mode vulnerability in the Mbed
  TLS backend where a client configured for PSK could connect to a server that
  did not know the PSK, due to advertising non-PSK key exchange and skipping
  certificate verification. This issue affected only TLS 1.3 connections with
  Mbed TLS versions ≥ 3.6.1.
  For details, see: https://github.com/AVSystem/avs_commons/releases/tag/5.5.0

Features:
- (commercial version only) Added support for configuring OSCORE Object for each
  Security Object in Anjay Demo.

3.10.0

Toggle 3.10.0's commit message
Anjay 3.10.0

Features:
- Instruction how to generate packages for Anjay Demo was added to documentation.
- Dropped support for Ubuntu 18.04 and removed tests for it.

Bugfixes:
- Fixed `devconfig` script which was incorrectly setting Anjay version in logs
  to "unknown".
- Added canceling the Register or Update message exchange if it's in progress
  when Server Disable (with resource execution or by API) is called that could
  have led to disabling the server infinitely.

Improvements:
- Unified script for generating packages in integration tests, now it can also
  be used to generate packages for the Software Management object.
- The format of the metadata for packages used in integration tests and the
  demo has been revised to be more unambiguous and unified.
- Added `confirmable_notification_status_cb` handler that is called if
  acknowledgement for confirmable notification is received from the Server or
  some error has occurred.

3.9.0

Toggle 3.9.0's commit message
Anjay 3.9.0

Features
- LwM2M Gateway functionality was added. To see the feature description, API
  documentation and tutorial on its usage, see Anjay docs
- Added a ``coap_downloader_retry_count`` and ``coap_downloader_retry_delay``
  configuration options that allow to resume the CoAP download process in case
  of network errors.

Improvements
- Extended the functionality of the flag enabling Connection ID to also include
  connections to the file download CoAP server, in addition to the LwM2M server
- Migrated GitHub Actions tests on macOS to the macos-14 runner.
- Refactored test_ghactions.py.
- Added Github Actions test on macOS for the AppleClang.

Bugfixes
- Ensured that Github Actions tests on macOS actually runs on LLVM installed
  from Homebrew instead of AppleClang.
- Minor fix in the devconfig.

3.8.1

Toggle 3.8.1's commit message
Anjay 3.8.1

Improvements
- Improved the coverage script and switched to lcov.
- In case when the LwM2M server answers with an RST message to a notification
  that is yielding an error value (e.g. failure to read), which effectively
  cancels the notification, Anjay is not infinitely trying to transmit that
  message with error value once again. New behavior is enabled by default, and
  controlled with `WITH_AVS_COAP_OBSERVE_FORCE_CANCEL_ON_UNACKED_ERROR` option
  of `avs_coap`. Existing projects have to opt-in explicitly.
- Added `--nobest` flag to `dnf update` in Rockylinux image preparation for
  tests to solve installation candidates conflicts.

 Bugfixes
- Actually fixed compatibility with Mbed TLS 3.6.
- Fixed compatibility of integration test framework with Mbed TLS versions that
  enabled TLS 1.3, but didn't use `MBEDTLS_USE_PSA_CRYPTO`.
- The -Wformat warning appearing in some compilers has been fixed.
- Fixed LwM2M CBOR parser incorrectly accepting inputs containing empty arrays
  as keys
- Prevent from generating non unique session tokens when the monotonic system
  clock granulation is not fine enough.
- Refactored how timeouts are handled in pymbedtls to be in line with use of
  mbedTLS in avs_commons.