Skip to content
Tag: 19.10.0
Commits on Oct 22, 2019
  1. Remove excessive NMEA warning messages

    stan-podin authored and nushcone committed Oct 16, 2019
    The problem is that under certain conditions NMEA warnings flood
    the log (5 messages per second).
    The fix is to change the log level of the messages from WARNING
    to DEBUG
    Resolves: LE-9245
    Change-Id: I0485e6fdae06b0b5090aad1204d70750741d581b
    (cherry picked from commit a40db73)
  2. Fix for GPIO pulsating on repeated Activate calls

    stan-podin authored and nushcone committed Oct 9, 2019
    The problem is when "out" is written to the direction file in the sysfs,
    the Linux kernel will overwrite the current value of the GPIO
    and set it low. Legato will then continue to set the GPIO high.
    The net result is that there is a very brief low pulse on the GPIO if
    it is already set as an output, and is set high.
    The fix is to skip writing the direction to the file, if the direction
    is already correct.
    Resolves: LE-13244
    Change-Id: If408e5af608bcc255c76a07d2bcc232a383f42a2
    (cherry picked from commit 5e715d7)
Commits on Oct 18, 2019
  1. Fix atServer delete error code return incorrect results

    Nguyen Hai Thanh
    Nguyen Hai Thanh committed Sep 23, 2019
    le_atServer_DeleteErrorCode() returns:
        - LE_OK     The function succeeded
        - LE_FAULT  The function failed to delete the error code
    Resolves: LE-10932
    Change-Id: If3da9a1fefe7912ea2254a66afc8231dc72c5bb8
    (cherry picked from commit e3dc858)
Commits on Oct 16, 2019
  1. Fix atServer does not support max commands size and max text size

    Nguyen Hai Thanh
    Nguyen Hai Thanh committed Sep 24, 2019
    Resolves: LE-13270
    Change-Id: I0a722f65f556580453c0a9db2b2eeec2617618f5
    (cherry picked from commit 9dac58c)
Commits on Oct 10, 2019
  1. Fix channel eth0 is missing sometimes when calling le_dcs_GetChannels

    kevincaocanada committed Sep 30, 2019
    Resolves: LE-13577
    Change-Id: I1accbf53614bfed601eafb6c1c3a31441f424101
    (cherry picked from commit 7829e55)
Commits on Oct 7, 2019
  1. Empty arguments when using le_arg_GetArg

    mghicho authored and Andrew Macisaac committed Sep 20, 2019
    [RTOS] le_arg_GetArg always returns empty even arguments are specified in app runProc cmd
    Fix the issue where arguments where not duplicated and therefore after
    living the CLI task would become null.
    Resolves: LE-13537
    Change-Id: Ia79b23631797384152c870051173e62356e12877
  2. Modify mkTools to consume KConfig environment

    Andrew MacIsaac authored and CoRfr committed Oct 2, 2019
    The mkTools now automatically consume the produced by the
    Legato framework build from the KConfig settings.  This allows the
    tools to operate properly as long as the is present in the
    appropriate subdirectory of $LEGATO_ROOT.
    Resolves: LE-13180
    Change-Id: I734b628a0145f4f799b121e3c99809cf085fb8d6
Commits on Oct 4, 2019
  1. [Docs] Add Release Notes for 19.09

    sarraly authored and CoRfr committed Sep 26, 2019
    Resolves: LE-13573
    Change-Id: I25e881fb4516dd723a3552ada929bac828dcb5ee
Commits on Oct 3, 2019
  1. Fix for secStore API not returning LE_OVERFLOW

    stan-podin committed Oct 1, 2019
    Update Secure Storage unit test to include case provoking
    buffer overflow situation with non-zero size output buffer.
    Resolves: LE-13340
    Change-Id: I2e67bbce01e39325bc394d32ffffa75f9ba17992
