Commit Graph

368 Commits (ad0ea05f57edc9b3a8b4b40e910aae86794e44ba)

Author SHA1 Message Date
Xiaodong Li e39bb188dd
Implement libslirp for FreeRTOS_Plus_TCP_Echo_Posix demo (#1026)
* Update freertos-plus-tcp-echo-posix git workflow to include echo server setup with port 5000, update Ubuntu runner version to 22.04, install glib and libslirp, and add git run action with TRACE_ON_ENTER=0 which disables trace output saved msg

* Update ipconfigNETWORK_MTU to 1500, ipconfigBUFFER_PADDING on 64-bit platforms, and FreeRTOS-Plus-TCP submodule libslirp version number in backend file

* Format code, update lexicon.txt and create ReadMe

---------

Co-authored-by: Xiaodong Li <xiaodonn@amazon.com>
2 years ago
Monika Singh 9f6437ca6a
Update MQTT demo timeout and record length (#1030)
* Update MQTT plain text demo timeout and record length

* Update Helper functions

* Update timeout comment

* Update Readme with more details
2 years ago
Tony Josi 3be041eacb
Fix TCP echo posix demo warnings (#1031)
* fix warnings

* update naming

* updating +TCP to latest

* review comments fix
2 years ago
Monika Singh 301ed5881b
Merging IPv6 demo changes to main (#1028)
* Add IPv6 Demo (#937)

* Add demo changes

* Update kernel and library paths

* Update main.c

* Run uncrustify

* Fix spell checker

* CI check file headers update

* Add IPv6/v4 UDP echo server with zero copy/non-zero copy versions

* Add VS proj file changes to include the UDP echo sample code

* readme update

---------

Co-authored-by: Tony Josi <tonyjosi@amazon.com>

* Update Backward Compatibility Flag (#954)

* Update Backward Compatibility Flag

* Update FreeRTOS_GetUDPPayloadBuffer_ByIPType

* Update FreeRTOS_IPStart to FreeRTOS_IPInit_Multi

* Update Application APIs

* Remove ipconfigCOMPATIBLE_WITH_SINGLE

* Update Static Lib files (#956)

* Update Static Lib files

* making vApplicationIPNetworkEventHook backward compatible in demos

* Update CI check file headers

---------

Co-authored-by: Tony Josi <tonyjosi@amazon.com>

* Add WinPCap NetworkInterface Changes (#958)

* Update winpcap network interface

* Run uncrustify

* Update function to include NetworkInterface_t parameters

* Adding compatibility for xApplicationDNSQueryHook with latest dev branch for old demos (#957)

* adding compatibility for xApplicationDNSQueryHook with latest dev branch

* adding tcp echo server source

* removing unused sub demos

* fix build issues (#969)

* Update demo to latest +TCP dev/IPv6_integration (#978)

* remove macro namings

* rename sin_addr to sin_address.ulIP_IPv4 for ipv6 demo

* replace in6addr_any with FreeRTOS_in6addr_any

* replace mainCREATE_UDP_ECHO_SERVER_TASK with mainCREATE_UDP_ECHO_TASKS_SINGLE

* handle removal of sin_addr macro to sin_address.ulIP_IPv4

* updating +TCP repo to latest dev/IPv6_integration

* minor update to more clear code

* more sin_addr to sin_address.ulIP_IPv4 replacements

* fix makefiles for qemu and posix demos

* review feedback changes

* Update FreeRTOS-Plus-TCP for RC2

* Change from PR (#994)

* Update FreeRTOS-Plus-TCP for RC2

* Update copyright

* Ignore WinPCap for files header check failure.

* Update checker

* Update manifest

* Point manifest to latest commit

* Fix Spell-checker

* Update doxygen

* Update xApplicationDHCPHook for backward compatibility  (#999)

* Update xApplicationDHCPHook for backward compatability

* Update IPv6

* Update VisualStudio Static Project files

* Update pxEndPoint error (#1002)

* Update IPv6 demo ReadMe (#1004)

* Update ReadMe

* Update setup requirement

* Update UDP demo info

* Update comment

* TCP demo changes post build separation (#1011)

* adding sin_family to dest adddr for FreeRTOS_sendto

* updating FreeRTOS_bind to input sin_family post build separation changes

* updating FreeRTOS_connect to input sin_family post build separation changes

* minor fix

* updating copyright year

* updating file headers

* updating +TCP submodule

* updating file headers

* updating file headers

* updating manifest file to have latest +TCP submodule hash

* Fix issue with posix demo while running with ipconfigIPv4_BACKWARD_COMPATIBLE enabled for +TCP stack (#1027)

* Update the submodule pointer to IPv6 main

* Update manifest with latest TCP commit

* Update file checker exception

* Ignore Visual studio project file from file header checker

---------

Co-authored-by: Tony Josi <tonyjosi@amazon.com>
2 years ago
kar-rahul-aws afb776cc39
Update FreeRTOSConfig.h (#1008) 2 years ago
Gaurav-Aggarwal-AWS c8c1c12765
Remove cast from configMINIMAL_STACK_SIZE (#971)
The configMINIMAL_STACK_SIZE was defined to PTHREAD_STACK_MIN with cast
to unsigned short. This cast cab be too restrictive and result in
truncation on some platforms. This commit removes this unnecessary cast.

Related issue - https://github.com/FreeRTOS/FreeRTOS/issues/967

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2 years ago
kar-rahul-aws 69904a7537
Update TCPEchoClient_SingleTasks.c (#968)
Bug fix for https://github.com/FreeRTOS/FreeRTOS/issues/967
2 years ago
kar-rahul-aws 4483c16bd5
Update Readme for the FreeRTOS_PLUS_TCP_ECHO_QEMU_msp2 (#939)
Update Readme for the FreeRTOS_PLUS_TCP_ECHO_QEMU_msp2

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
2 years ago
kar-rahul-aws 25d9826eaf
Fix issues in TCP QEMU Demo (#948)
* Fix issues in TCP QEMU Demo

* set the Ethernet interrupt priority

* Include CMSIS header files to fix build issues

* Review suggestion

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

---------

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
2 years ago
Tony Josi 9fa0fb7f0d
update the freertos + TCP demos to use the neew API for getting the UDP pyaload buffer [FreeRTOS_GetUDPPayloadBuffer_ByIPType] (#938) 2 years ago
kar-rahul-aws 38d5e421eb
Changes in FreeRTOS+TCP demo application files to add compatibility for running EndPoint changes in the IPv4 stack. (#907)
* Update main.c

* Update main.c

* Update main.c

* Update main.c

* TCP/IP Demo Changes for Sock Addr Changes

* Update SimpleClientAndServer.c

* Update TwoEchoClients.c

* Update SimpleUDPClientAndServer.c

* Update main.c

* Update main_networking.c

* Update TwoEchoClients.c

* Update SimpleClientAndServer.c

* Update TwoEchoClients.c

* Update SimpleUDPClientAndServer.c

* Update main_networking.c

* Update main_networking.c

* Update main_networking.c

* Update main.c

* Update main_networking.c

* Update main_networking.c

* Update main.c

* Update main.c

* Update main.c

* Update main_networking.c

* Update main_networking.c

* Update plus_tcp_hooks_winsim.c

* Update plus_tcp_hooks_winsim.c

* Update main.c

* Update main.c

* Update main_networking.c

* Update main_networking.c

* Update plus_tcp_hooks_winsim.c

* Update lexicon.txt

* Update lexicon.txt

* Update lexicon.txt

* Fix core header check

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Update main_networking.c

* Update CLI-commands.c

* Update plus_tcp_hooks_winsim.c

* Code review suggestions

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Remove incorrect spelling from lexicon

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Fix Build issues in QEMU and UDP demo

* Lexicon spell check issue fix

* WinPcap Network Interface update

* Update Network_winPCap.c

* Adding declaration for pxMyInterface for EndPoint changed function in WinPCap.c

* Revert changes for WinPCap.c

* Update NetworkInterface_WinPCap.c

* Minor code review suggestions

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

---------

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
2 years ago
Kody Stribrny fe9322ca23
Remove commented signing cert constant (#917)
Removes the commented signing cert constant
variable from the PAL header file. The
correct location for this constant is the
aws_ota_codesigner_certificate.h file.
2 years ago
jasonpcarroll 6f7f9fd9ed [AUTO][RELEASE]: Bump file header version to "202212.00" 2 years ago
Paul Bartell b66a75936f mbedtls-pkcs11: Separate mbedtls rng pkcs11 callback into separate file 2 years ago
Paul Bartell 0ca1ec8861 Fix memory leak in transport_mbedtls_pkcs11.c 2 years ago
Soren Ptak 1fc1e01fb6
FreeRTOS Trace Fixes (#888)
* Updating the FreeRTOS/Demo/Posix_GCC Demo's Trace.dump file Creation
* Updating the FreeRTOS-Plus/Demo/FreeRTOS_Plus_TCP_Echo_Posix Demo's Trace.dump file Creation

Co-authored-by: Soren Ptak <skptak@amazon.com>
2 years ago
jasonpcarroll b9f2248c5b [AUTO][RELEASE]: Bump file header version to "202211.00" 2 years ago
Soren Ptak 8424589ed1
FreeRTOS Windows Simulator Build Changes and LTS 2.0 Update (#872)
* Update mbedtls to version v3.2.1

* Adjust include paths for github workflow

* Update FreeRTOS+TCP to v3.1.0

* Add initial VS project files for Kernel, +TCP, and mbedtls

* winpcap: Consolidate to a single copy of WinPcap

* Downgrade library projects to VS 2019. Add heap_4 to kernel.

* Remove *.vcxproj.user files and add to gitignore

* Disable unwanted kernel config options

* Update FreeRTOS+TCP and Kernel include paths

* Update FreeRTOS+TCP Windows Minimal sln

* Remove .suo and .vcxproj.user files

* Update mbedtls transport implementations for mbedtls v3.2.1

* Fix typo in mbedtls_freertos_port.c

* Update vcxproj files for +TCP, Kernel, Mbedtls

* Fix typo in name WindowSimulator -> WindowsSimulator

* Add wpcap lib to FreeRTOS+TCP.vcxproj

* Update FreeRTOS+TCP Minimal Demo for Windows Simulator

* Mask MSVC string function warnings

Aad _CRT_SECURE_NO_WARNINGS preprocessor definition.

* Move projects to their own directories to make VisualStudio happy

* mbedtls_freertos_port.c: Fix formatting?

* Add coreHTTP, Logging libs. Adjust dependencies

* Disable FreeRTOS Kernel malloc failed hook

* Update coreHTTP Plaintext demo

* Rename / relocate transport interface implementations

* Remove old VS project files

* Remove extra core_http_config.h files

* Remove extra FreeRTOSConfig.h files

* Remove extra FreeRTOSIPConfig.h files

* Remove old mbedtls_config.h files

* Remove old FreeRTOSConfig and core_http_config files

* Update HTTP Mutual Auth Demo build files

* Fix transport_plaintext.h include name

* Update HTTP_Plaintext demo build files

* Update CoreHTTP_S3_Download VS project files

* Update HTTP_S3_Upload demo build files

* Update CoreHTTP_S3_Download_Multithreaded demo build files

* Add GithubActions builds for FreeRTOS+ CoreHTTP Demos

* Update S3DownloadHTTPExample.c to be compatible with mbedtls 3.x

* Update GithubActions FreeRTOS+ config file

* Combine core_pkcs11_config.h files into a single one

* Add corePKCS11 VS project file

* Update corePKCS11 WinSim demo project and build files

* Update corePKCS11 library to version 3.5.0

* Modifiying demos to build using static libraries

* Adding a header file

* Two more demos

* Update corePKCS11 demo code and auto-format

* Downgrade corePKCS11 library build file to v142 / VS 2019

* Speed up CI builds with selective submodule initialization

* Separate corePKCS11 demo into it's own job.

* Remove WIN32.vcxproj and WIN32.vcxproj.filters files

* Remove old configuration header files

Partially reverts 73829ced60

* Revert unwanted coreHTTP demo changes

* Changing include paths for demos

* Adding an include

* MQTT WoflSSL Demo update

* wolfSSL Demo changes

* Config changes for MQTT Demos

* Initial Device Defender demo update.

* Initial Device Shadow demo update.

* Update mbedtls_transport_pkcs11 for Mbedtls 3.x

* Update corePKCS11 MQTT Mutual Auth demo

* Add a default definition of SdkLog

* Update CorePKCS11 + MQTT Mutual Auth demo sln name

* Build all configs of coreHTTP demos

* Update coreSNTP Demo build files.

* Update coreSNTP Demo sln name

* Update FreeRTOS+TCP Posix demo

* Update FreeRTOS+TCP Qemu ARM MPS2 AN385 Demo

* Update FreeRTOS+TCP Demo Github Actions builds

* Update Fleet Provisioning WinSim Demo build files

* Remove mbedtls_pk_info_t references from mbedtls_pk_pkcs11.h

* Restore / update the FreeRTOS+TCP Minimal WinSim demo

* Initial Jobs demo update.

* Fix jobs demo build.

* Initial OTA over HTTP demo update.

* Initial OTA over MQTT demo update.

* Ota_Over_Mqtt_Demo build fix.

* OTA over MQTT demo fix.

* Update HTTP demo solution file name for CI.

* Update Github actions workflow to old HTTP demo names.

* Update coreSTNP demo to old solution name.

* Fix defender demo / fix mbedtls config to use threading alt.

* Add MBEDTLS_CONFIG_FILE definition to each config

* Fix config file name.

* MQTT Mutual auth fixes.

* Fix job demo.

* Device shadow demo fixes.

* Fix coreSNTP demo not setting alt threading functions for mbedtls.

* Enable Static allocation, Add default hooks for FreeRTOS Kernel and +TCP

* Add xPlatformIsNetworkUp platform function to FreeRTOS+TCP hooks

* Enable runtime statistics in the Windows Simualator Kernel config

* Revert "Fix coreSNTP demo not setting alt threading functions for mbedtls."

This reverts commit 9069707519.

* Revert mbedtls threading related config changes

* Add xPlatformIsNetworkUp function prototype

* Remove boileplate FreeRTOS kernel and +tcp hooks

* Refactor device defender demo for clarity

* Add wait loop calling xPlatformIsNetworkUp

* Add missing vPlatformInitLogging function

* Add vPlatformInitLogging and vLoggingPrintf defitions to logging headers

* Updating the FreeRTOS_Plus_CLI_with_Trace_Windows_Simulator

* Updating the FreeRTOS_Plus_Reliance_Edge_and_CLI_Windows_Simulator demo

* Updates to the FreeRTOS_Plus_WolfSSL_Windows_Simulator demo

* Fixing wrong include path

* Upating FreeRTOS_Plus_WolfSSL_FIPS_Ready_Windows_Simulator demo

* Update coreMQTT WinSim demos to print start and end condition.

* Modifiying repos updated as part of the CLI demo GitHub workflow

* Removing duplicate functions from the FreeRTOS_Plus_TCP_Minimal_Windows_Simulator demo

* Updated FreeRTOS_Plus_TCP_UDP_Mode_CLI_Windows_Simulator demo

* Updating corePKCS11_MQTT_Mutual_Auth_Windows_Simulator Demo to call the static function that creates task

* Fix log message using unitialized string in MQTT Multitask demo.

* Fixing a broken extern function

* Fixing a typo extern function name

* Added a reference to coreHTTP

* Fixing a pre-processor issue in the OTA_Over_Http_Demo

* Updating the MQTT_Mutual_Auth_Demo_with_BG96 demo

* Updating the MQTT_Mutual_Auth_Demo_with_HL7802 demo

* Changes to the MQTT_Mutual_Auth_Demo_with_SARA_R4 demo

* Fix demos for CI.

* Adding the source path to the CBMC proofs for FreeRTOS+TCP

* Spell check fixes, adding words to lexicons

* Fixing a typo

* Add arg to skip prompt in setup script.

* Update paths of script to be relative to the file.

* Changing manifest.yml file to point to corePKCS11 3.5.0

* Added CI markers to cellular demos.

* Fix cellular demo flow.

* Fix celullar demos.

* Initial TCP sockets wrapper rework - will break things.

* First cellular demo fix for new sockets wrapper.

* Minor fix to cellular sockets wrapper.

* Fix mbedtls bio using FreeRTOS Plus TCP call.

* Clean up BG96 demo project files.

* Update HL7802 demo.

* Fix SARA R4 demo for new sockets wrapper.

* Fix Device Defender, Device Shadow, and Fleet PRovisioning.

* Fix Jobs demo.

* Fix OTA over HTTP demo.

* Fix OTA over MQTT demo.

* Fix HTTP mutual auth demo.

* Fix OTA over MQTT demo endianness.

* Fix OTA over HTTP demo endianness.

* Fix HTTP Plaintext demo.

* Fix HTTP S3 download demo.

* Fix plaintext transport

* Fix OTA demos.

* Fix OTA demos.

* Fix OTA HTTP demo.

* Fix HTTP S3 Download multithreaded demo.

* Fix HTTP S3 Upload demo

* Fix corePKCS11 Mutual Auth demo.

* Updating MQTT_Mutual_Auth

* Update pkcs11 setup script.

* Updating the MQTT_Basic_TLS Demo

* Organize PKCS11 demos project.

* Updating MQTT_Keep_Alive demo

* Clean up SNTP demo.

* Updated MQTT_Multitask demo

* Updated MQTT_Plain_Text

* Updating the MQTT_Serializer Demo

* Updating corePKCS11_MQTT_Mutual_Auth_Windows_Simulator

* Updating coreSNTP_Windows_Simulator

* Clean up demo projects.

* Add markers to PKCS11 mutual auth demo.

* Fix Fleet Provisioning demo script.

* Fix SNTP demo solution.

* Fix coreSNTP project files.

* Fix Fleet Provisiong script.

* Fix fleet provisioning script.

* Fix demo config template.

* Fleet provisioning demo markers.

* Updating MQTT_Mutual_Auth_wolfSSL demo and the transport_wolfSSL file

* Fixing FreeRTOS_Plus_TCP_Echo_POSIX

* Fixing CLI and Trace Demos

* Fixing TCP_ECHO_POSIX demo

* Adding a word to the lexicon

* Remove unneeded files.

* Update github workflows to use Ubuntu 20.04.

* Change OTA demo target names to RTOSDemo for OTAE2E tests.

* Fixing Headers

* Updating headers

* Two more headers

* Adding words to the lexicon

* Whitepsace

* Ignore mbedtls config file for header check.

* Removing FreeRTOS Header from the mbedtls_config_v3.2.1.h file

* Fix bug in lPKCS11PkMbedtlsCloseSessionAndFree. Add doxygen api docs.

* Update lexicon.txt

* Fix spelling

* Apply suggestions from code review

Co-authored-by: jasonpcarroll <23126711+jasonpcarroll@users.noreply.github.com>

* Add return code comment for p11_ecdsa_ctx_init

* Rename WindowsSimulator folder to VisualStudio_StaticProjects.

* Remove references to coroutines

* Fix mbedtls_pk_pkcs11.c

* Update to LTS 2.0 submodule pointers (#880)

* Update submodule pointers to LTS 2.0

* Initial coreMQTT 2.1.1 update.

* Update AWS demos for coreMQTT 2.1.1

* Fix deprecated macro for coreMQTT demos.

* Fix keep alive demo.

* Fix plaintext demo.

* Fix MQTT wolfSSL demo.

* Fix MQTT PKCS11 demo.

* Remove duplicate functions.

* Fix Mutual auth demos for Cellular.

* Fix OTA demos.

* Fix header of plaintext demo config.

* Set writev to NULL for OTA demos.

* Fix mbedlts config for OTA demos.

* Fix spelling.

Co-authored-by: Jason Carroll <czjaso@amazon.com>

* Removing blank line

* Fix jobs demo race condition.

* Fix race condition from WinPCap network interface.

* Update lexicon.

Co-authored-by: Paul Bartell <pbartell@amazon.com>
Co-authored-by: Jason Carroll <czjaso@amazon.com>
Co-authored-by: Paul Bartell <paul.bartell@gmail.com>
Co-authored-by: jasonpcarroll <23126711+jasonpcarroll@users.noreply.github.com>
2 years ago
Kody Stribrny 54d4eeaa26
Add Vectored Interrupt Support To SiFive RISC-V Demo (#871)
Update SiFive IAR demo to support vectored interrupts. This is a near copy of https://github.com/FreeRTOS/FreeRTOS/pull/797.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
2 years ago
Erik Tamlin c568ba8c44
Percepio Trace Recorder v4.6.0 (#789)
* * Percepio Trace Recorder v4.6.0

* Add space between inclusion of header and comment

* Fix broken posix build - part 1

* Add percepio timer implementation

* Remove delted trace recorder header file

* Fix Networking demo  build

* Fix CLI demo

* Fix visual studio version number

* Fix core header check

* Fix more core checks

* Fix last of core checks

Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>
Co-authored-by: Alfred Gedeon <alfred2g@hotmail.com>
2 years ago
ActoryOu 2f366a837d Set and update submodule pointer correctly. 2 years ago
ActoryOu 324718d640 Rename module to reduce the file path. 2 years ago
chinglee-iot 51def4683f
Update comm_if_windows for cellular interface (#851)
* Use mutex to protect rxEvent between different threads
* Update naming for static private function
* Update cellular interface submodule pointer
2 years ago
Paul Bartell 0a46f479b9 cellular-demos: Fix alpn strings for use with mbedtls 3 years ago
Paul Bartell 5ac2925d05 winsim-mqtt: Fix ALPN strings in coreMQTT demos 3 years ago
Paul Bartell bf89af210c winsim-ota: Fix ALPN strings in OTA winsim demos 3 years ago
Paul Bartell 9f7979145a mqtt_demo_helpers: Fix ALPN strings for mbedtls use 3 years ago
Paul Bartell 5d68fdb5cc winsim-ota-demos: Move checks out of demo_config.h
Move checks for undefined democonfig settings from demo_config.h to
each demo task file.
3 years ago
Paul Bartell 2ffe3de4b5 mqtt-multitask-demo: Move demo_config.h checks 3 years ago
Paul Bartell c51f6a08af FreeRTOS+CLI Demos: Update to target VS 2019 v142 3 years ago
Paul Bartell 4391920cdc coreSNTP Demo: Update file headers 3 years ago
Paul Bartell a977a8bca0 Fix paths in corePKCS11/coreMQTT demo 3 years ago
Paul Bartell c8f9dbef58 Remove unneeded execute permissions 3 years ago
Paul Bartell 466ee59830 winsim-mqtt-demos: Update VS project files 3 years ago
Paul Bartell 06e5417ff1 winsim-mqtt-demos: Remove duplicate config files 3 years ago
Paul Bartell 2ef7770bec coremqtt-winsim: Remove duplicate copy of WinPCap 3 years ago
Paul Bartell a685e63049 winpcap: Fix ip6_misc.h header file name. 3 years ago
Paul Bartell e0e488263e cellular: Update Visual Studio project files 3 years ago
Paul Bartell 7d43b62c9d cellular: Remove duplicate files 3 years ago
alfred gedeon 4242c47a8d
Demo: qemu mps2 echo client cleanup (#833) 3 years ago
johnrhen f062becb34
Create Fleet Provisioning Demo AWS Setup Script in Python (#778)
* Create CloudFormation template for demo setup

* Add CF_ prefix to CloudFormation-created resources to avoid collisions

* Update lexicon.txt

* Create initial python setup script

* Create separate demo_cleanup.py file

* Move setup items to DemoSetup folder

* Add demo_config.h setup to the demo_setup.py script

* Modify error logging on demo_setup.py

* Add file cleanup to demo_cleanup.py

* Rename convert_pem_to_der.py to convert_credentials_to_der.py

* Adjust comment wording on demo_cleanup.py

* added configUSE_TICKLESS_IDLE (#764)

* Fix tests needed for https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/435 (#766)

* Fix tests needed for https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/435

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Add tests to cover https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/435 (#768)

Add tests to cover https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/435

This ensures that the coverage does not go down with the PR
https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/435.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Add tests to increase queue code coverage (#770)

These tests cover the following portion in the queue code:

static void prvUnlockQueue( Queue_t * const pxQueue )
{
    ...

    if( prvNotifyQueueSetContainer( pxQueue ) != pdFALSE )
    {
        /* The queue is a member of a queue set, and posting to
            * the queue set caused a higher priority task to unblock.
            * A context switch is required. */
        vTaskMissedYield();
    }
    else
    {
        mtCOVERAGE_TEST_MARKER();
    }

    ...
}

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Update FreeRTOS-Kernel submodule pointer (#771)

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Add new names to spell check dictionary (#772)

* Return error if invalid input detected in transport layer (Send/Recv) (#773)

* return error if invalid input detected in transport layer

* Create mqtt_pkcs11_demo_helpers for AWS demos (#769)

* Create mqtt_pkcs11_demo_helpers by modifying mqtt_demo_helpers

* Update formatting and variable naming

* Fix multi-line parameter formatting

* Update file headers to match latest release version

* GCC/Rx100 Demo project files update to e2 Studio v8 (#776)

* Upgrade GCC project files for e2 studio v7.8.0 in Demo/RX100-RSK_GCC_e2studio folder

* Update Demo project file to e2 Studio v8 and remove the .bat file.

* Update the choice of toolchain version.

* Update the link in file header.

Co-authored-by: NoMaY (a user of Japan.RenesasRulz.com) <NoMaY-jp@outlook.com>

* Update FreeRTOS-Cellular-Interface submodule pointer (#775)

* Update cellular sub-module pointer
* Add more log in cellular_setup.c to indicate error
* Adjust cellular transport timeout value for demo application
* Add default cellular module specific config in cellular_config.h

* Create separate demo_cleanup.py file

* Move setup items to DemoSetup folder

* Add demo_config.h setup to the demo_setup.py script

* Modify error logging on demo_setup.py

* Add file cleanup to demo_cleanup.py

* Rename convert_pem_to_der.py to convert_credentials_to_der.py

* Adjust comment wording on demo_cleanup.py

* Adjust comment wording on demo_config.h

* Format files and reduce code redundancy

* Update lexicon.txt

* Remove preconfigured fields from demo_config,h

* Update convert_credentials_to_der.py

Co-authored-by: Archit Gupta <71798289+archigup@users.noreply.github.com>

* Make python files executable

Co-authored-by: Joseph Julicher <jjulicher@mac.com>
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
Co-authored-by: Ravishankar Bhagavandas <bhagavar@amazon.com>
Co-authored-by: ActoryOu <jay2002824@gmail.com>
Co-authored-by: Ming Yue <mingyue86010@gmail.com>
Co-authored-by: NoMaY (a user of Japan.RenesasRulz.com) <NoMaY-jp@outlook.com>
Co-authored-by: chinglee-iot <61685396+chinglee-iot@users.noreply.github.com>
Co-authored-by: Archit Gupta <71798289+archigup@users.noreply.github.com>
3 years ago
chinglee-iot 5a2c56bf9c
Cancel all command when MQTT command failed (#814)
* Use MQTT Agent provided API, MQTTAgent_CancelAll, to clear queue when
  MQTT command failed.
3 years ago
Muneeb Ahmed c75769438a
Update coreHTTP submodule for llhttp (#803)
* Use dev branch of coreHTTP

* Update included http parser source files
3 years ago
Aniruddha Kanhere 07c7ba7aa9
Remove deprecated macro (ipconfigRAND32) references (#781)
* Remove ipconfigRAND32 referances from demos

* Fix license header
3 years ago
chinglee-iot 1ce4d784cc
Update FreeRTOS-Cellular-Interface submodule pointer (#775)
* Update cellular sub-module pointer
* Add more log in cellular_setup.c to indicate error
* Adjust cellular transport timeout value for demo application
* Add default cellular module specific config in cellular_config.h
3 years ago
johnrhen 348ebbcbf1
Create mqtt_pkcs11_demo_helpers for AWS demos (#769)
* Create mqtt_pkcs11_demo_helpers by modifying mqtt_demo_helpers

* Update formatting and variable naming

* Fix multi-line parameter formatting

* Update file headers to match latest release version
3 years ago
johnrhen 4e450d39d4
Update Fleet Provisioning Demo comments (#762) 3 years ago
johnrhen 43defa566c
Apply release changes to main branch (#759)
* Update History.txt and README.md for December release (#744)

* Update History.txt and README.md for release

* Bump mbedtls submodule to v2.28.0 (#745)

* Patch project files for mbedtls (#751)

* Apply group 1 patches

* Apply patches for group 2

* Update project files for mbedTLS new version

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Fix warnings in projects

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Fix warnings in HTTP_S3_Download demo

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>

* Update changelog and history for corePKCS11 update (#752)

* Update submodule pointer and manifest.yml for corePKCS11 (#754)

* Update readme and history.txt to show that Sigv4 is a newly added library (#756)

* Revert update to v143 of VS toolset (#757)

* [AUTO][RELEASE]: Bump file header version to "202112.00"

* Update file headers to satisfy core checks

Co-authored-by: Muneeb Ahmed <54290492+muneebahmed10@users.noreply.github.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: johnrhen <johnrhen@users.noreply.github.com>
3 years ago
johnrhen 92c5f8fe50
Add default Claim template to fleet provisioning example (#734) 3 years ago
johnrhen 56394747d4
Add default thing policy name to Fleet Provisioning example template (#732)
* Add default thing policy name to the example template

* Rename default Thing policy
3 years ago
johnrhen a727061dc2
Create example IoT Thing policy (#731)
* Create example claim policy and update formatting on previous examples

* Add trailing linebreak
3 years ago
Bhaumik Jain 4610b37ade
Update server root CA certificate (#730)
* update server root CA certificate for http demo

* update comments
3 years ago
johnrhen c1266ddb60
Port the AWS Fleet Provisioning demo from the CSDK (#724)
* Add fleet provisioning and tinycbor submodules

* Copy demo files from FP in CSDK and the Defender Demo

* Modify FP demo files to function in FreeRTOS

* Update styling and formatting of demo files to match FreeRTOS conventions

Co-authored-by: Archit Gupta <71798289+archigup@users.noreply.github.com>
3 years ago
johnrhen b1b3a0a3e9
Add variable PKCS11 label support to using_mbedtls_pkcs11 (#723)
The previous "using_mbedtls_pkcs11.c" implementation requires using the device key and device certificate stored under the labels "pkcs11configLABEL_DEVICE_PRIVATE_KEY_FOR_TLS" and "pkcs11configLABEL_DEVICE_CERTIFICATE_FOR_TLS".

This commit updates the NetworkCredentials to include fields for pClientCertLabel and pPrivateKeyLabel, so other labels can be used with PKCS11. This matches the behavior seen in the CSDK.

This commit also updates the "pkcs11_mqtt_mutual_auth_demo" to set the newly-added NetworkCredentials fields.
3 years ago
johnrhen d2329791aa
Fix PKCS11 demo failures (#722)
* Fix build errors from improper core_pkcs11_pal paths

* Runtime failure fixes

* Runtime PKCS11 demo failure fixes

Co-authored-by: Shivangi <66447522+gshvang@users.noreply.github.com>
3 years ago
andysun2015 426ad44c05
Remove using_mbedtls folder and move its content to the parent folder (#717)
Move the contents of FreeRTOS/FreeRTOS-Plus/Source/Application-Protocols/network_transport/using_mbedtls/
to its parent folder i.e. FreeRTOS/FreeRTOS-Plus/Source/Application-Protocols/network_transport/.
This removes one unnecessary folder in the hierarchy.
3 years ago
tianmc1 a483eba7d4
Updated HTTP S3 download demo to show SigV4 usage (#696)
* Updated HTTP S3 download demo to show SigV4 usage

* Fixed missing config in demo_config

* Added dynamic sha256 payload compute

* Fixed some compiler warnings

* Fixed some comments

* remove unused code

* Spell check updates

* Core check fix
3 years ago
andysun2015 75639a3e86
Fix build warning due to log configuration. (#715) 3 years ago
aggarg ecd1a8f9f1 [AUTO][RELEASE]: Bump file header version to "202111.00" 3 years ago
andysun2015 a6dfca9829
Update file header and cellular lib commit (#704) 3 years ago
andysun2015 957fb26dbe
Add cellular library submodule path and demo (#695)
* [Cellular] Add cellulr lib submodule and demo app

* [Cellular] Fix memory violation in transport layer and add using LoggingPrintf

* Update FreeRTOS Cellular Interface

* Change the mbedtls usage in FreeRTOS-Plus

* [Cellular] Fix missing spell

* [Cellular] Add manifest.yml

* Fix missing spell

* Update manifest.yml

* [Cellular] Add integration test

* Modify the demo log level to LOG_INFO

* Update cellular interface

* The modification of the folder structure for cellular library

* Rename the naming of demo

* Adjust the location of using_mbedtls and socket_wrapper

* Adjust project setting for relocating using_mbedtls and socket_wrapper

* Turn off PSM mode

* Add start marker for CI validation.

* The modification for mbedtls platform send/recv function for cellular

* Change the project file due to the changes of mbedtls platform send/recv function for cellular

* Fix missing newline and remove unused file

* Add missing configuration.

* Make cellular and freertos tcp plus use the same transport implementation

* Add comment for the macro MBEDTLS_SSL_SEND and MBEDTLS_SSL_RECV

* Make changes from the github comment.
3 years ago
Shivangi 0407cbf166
Include path update (#698) 3 years ago
Shivangi 08238481d1
pkcs11 util changes (#694) 3 years ago
chinglee-iot b4cc7670df
Fix possible null pointer dereference in Log (#677)
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
4 years ago
tianmc1 176f1cae02 [AUTO][RELEASE]: Bump file header version to "202107.00" 4 years ago
tianmc1 40c9e37d10
Updated submodule libraries to latest release (#667)
* Updated submodule libraries to latest release

* Updated pointer for FreeRTOS-Plus-TCP

* Updated README about SNTP

* Updated link for coreSNTP on freertos.org

* Updated corePKCS11 to 'update-pkcs11submodule' branch for testing

* Update corePKCS11 version in manifest.yml

* Updated corePKCS11 pointer to v3.1.0

Co-authored-by: Oscar Michael Abrina <abrinao@amazon.com>
Co-authored-by: Archit Aggarwal <architag@amazon.com>
4 years ago
Archit Aggarwal 69b9155bad
Hygiene changes of old Demo folders and temporary removal of submodules (#666)
* Remove submodules of community and partner contribution repos, and stale directory of FreeRTOS+UDP

* Obselete NTP demo and rename of HTTP server demo folder

* Update manifest.yml
4 years ago
Oscar Michael Abrina dd80d615b5
Remove duplicate error.c in WIN32.vcxproj.filters files (#662) 4 years ago
Archit Aggarwal 1e4f79709c
Some changes for upcoming release (#657)
Update mbedTLS submodule to v2.26.0 and update History.txt
4 years ago
Shivangi 6c17a54685
CorePKCS11 Muthual Auth demo fix (#656) 4 years ago
tianmc1 aa1eed8b4e
Defender demo cleanup (#651) 4 years ago
Oscar Michael Abrina 63d38b846e
Remove redundant mbedtls error sources (#654)
Since `mbedtls_error.c` is already part of the mbedTLS submodule, the duplicate files are removed from this repository.

Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
4 years ago
Archit Aggarwal a44df5c1b9
Fix clock drift issue in SNTP demo (#655)
Issue
The existing clock discipline algorithm in the coreSNTP demo yields an inaccurate wall-clock time (in UTC) that is always behind the astronomical UTC time by the chosen polling interval period of the demo. The issue with the clock discipline algorithm was that it was calculating the slew rate to make the system clock be gradually compensated for the previous time synchronization clock drift over the period of the subsequent polling time interval. Thereby, the clock slew rate correction calculated is always lower than it should be (because it does not incorporate possible clock drift that would occur over another period of time polling interval till the next time synchronization attempt).

Fix
This PR fixes the clock discipline algorithm to make the demo calculate its system time that matches the astronomical UTC time.
The fix involves simplifying the clock discipline algorithm to use a combination of step and slew correction approaches where:

1. Step correction is applied on EVERY time successful synchronization with a time server. This immediately corrects the system time to match server time.
2. Slew rate is calculated ONCE (on the second successful time synchronization with server) and applied henceforth, on every time polling interval period to compensate gradually for the system clock drift during the period.
4 years ago
Shivangi a9c27ccdac
[P3] Update corePKCS11 demo to read the public key (#652)
* PKCS11 fix
4 years ago
Archit Aggarwal b550e6090d
Add note in coreSNTP demo about Network Time Security (NTS) (#648)
This PR makes the following changes in the coreSNTP demo:

To suggest the most secure way of using SNTP communication, we are adding a documentation note about the Network Time Security in the SNTP demo.
Hygiene update of using the FreeRTOS/backoffAlgorithm utility library for calculating time polling period interval backoff when time requests are rejected by a time server.
4 years ago
tianmc1 096824515f
Cleaned up report_builder in defender_demo_json (#644) 4 years ago
Archit Aggarwal 5a4fe788d7
Update coreSNTP demo to avoid issues from open UDP socket (#647)
Issue
There is a possible vulnerability of Denial of Service attack by keeping the UDP socket for the SNTP client task always open in the coreSNTP demo. The Denial of Service attack can occur from receiving multiple server response (duplicated or malicious) for a single SNTP time request sent by the client, and thereby, filing the socket network buffer response packets that affect future time requests.

Solution
This PR fixes this vulnerability by updating the demo to keep a UDP socket open only for the time period of waiting for server response, closing the socket on either receiving a server response or experiencing server timeout, and re-creating a UDP socket for the next polling try. This PR also adds another security functionality using a random port for UDP socket to protect against spoofing attacks from "off-network path" attackers.
4 years ago
tianmc1 6ef5c92233
Updated device-shadow submodule to support named shadow, and updated demo to use named shadow (#636) 4 years ago
thomas-coding b8bcbf2a40
Fix data copy address error (#634) 4 years ago
Archit Aggarwal ac5bf3b934
Update coreSNTP submodule and coreSNTP demo (#631)
Update the coreSNTP submodule to the latest commit. Also, make updates to the coreSNTP demo for the new changes in the SNTP library which include the following:

1. Update to the type for packet size from size_t to uint16_t for parameters in the transport and authentication interfaces.
2. Change in the call to Sntp_SendTimeRequest API to pass the new blockTimeMs parameter added to the API.
3. Update to the clock-offfset type from int32_t to int64_t for representing information in milliseconds. To accommodate this update in the SntpSetTime_t interface, the mathematical model for representing system clock has been updated to store slew rate as milliseconds/second (instead of second/second). This change improves the accuracy of the WinSim demo time correction (because the milliseconds of time difference between server and client time is corrected over the entire polling interval which makes a significant difference!).

This PR also adds demo config macros for setting the block time values passed to the Sntp_SendTimeRequest and Sntp_ReceiveTimeResponse APIs.
4 years ago
Archit Aggarwal 5a41846f05
Add authentication support to coreSNTP demo (#625)
Update the coreSNTP demo to showcase use of symmetric key algorithm of authentication scheme for securing SNTP communication between client and server.
The demo uses the AES-128-CMAC algorithm for the generating Message Authentication Code for the client on sending the SNTP time request to server as well as validating the server response received by verifying if the payload present authentication code can be generated. Use of an authentication mechanism in SNTP communication protects against server spoofing attacks as well as man-in-the-middle attacks of server response modification.

The demo uses corePKCS11 library for the AES-CMAC operations. Also, the demo adds functionality of generating random number, using corePKCS11, for sending as a parameter to the Sntp_SendTimeRequest API.

Note: For symmetric key based security mechanism to be protective against malicious, it is IMPORTANT to securely pre-share the symmetric key between client and server.
4 years ago
Archit Aggarwal f771faef4a
Add unauthenticated mode demo for coreSNTP library for time synchronization (#621)
Add the FreeRTOS/coreSNTP library as a submodule (along with manifest.yaml file update) and add a demo project to showcase use of the coreSNTP library for having a SNTP client daemon in the system for periodically synchronizing system time with the internet to maintain Coordinated Univeral Time (UTC) in a device. This demo maintains UTC time of system in RAM, thereby, representing systems without a Real-Time Clock (RTC) module in the device.

Note: This demo shows use of coreSNTP library for SNTP communication with NTP/SNTP time servers in non-authenticated mode (i.e. without any security mechanism payload beyond the standard 48 bytes of NTP packet exchange between client-server).
4 years ago
jasonpcarroll 803016a27a
Updated demo_config.h and include paths for OTA demos (#605)
Co-authored-by: Jason Carroll <czjaso@amazon.com>
4 years ago
Archit Gupta c134a58115
Fix missed variable rename (#600) 4 years ago
Hein Tibosch db1f4542e5
Let vAssertCalled() produce some logging to stdout (#598) 4 years ago
Aniruddha Kanhere 1bc759d413
Aws only files spell check (#593)
* Added spell check

* All words

* Add a missing word

* Fix header checks

* Fix header checks v1

* Fix header check v2

* Updated freertos link in header

* Fixed afr link in the header

* Fix last of header checks

* Update the spell check script to check amazon licensed files only

* Fixed paths and added comments

* Try with modified repo

* Add inplace substitute option to sed

* Use official repo as the spell checker source

* Add vendor file to the ignored list

Co-authored-by: root <root@ip-172-31-5-28.us-west-2.compute.internal>
4 years ago
Archit Aggarwal 971a6e1d22
Merge FreeRTOS 202104.00 to main (#585) 4 years ago
Prasad Vyawahare 04f0f68f61
OTA Demos (#573)
This change adds the OTA demos and required dependencies and helper components .
* Add demos , configs and project files
* Add subscription manager
* Add HTTP utils
* Submodules the OTA LTS 3.0 Library.
* Add OTA pal
4 years ago
Archit Aggarwal 43bd42db27
Rename MQTT Agent structs and files (#576) 4 years ago
alfred gedeon 1fe418dc9f
Remove unecessary file (#495) 4 years ago
TakayukiMatsuo 1e2f99a11b
Add feature to set credentials using buffer in MQTT_Mutual_Auth_wolfSSL demo (#522)
* Add feature to set credentials using buffer
* Change instructions for giving credential data via buffer
4 years ago
Muneeb Ahmed ef6194a7ce
Replace multithreading demo with MQTT Agent (#563)
* Update MQTT agent submodule

* Copy MQTT agent demo files

* Remove other demos from connection manager

* Update demo config and uncrustify

* Update readme files

* Fix headers
4 years ago
Muneeb Ahmed 1f47a22b23
Add MQTT Agent submodule (#551)
* Add MQTT Agent submodule

* Add MQTT agent platform files

Co-authored-by: abhidixi11 <44424462+abhidixi11@users.noreply.github.com>
Co-authored-by: Joseph Julicher <jjulicher@mac.com>
4 years ago
Archit Gupta c8fa483b68
Add custom metrics to defender demo (#507)
Adds custom metrics to the defender demo. The metrics added are a list of the task ids and the stack high water mark.
4 years ago
Archit Aggarwal 693212bd05
Update Jobs demo to use DescribeJobExecution instead of StartNextPendingJobExecution API (#496)
It is recommended by the AWS IoT Jobs service to use DescribeJobExecution API for scaling purposes instead of StartNextPendingJobExecution API. Thus, update the Jobs demo to replace the latter API call with the former API call.
4 years ago
Carl Lundin a78cb45d12
Minor changes to wolfSSL MQTT demo files (#493)
* Clean up demo config for wolfSSL mutual auth. 
* Add comment about picking the correct ROOT CA.
* uncrustify using_wolfSSL.c and some other code style changes.
* Apply suggestions from code review

Co-authored-by: Archit Aggarwal <architag@amazon.com>
4 years ago
TakayukiMatsuo dfdf2ddf1f
Add MQTT_Mutual_Auth_wolfSSL demo (#464)
Add a demo that shows MQTT over TLS mutual authentication connection and communication with a broken when using wolfSSL as the TLS library.
4 years ago
alfred gedeon 3a7da90c4f
Qemu Mps2 network interrupt (#487)
* Enable netwrork nterrupt handling for Qemu MPS2

* Fix interrupt priority

Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
4 years ago
alfred gedeon 1c99d9f200
Prevent optimization in reset handler for QEMU MPS2 (#484) 4 years ago
Joseph Julicher da9b9a800d [AUTO][RELEASE]: Bump file header version to "202012.00" 4 years ago