Commits on Oct 2, 2019
  1. Fix for WatchDog not working for test app "monitoredService"

    stan-podin authored and jbacksierrawireless committed Sep 26, 2019
    The problem is, that if the watchdog is built using "mkapp" for
    a Linux target (e.g. wp76xx), then the config variable
    LE_CONFIG_LINUX may not be imported, and as a result le_wdog.api
    is included as "optional". This results in the failure of the
    TryConnectService() call, and watchdog not being activated.
    The fix is to invert the conditional compilation logic so that
    even if the LE_CONFIG_LINUX is not set, the app still would include
    the le_wdog.api correctly.
    Resolves: LE-13515
    Change-Id: Ia70d9083c9e51256d63598850629199793a17efe
  2. Fix for number of supplementary groups not being initialized.

    stan-podin authored and jbacksierrawireless committed Sep 30, 2019
    If the app is sandboxed and there are no groups configured, then
    the data member numSupplementGids is used without being initialized.
    The fix is to memset to 0 the whole newly allocated structure
    (to avoid similar problems with other data fields) and to reset
    it to 0 if no groups are found in the config tree.
    Resolves: LE-13583
    Change-Id: Ia9fa367ecde58198080abab2909c8cb09f1ceff9
Commits on Sep 27, 2019
  1. Validate a client app's async handler before calling it in le_mdc

    Andrew Au Andrew Au
    Andrew Au authored and Andrew Au committed Sep 16, 2019
    Under stress, when le_mdc is ready to call the client app's callback
    handler after completing its async API cal, it might have been closed.
    This fix gets le_mdc archive the callback handler of each async API
    so that it can be removed upon its client app's closing and validated
    before being called. Otherwise, crash or memory corruption will happen.
    Resolves: LE-12657
    Change-Id: Ia75e299520f729d13e18b524b386ecb4cd332b30
  2. [cm] Change test site protocol to https

    Kevin Liu authored and CoRfr committed Sep 11, 2019
    Adopt FX30 team's change. Change the test site application protocol from http to
    Resolves: LE-12613
    Related: ALPC-736
    Change-Id: I9a4f12b2e5b6204bcd4ec275fd8e4f2b0f32af8f
    Signed-off-by: Kevin Liu <>
Commits on Sep 25, 2019
  1. Fix for memory leak in AVC Coap Layer

    stan-podin authored and nushcone committed Sep 18, 2019
    Remove the handler from the function parameters, and declare as a
    separate event.
    Introduce a possibility to cancel the stream.
    Resolves: LE-13459 LE-13460
    Change-Id: Ic8725e043e8b7a7521c91178270d0c09c84326c6
Commits on Sep 23, 2019
  1. [virt] Fix file location

    CoRfr committed Sep 23, 2019
    Resolves: LE-13529
    Change-Id: Ie44b569ea99eab3e276d3f9855552a11bcabfa1b
  2. [virt] Fix simu start if LEGATO_TARGET is not set

    CoRfr committed Sep 19, 2019
    Resolves: LE-13529
    Change-Id: I343502eb84f8818b5ec55ff97575b3986c442b33
Commits on Sep 17, 2019
  1. Remove dcsNet.c code reported as dead by Coverity

    Andrew Au Andrew Au
    Andrew Au authored and Andrew Au committed Sep 17, 2019
    Resolves: LE-13523
    Change-Id: I1cc944c0652c72457206e46e531da0a287788000
Commits on Sep 13, 2019
  1. [update] Check for valid app name

    CoRfr committed Sep 12, 2019
    If we use some invalid characters in 'app remove' for instance,
    it crashes the system.
    Resolves: LE-13291
    Change-Id: Ieeff6ea67e0c92f4aa85f160cf01b5472d9a9d4c
  2. Implement multiple default GW config backup copies in LIFO order

    Andrew Au Andrew Au
    Andrew Au authored and Andrew Au committed Aug 30, 2019
    The network config management functionality in le_data which then was moved to le_net
    used to support only 1 backup copy which cannot fulfill the need for multiple data
    channels. This patch set enhances it to support multiple copies, and retrieve the
    system's current default IPv6 GW setting.
    Resolves: LE-13367 LE-13415
    Related: LE-12259
    Change-Id: I2648379bdaca5743e9ba71425046490416d02a68
Commits on Sep 11, 2019
  1. Fix for increased Legato startup time

    stan-podin committed Sep 6, 2019
    Legato startup delay (5..10s) is caused by loading the Modem PA
    from the start program.
    The fix is to read the /proc/sys/kernel/poweroff_reason file instead,
    to determine whether the reboot is due to HW fault.
    Query the modem for the reboot reason only if:
    - the poweroff_reason file doesn't exist AND
    - the current reboot happened shortly after the previous one.
    Resolves: LE-10753
    Change-Id: I565cce034b075a90647d107380f3545f12c511b4
  2. [virt/raspi] Disable SMACK

    CoRfr committed Aug 22, 2019
    Since Legato framework is currently not compatible with kernel above
    4.14 because of SMACK issues related to sockets, this patch disables
    SMACK management in Legato.
    Also disabling for Raspberry Pi in case someone wants to experiment
    Legato with a recent Linux.
    Resolves: LE-13384
    Related: LE-12236
    Change-Id: I59b20a22a6e2ac50cce8dd2223af218f02fe8169
  3. Update legato-qemu to support wp76xx/ar758x

    CoRfr committed Aug 23, 2019
    Rework target files to use to type of Dockerfile
      - (alpine) uses official qemu package from Alpine distribution
      - (build) uses Sierra fork of QEmu to support Sierra targets
    The qemu fork is extracted in legato/3rdParty/qemu/ (currently v2.6.2)
    and is picked up by (and to build it.
    legato-qemu is updated to handle info provided along the kernel & rootfs
    (packaged in a 'rawflash' file) as a JSON file.
    The new format is a little more flexible than the original qemu-config
    format that was just a list of VAR=value declarations.
    Resolves: LE-13386
    Related: LXSWIREF-345
    Change-Id: I8ee8358ce19cc4acadd33e08ad694af85f899411
Commits on Sep 10, 2019
  1. Update the documentation for the 'bundles' section of definition files

    nushcone authored and CoRfr committed Sep 5, 2019
    When bundling an empty directory into an app, the directory will not be copied
    over. Update the documentation to reflect this behaviour.
    Resolves: LE-13314
    Change-Id: I244416b766d1510d04d88e6d29560c37d71b17e6
  2. Update secStore APP path after app/SOTA update

    azhao authored and nushcone committed Nov 12, 2018
    Registered app install/uninstall handlers in secStore service,
    the handler will update current APP path, thus when a legato
    system is updated by SOTA or app update, current APP path will
    be also updated to match current legato index.
    Resolves: LE-11686
    Related: LEAR7M-487
    Change-Id: I516d689c91e6cc1b226af114f7bff9f09768f0b4
    Signed-off-by: azhao <>
  3. Missing preloaded app leaves the system in a bad state

    stan-podin authored and CoRfr committed Aug 1, 2019
    In a case of preloaded app, the system is unpacked and installed
    with a symlink that may be broken if the app was not in fact
    pre-installed. Currently, such app cannot be removed or re-installed
    because CopyRecursive() does not tolerate broken symlinks.
    The fix is to make file_CopyRecursive() able to handle a symlink,
    whether it's broken or not.
    Resolves: LE-11481
    Change-Id: I1f1b907056a715c60adbe56c9df066ae80e1998b
  4. Fix for failure sending non-ASCII SMS

    stan-podin authored and CoRfr committed Sep 6, 2019
    SMS encoding can be anything, not limited to UTF8. To copy the
    SMS text, "le_utf8_Copy()" is used. This routine may fail to
    copy non-UTF8 text, because it is examining the upper bit to
    determine number of bytes in character. Therefore, the text
    that is encoded differently, may not be copied correctly.
    The fix is to revert the LE-12273 change and use "strncpy()",
    which is agonostic to the encoding, plus ensure that
    the destination is always NUL-terminated.
    Resolves: LE-13407
    Change-Id: Iab30d672ff683376eb41ed5c16f115bd36d00587
Commits on Sep 4, 2019
  1. [mkedit] Support adding search paths in SDEF

    shristi-pradhan committed Sep 4, 2019
    This patch allows support for adding appSearch, componentSearch,
    moduleSearch, interfaceSearch path to the system definition file.
    mkedit add <appSearch | componentSearch | moduleSearch | interfaceSearch>
    [system <mySys.sdef>]
    Resolves: LE-13421
    Change-Id: I4c7e9b83fed084082a26f1bfc1df35c83d385b08
Commits on Aug 30, 2019
  1. Reduce Action Runner memory consumption

    mghicho committed Aug 27, 2019
     - Fix issue with generated code for messaging memory pools
     - Add a missing change for the handler map pool also used the size defined
         in the cdef file.
     - Add new macros for declaring static pools and static hashmaps that
        accept a new argument, sectionName, which will be given to the linker
        as the section for the declared variables.
    Resolves: LE-13173 LE-13041
    Change-Id: Ieafcc5e56804e6f2247a935149ec7b970ad1f82b
Commits on Aug 29, 2019
  1. Reduce RPC Proxy memory consumption

    Lars Martin Andrew Macisaac
    Lars Martin authored and Andrew Macisaac committed Aug 23, 2019
    These changes,
    - Reduce the memory consumption of the RPC Proxy
    by reducing the number of copies of the RPC Proxy messsage being
    simultaneously held.
    - Add a KConfig flag for defining the Network connection
    retry timer period.
    - Redifine the RPC Proxy systemName string length from
    Resolves: LE-13369
    Change-Id: Ie842a06aaabd3a79c70c59d1fe78237b82c3e06a
  2. Fix Coverity Defects: API Usage error in treeDb.c

    Oscar authored and jbacksierrawireless committed Jun 21, 2019
    Coverity flagged defects in how fgetc was being used.
    The return value of fgetc was being stored in signed chars
    rather than int (as specified by the docs). This changeset
    contains changes to align our API usage in treeDb.c
    to the documentation for fgetc.
    Change-Id: Ibe24b0e02b49de87f93fa642d6dea8c803de10fe
    Resolves: LE-12455
  3. Fix for PCI Scan result Delete routine

    stan-podin authored and CoRfr committed Aug 21, 2019
    There are few problems with the Delete routine:
    - Incorrect safe reference release calls always produce error messages.
    - Reference to the "scan result list" object is never released.
    This creates a memory leak.
    - Documentation is not specific enough to highlight
    that Delete routine should be called to clean up the PCI scan results
    for both synchronous and asynchronous mode. Same for the test code.
    Resolves: LE-13361
    Change-Id: I11a24dafc03764e96e9b45ef9bc6955aeb9dad90
Commits on Aug 27, 2019
  1. Let le_data APIs proceed to get current time over le_dcs maintained d…

    Andrew Au authored and jbacksierrawireless committed Aug 26, 2019
    …ata channels
    The le_data APIs for getting current time only check for the le_data maintained
    data channel before allowing to proceed. This fix opens them up to check & use
    the le_dcs maintained channels.
    Resolves: LE-13138
    Change-Id: I15883459fa5f7c6d802c461157f18869aa89ff68
Commits on Aug 26, 2019
  1. [MCU] Asynchronous Connection Process Takes Too Long

    Lars Martin
    Lars Martin committed Aug 23, 2019
    These changes address an issue affecting the re-connection
    sequence and its dependency on the FD Monitor callback.
    Under certain circumstances, new data may be arrive and be
    waiting in the receive buffer of the serial UART,
    but FD Monitor will not trigger a new callback, thereby resulting
    in a 'stuck' start-up sequence.
    Resolves: LE-13377
    Change-Id: I111b44a63fa219a1dc660d99193a1d4f0449e78d
Commits on Aug 22, 2019
  1. [defTools] Check readOnly buildParams before creating directory

    shristi-pradhan authored and Chloe Strainge committed Aug 22, 2019
    mkedit tool must not create new directory related to build.
    Check readOnly buildParams variable and do not allow mkedit to create
    component directory which is build related.
    Resolves: LE-13082
    Change-Id: Id9353ce9ed789fc0599fc4de5595cc368b2f3108
  2. Fix for device reboot if NULL iterator is passed to ConfigTree API.

    stan-podin authored and CoRfr committed Aug 22, 2019
    The fix is to treat NULL case the same way as any other invalid
    external iterator reference: let le_ref_Lookup() fail to find the
    internal reference, and kill the client.
    Resolves: LE-13374
    Change-Id: I3c1d3d04893bdf4963119119c068eb495c1ae39c
You can’t perform that action at this time.