From 6a9e73fa119458e5e7c6c1508a63064946d14da5 Mon Sep 17 00:00:00 2001 From: Monika Singh Date: Wed, 5 Jul 2023 15:28:50 +0530 Subject: [PATCH] Update IPv6 branch according to main (#954) * Update mainline to reflect changes after the release. (#563) * Update README.md * Update History.txt * Update version number macros * Update manifest.yml * IPv4/single SAME70 emac race condition (#567) * Implemented Maty's solution * Added a new statistic 'tx_write_fail' * Uncrustify: triggered by comment. Co-authored-by: Hein Tibosch Co-authored-by: GitHub Action * IPv4/Single: Add a SocketID to a socket (#546) * IPv4/Single: Add a SocketID to a socket * Change in comment * Applied uncrustify to format the source code * Added a few entries to lexicon.txt * Removed the 'ipconfigUSE_SetSocketID' option * Change to lexicon.txt * Add unit tests for the newly added API Co-authored-by: Hein Tibosch Co-authored-by: alfred gedeon <28123637+alfred2g@users.noreply.github.com> Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com> * IPv4/single: SAME70 EMAC buffer sizes (#568) * Implemented Maty's solution * Added a new statistic 'tx_write_fail' * Uncrustify: triggered by comment. * Increase NETWORK_BUFFER_SIZE in order to include the 'ipBUFFER_PADDING' bytes * ICMP checksum calculated manually * Uncrustify: triggered by comment. * Update gmac_SAM.c Co-authored-by: Hein Tibosch Co-authored-by: GitHub Action Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com> * Eliminate some warnings (#578) * Eliminate some warnings related to print statements Authored-by: Pete Bone * Add MISRA justification for use of dynamic memory (#581) * Update deprecated macros in network driver files (#579) * Update deprecated macros in network driver files * Fix typo in RX driver. * Replace #warning with #error on test for deprecated macro. * Fix doxygen check Co-authored-by: PeterB Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com> * Fix Network-interface of the Xilinx UltraScale port (#588) The underlying issue was when the port would be used with Jumbo frames. During receives of Jumbo packets the data length was always set incorrectly, which then would cause buffer allocation issues and subsequently corrupted data would be sent to the IP-task. After some inspection in the Xilinx UltraScale port, I found out that when the data length would be set, the wrong mask from the Xilinx Ethernet MAC driver would be used. By using the right mask (XEMACPS_RXBUF_LEN_JUMBO_MASK) when Jumbo Frame support is enabled the issue was resolved * Fix Windows thread calling vTaskSuspendAll / xTaskResumeAll. (#592) Co-authored-by: Jason Carroll * Updated comments for FreeRTOS_select return value (#596) * Updated comments for FreeRTOS_select return value * Updated the function brief for FreeRTOS_select * Uncrustify: triggered by comment. * Updating FreeRTOS_select function @brief * Updated function brief for FreeRTOS_SignalSocket * Uncrustify: triggered by comment. * Update source/FreeRTOS_Sockets.c Co-authored-by: Ubuntu Co-authored-by: GitHub Action Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com> * Fixed readme script to build and run unit tests (#644) * Minor warning fixes (#589) * Eliminate compiler unused parameter warning * Eliminate compiler unused variable warnings * Eliminate compiler unused function warning The function pcGetPHIName(...) would be called only in the FreeRTOS_printf message, however FreeRTOS_printf maybe be defined to nothing e.g. release builds, which then the warning would come up * Rework callback setups in the EMAC-driver of the Xilinx UltraScale port The calls to the function XEmacPs_SetHandler would trigger the pedantic warning: "ISO C forbids conversion of object pointer to function pointer type" The reason for this, is that the second parameter of the function XEmacPS_SetHandler is declared as pointer to a void type, but the function "expects" a function pointer, which in setup_isr rightly happens. However IMHO, this is just bad code from the side of Xilinx, as not on all architectures the size of a data pointer is identical to the size of a function pointer, which also is correctly recognised by the compiler. Instead of using the "bad" function XEmacPs_SetHandler, we can set the handlers manually to the EmacPS-instance. * Uncrustify: triggered by comment. * Update source/portable/NetworkInterface/xilinx_ultrascale/x_emacpsif_hw.c Co-authored-by: Paul Bartell * Apply suggestions from code review Co-authored-by: Paul Bartell * Address comments from reviews Co-authored-by: GitHub Action Co-authored-by: Paul Bartell * Use CBMC XML output to enable VSCode debugger (#673) Prior to this commit, CBMC would emit logging information in plain text format, which does not contain information required for the CBMC VSCode debugger. This commit makes CBMC use XML instead of plain text. Co-authored-by: Mark Tuttle * Remove need of token * Use vTaskDelay for sleep in the network-interface of xilinx_ultrascale (#698) The issue here is that, the FreeRTOS IP-task would block all other tasks during PHY-link speed negotiations, as it was using busy waiting. However this is not really ideal. A much more suitable function for such a task would be `vTaskDelay`. * Make sure that a TCP socket is closed only once (#707) * Make sure that a TCP socket is closed only once * Fix failing test cases for FreeRTOS_TCP_IP unit test modules post PR#705 changes * Uncrustify: triggered by comment. * Fix failing test cases for FreeRTOS_TCP_IP unit test modules post PR - 705 changes --------- Co-authored-by: Hein Tibosch Co-authored-by: GitHub Action * Remove Dup function HAL_ETH_SetMDIOClockRange. (#711) * Update PR template to include checkbox for ut change (#734) * Main/TCP4 : ACK number in TCP RESET reply to SYN packet (#724) * Main/TCP4 : ACK number in TCP RESET reply to SYN packet * Typo fix * Add unit-test for coverage; Fix ntohl to htonl * Fix unit-test --------- Co-authored-by: Nikhil Kamath <110539926+amazonKamath@users.noreply.github.com> Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com> * #556 Initial Cmake Module definition. (#557) * #556 Initial Cmake Module definition. * Fixing CI builds, rely on pcap. (#556) * Updating tested configurations and minor clean-up of missing network interfaces (#555) * Further clean-up based on testing with build environment. (#555) * Using single definition for libraries everywhere. (#555) * Fixing A_CUSTOM_NETWORK_IF compile option. * Identifying and fixing compile issues. * Adding in additional warnings for GNU to ignore for now. * Fixing formatting issues with uncrustify. * More warnings for GNU used by CI/CD pipeline. * Assuming custom for build tests and using latest freertos-kernel code. Updated readme for how to consume at project level. * Fixing up issues identified in the PR. Making the build_test EXCLUDE_FROM_ALL so only compiled if requested. * Changing to support C89 instead of C99. Renaming tcp_tools to tcp_utilities to mimic the directory. * Using C90 ISO. Fixing compiler warnings. * Fixing non C90 compliant declaration after statement * Separating out CMakeLists so each port is independent. * Updating warning list in code. * Fixed formatting with uncrustify. * Fix failing tests * Fix failing unit-test * Fix a typo. --------- Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com> * CMake: Fix GIT_REPOSITORY and GIT_TAG (#742) * Allow use of loopback addresses in IP stack (127.0.0.0/8) (#754) Authored-by: Adam St. Amand * Add release candidate automation (#761) This is a minimal subset of release automation which only creates a tag and verifies it. Signed-off-by: Gaurav Aggarwal * Add CBMC-running GitHub Action; This commit adds a GitHub Action that runs the CBMC proofs in this repository upon pushes and pull requests * Copy CBMC output directory to CI location This commit ensures that the output directory for CBMC proofs is in the correct location expected by the FreeRTOS CI-CD repository. * rx: Read mac address using FreeRTOS_GetMACAddress() rather than using the defines (#765) * Read mac address using FreeRTOS_GetMACAddress() rather than using the defines --------- Co-authored-by: GitHub Action * cmake: Remove add_subdirectory( cbmc ) call CBMC proofs cannot currently be run using CMake. fixes #753 * FreeRTOS_IP.h: Fix build error introduced by 55658e1 in FreeRTOS-Kernel * Add Nxp1060 network interface (#774) * Update PR template to include checkbox for ut change * Create NetworkInterface.c * Uncrustify: triggered by comment. * Address PR comments * Uncrustify: triggered by comment. * Update NetworkInterface.c * Uncrustify: triggered by comment. * Update copyright year * Refactor the init function. Add 'brief'. Cleanup. * Uncrustify: triggered by comment. * Update global link status only when the network is quiet * Uncrustify: triggered by comment. * Update copyright yeat * Update the driver to deal with network cable disconnects * Uncrustify: triggered by comment. * Update NetworkInterface.c * Clean up and address PR comments * More cleanup and address PR comments * Uncrustify: triggered by comment. * Empty-Commit * Address issue comments * Uncrustify: triggered by comment. * Empty-Commit to trigger workflow * Remove Full-Duplex restriction * Uncrustify: triggered by comment. * Empty-Commit to trigger workflow --------- Co-authored-by: GitHub Action * Correct GCC warnings (#798) * Correct GCC warnings Corrects warnings with current GCC flags for GCC 7.5.0. The only suppressed warning pertains to function to object pointer conversion which is required and common for socket callbacks. * PR feedback --------- Co-authored-by: Ubuntu Co-authored-by: Nikhil Kamath <110539926+amazonKamath@users.noreply.github.com> * Cleanup of NXP1060 network driver (#801) * Update PR template to include checkbox for ut change * Empty-Commit to trigger workflow * Fix issues pointed out in PR comments * Uncrustify: triggered by comment. * Empty-Commit to trigger workflow --------- Co-authored-by: GitHub Action * Fix Clang warnings (#809) Corrects several warnings from Clang flags for Clang 13. Inspired by @phelter's bug report https://github.com/FreeRTOS/FreeRTOS-Plus-TCP/issues/558 * uncrustify yml fix (#815) * Add NetworkDown notification to NetworkInterface.c [PR: #671] (#812) * Add NetworkDown notification to EMAC task * Add NetworkDown notification to NetworkInterface.c * Uncrustify: triggered by comment. * Introduce ipconfigSUPPORT_NETWORK_DOWN_EVENT compile flag * Fix formatting * Uncrustify: triggered by comment. --------- Co-authored-by: Filip Oleszek Co-authored-by: zipperowiec <35423392+zipperowiec@users.noreply.github.com> Co-authored-by: GitHub Action * Uncrustify bot command fix (#816) * fix uncrustify run command * test uncrustify * Revert "test uncrustify" This reverts commit f660ab435fa741f8767f8a2849829f02a92ecca6. * Fix uncrustify bot command - disable install prompt (#819) * fix uncrustify run command * test uncrustify * Revert "test uncrustify" This reverts commit f660ab435fa741f8767f8a2849829f02a92ecca6. * removing apt-get prompt while installing git * Removing deprecated set-output command from uncrustify bot run yml (#820) * fix uncrustify run command * test uncrustify * Revert "test uncrustify" This reverts commit f660ab435fa741f8767f8a2849829f02a92ecca6. * removing apt-get prompt while installing git * removing the deprecated set-output command from uncrustify bot run yml, use latest git * IPv4/Single: Let send() stop blocking after a connection reset (#561) * IPv4/Single: Let send() stop after a protocol error * Remove token need * Repaired unit-testing * Added the cunftion test_FreeRTOS_send_DisconnectionOccursDuringWait() * Added a comment for unit-test function test_FreeRTOS_send_DisconnectionOccursDuringWait() * Added an item to lexicon.txt * Restored original tcp_utilities * Restored original tcp_utilities, once more --------- Co-authored-by: Hein Tibosch Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com> Co-authored-by: Nikhil Kamath <110539926+amazonKamath@users.noreply.github.com> * Add logs to print random number generation failure (#908) Add logs to print random number generation failure for better debugging of issue. * Update usage of uint64_t according to C90 standard (#907) Co-authored-by: kar-rahul-aws <118818625+kar-rahul-aws@users.noreply.github.com> * Fix pragma pack in CCS compiler to push/pop (#906) `#pragma pack(1)` would make it so that all structs inserted after pack_struct_start.h was included for the TI arm compiler would be packed, leading to potential unaligned memory access error. Refer: https://www.ti.com/lit/ug/spnu151w/spnu151w.pdf SECTION 5.11.23 * Modified libslirp backend file to cover different libslirp library versions (#929) Authored-by: Xiaodong Li * Update according to devIntegration * Update links to point to main directory --------- Signed-off-by: Gaurav Aggarwal Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com> Co-authored-by: Hein Tibosch Co-authored-by: Hein Tibosch Co-authored-by: GitHub Action Co-authored-by: alfred gedeon <28123637+alfred2g@users.noreply.github.com> Co-authored-by: Pete Bone Co-authored-by: PeterB Co-authored-by: ChristosZosi <76208460+ChristosZosi@users.noreply.github.com> Co-authored-by: jasonpcarroll <23126711+jasonpcarroll@users.noreply.github.com> Co-authored-by: Jason Carroll Co-authored-by: Tony Josi <117763118+tony-josi-aws@users.noreply.github.com> Co-authored-by: Ubuntu Co-authored-by: Paul Bartell Co-authored-by: Kareem Khazem Co-authored-by: Mark Tuttle Co-authored-by: Tony Josi Co-authored-by: ActoryOu Co-authored-by: Nikhil Kamath <110539926+amazonKamath@users.noreply.github.com> Co-authored-by: phelter Co-authored-by: Adam St. Amand Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com> Co-authored-by: sayyadumar Co-authored-by: Paul Bartell Co-authored-by: Kody Stribrny <89810515+kstribrnAmzn@users.noreply.github.com> Co-authored-by: Ubuntu Co-authored-by: Filip Oleszek Co-authored-by: zipperowiec <35423392+zipperowiec@users.noreply.github.com> Co-authored-by: kar-rahul-aws <118818625+kar-rahul-aws@users.noreply.github.com> Co-authored-by: Rahul Arasikere Co-authored-by: Xiaodong Li <85011700+ChaiTowKway@users.noreply.github.com> --- .github/workflows/release-candidate.yml | 35 +++++++++++++++++++++++++ GettingStarted_4.0.0-rc3.md | 6 ++--- History.txt | 8 +++--- README.md | 8 +++--- source/FreeRTOS_UDP_IP.c | 8 +++--- test/build-combination/Common/main.c | 11 ++++++++ 6 files changed, 61 insertions(+), 15 deletions(-) create mode 100644 .github/workflows/release-candidate.yml diff --git a/.github/workflows/release-candidate.yml b/.github/workflows/release-candidate.yml new file mode 100644 index 000000000..832491ce5 --- /dev/null +++ b/.github/workflows/release-candidate.yml @@ -0,0 +1,35 @@ +name: Release Candidate Automation + +on: + workflow_dispatch: + inputs: + commit_id: + description: 'Commit ID to tag' + required: true + version_number: + description: 'Release Version Number (Eg, v1.0.0-rc1)' + required: true + +jobs: + tag-commit: + name: Tag commit + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v2 + with: + ref: ${{ github.event.inputs.commit_id }} + - name: Configure git identity + run: | + git config --global user.name ${{ github.actor }} + git config --global user.email ${{ github.actor }}@users.noreply.github.com + - name: Tag Commit and Push to Remote + run: | + git tag ${{ github.event.inputs.version_number }} -a -m "FreeRTOS-Plus-TCP Library ${{ github.event.inputs.version_number }}" + git push origin --tags + - name: Verify tag on remote + run: | + git tag -d ${{ github.event.inputs.version_number }} + git remote update + git checkout tags/${{ github.event.inputs.version_number }} + git diff ${{ github.event.inputs.commit_id }} tags/${{ github.event.inputs.version_number }} diff --git a/GettingStarted_4.0.0-rc3.md b/GettingStarted_4.0.0-rc3.md index 9813ecc01..f8f7b5e12 100644 --- a/GettingStarted_4.0.0-rc3.md +++ b/GettingStarted_4.0.0-rc3.md @@ -1,7 +1,7 @@ Moving to 4.0.0-rc1/rc2/rc3 from 3.x.x: -------------------------------- -Version 4.0.0-rc1/rc2/rc3 adds new files to support IPv6 functionality, breaking each file into logically separated IPv4 and IPv6 files. The folder structure of FreeRTOS-Plus-TCP remains unchanged. Build separation is added to make the library modular, enabling users to compile and create a low-footprint binary with only the required functionalities. For more details on supported build combinations, see [History.txt](https://github.com/FreeRTOS/FreeRTOS-Plus-TCP/blob/dev/IPv6_integration/History.txt) . +Version 4.0.0-rc1/rc2/rc3 adds new files to support IPv6 functionality, breaking each file into logically separated IPv4 and IPv6 files. The folder structure of FreeRTOS-Plus-TCP remains unchanged. Build separation is added to make the library modular, enabling users to compile and create a low-footprint binary with only the required functionalities. For more details on supported build combinations, see [History.txt](https://github.com/FreeRTOS/FreeRTOS-Plus-TCP/blob/main/History.txt) . Some of the APIs have changed which is illustrated in the section below. However, there is a backward compatibility mode provided as well. @@ -67,9 +67,9 @@ Change 7: Running Demos: ------------- -The demos can be found at: https://github.com/FreeRTOS/FreeRTOS/tree/devIPv6/FreeRTOS-Plus/Demo +The demos can be found on [this page](https://github.com/FreeRTOS/FreeRTOS/tree/main/FreeRTOS-Plus/Demo). In all the demos, there is a backward compatibility mode which can be enabled by setting the flag “ipconfigIPv4_BACKWARD_COMPATIBLE” to 1 in the header file “FreeRTOSIPConfigDefaults.h”. This flag is by default set to zero. -New IPv6 WinSim Demo: https://github.com/FreeRTOS/FreeRTOS/tree/devIPv6/FreeRTOS-Plus/Demo/FreeRTOS_Plus_TCP_IPv6_Demo/IPv6_Multi_WinSim_demo +New IPv6 WinSim Demo can be found on [this page](https://github.com/FreeRTOS/FreeRTOS/tree/main/FreeRTOS-Plus/Demo/FreeRTOS_Plus_TCP_IPv6_Demo/IPv6_Multi_WinSim_demo). diff --git a/History.txt b/History.txt index 14e4077d7..1ca710363 100644 --- a/History.txt +++ b/History.txt @@ -1,4 +1,4 @@ -Changes between dev/ipv6_integration branch 4.0.0-RC3 and 4.0.0-RC2 releases: +Changes between 4.0.0-RC3 and 4.0.0-RC2 releases: + Added memory safety proofs for IPv6 using[ CBMC automated reasoning tool ] ( https:/*www.cprover.org/cbmc/) + Introduced build separation feature to achieve low memory footprint. Supported build combinations: 1. IPv4 + UDP @@ -8,13 +8,13 @@ Changes between dev/ipv6_integration branch 4.0.0-RC3 and 4.0.0-RC2 releases: 5. IPv4 + IPv6 + UDP 6. IPv4 + IPv6 + UDP + TCP -Changes between dev/ipv6_integration branch 4.0.0-RC2 and 4.0.0-RC1 releases: +Changes between 4.0.0-RC2 and 4.0.0-RC1 releases: + Added changes to fix IPv6 issues observed by Maxwell protocol tester. -Changes between dev/ipv6_integration branch RC1 and main branch V3.0.0 releases: +Changes between RC1 and V3.0.0 releases: + Unified code for IPv4 and IPv6 + Multiple Interface/Endpoint support - ((Reference: https://www.freertos.org/FreeRTOS-Plus/FreeRTOS_Plus_TCP/freertostcp-multiple-interfaces.html). + (Reference: https://www.freertos.org/FreeRTOS-Plus/FreeRTOS_Plus_TCP/freertostcp-multiple-interfaces.html). + New WinSim demo to support both IPv4 and IPv6. **Note**- This release does not support ESP32/ M487/ mw300_rd ports yet. This will be released soon. diff --git a/README.md b/README.md index 79619f41f..ef61177be 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ -## NOTE - Work In Progress +## Introduction This branch contains unified IPv4 and IPv6 functionalities. -Refer to the Getting started Guide (found [here](https://github.com/FreeRTOS/FreeRTOS-Plus-TCP/blob/dev/IPv6_integration/GettingStarted_4.0.0-rc3.md)) for more details. +Refer to the Getting started Guide (found [here](https://github.com/FreeRTOS/FreeRTOS-Plus-TCP/blob/main/GettingStarted_4.0.0-rc3.md)) for more details. ## FreeRTOS-Plus-TCP Library FreeRTOS-Plus-TCP is a lightweight TCP/IP stack for FreeRTOS. It provides a familiar Berkeley sockets interface, making it as simple to use and learn as possible. FreeRTOS-Plus-TCP's features and RAM footprint are fully scalable, making FreeRTOS-Plus-TCP equally applicable to smaller lower throughput microcontrollers as well as larger higher throughput microprocessors. @@ -9,8 +9,8 @@ FreeRTOS-Plus-TCP is a lightweight TCP/IP stack for FreeRTOS. It provides a fami This library has undergone static code analysis and checks for compliance with the [MISRA coding standard](https://www.misra.org.uk/). Any deviations from the MISRA C:2012 guidelines are documented under [MISRA Deviations](https://github.com/FreeRTOS/FreeRTOS-Plus-TCP/blob/main/MISRA.md). The library is validated for memory safety and data structure invariance through the [CBMC automated reasoning tool](https://www.cprover.org/cbmc/) for the functions that parse data originating from the network. The library is also protocol tested using Maxwell protocol tester for both IPv4 and IPv6. ## Getting started -The easiest way to use the 4.0.0-rc3 version of FreeRTOS-Plus-TCP is to refer to to the Getting started Guide (found [here](https://github.com/FreeRTOS/FreeRTOS-Plus-TCP/blob/dev/IPv6_integration/GettingStarted_4.0.0-rc3.md)) -Another way is to start with the pre-configured demo application project (found in [this directory](https://github.com/FreeRTOS/FreeRTOS/tree/devIPv6/FreeRTOS-Plus/Demo/FreeRTOS_Plus_TCP_Minimal_Windows_Simulator)). That way you will have the correct FreeRTOS source files included, and the correct include paths configured. Once a demo application is building and executing you can remove the demo application files, and start to add in your own application source files. See the [FreeRTOS Kernel Quick Start Guide](https://www.freertos.org/FreeRTOS-quick-start-guide.html) for detailed instructions and other useful links. +The easiest way to use the 4.0.0-rc3 version of FreeRTOS-Plus-TCP is to refer to to the Getting started Guide (found [here](https://github.com/FreeRTOS/FreeRTOS-Plus-TCP/blob/main/GettingStarted_4.0.0-rc3.md)) +Another way is to start with the pre-configured demo application project (found in [this directory](https://github.com/FreeRTOS/FreeRTOS/tree/main/FreeRTOS-Plus/Demo/FreeRTOS_Plus_TCP_Minimal_Windows_Simulator)). That way you will have the correct FreeRTOS source files included, and the correct include paths configured. Once a demo application is building and executing you can remove the demo application files, and start to add in your own application source files. See the [FreeRTOS Kernel Quick Start Guide](https://www.freertos.org/FreeRTOS-quick-start-guide.html) for detailed instructions and other useful links. Additionally, for FreeRTOS-Plus-TCP source code organization refer to the [Documentation](http://www.FreeRTOS.org/FreeRTOS-Plus/FreeRTOS_Plus_TCP/TCP_Networking_Tutorial.html), and [API Reference](https://freertos.org/FreeRTOS-Plus/FreeRTOS_Plus_TCP/FreeRTOS_TCP_API_Functions.html). diff --git a/source/FreeRTOS_UDP_IP.c b/source/FreeRTOS_UDP_IP.c index de97fe244..c659b745b 100644 --- a/source/FreeRTOS_UDP_IP.c +++ b/source/FreeRTOS_UDP_IP.c @@ -90,7 +90,7 @@ UDPPacketHeader_t xDefaultPartUDPPacketHeader = * @brief Process the generated UDP packet and do other checks before sending the * packet such as ARP cache check and address resolution. * - * @param[in] pxNetworkBuffer: The network buffer carrying the packet. + * @param[in] pxNetworkBuffer The network buffer carrying the packet. */ void vProcessGeneratedUDPPacket( NetworkBufferDescriptor_t * const pxNetworkBuffer ) { @@ -128,9 +128,9 @@ void vProcessGeneratedUDPPacket( NetworkBufferDescriptor_t * const pxNetworkBuff /** * @brief Process the received UDP packet. * - * @param[in] pxNetworkBuffer: The network buffer carrying the UDP packet. - * @param[in] usPort: The port number on which this packet was received. - * @param[out] pxIsWaitingForARPResolution: If the packet is awaiting ARP resolution, + * @param[in] pxNetworkBuffer The network buffer carrying the UDP packet. + * @param[in] usPort The port number on which this packet was received. + * @param[out] pxIsWaitingForARPResolution If the packet is awaiting ARP resolution, * this pointer will be set to pdTRUE. pdFALSE otherwise. * * @return pdPASS in case the UDP packet could be processed. Else pdFAIL is returned. diff --git a/test/build-combination/Common/main.c b/test/build-combination/Common/main.c index 97e2c4650..bf4217333 100644 --- a/test/build-combination/Common/main.c +++ b/test/build-combination/Common/main.c @@ -213,6 +213,17 @@ void vApplicationIdleHook( void ) /*-----------------------------------------------------------*/ +void vLoggingPrintf( const char * pcFormat, + ... ) +{ + va_list arg; + + va_start( arg, pcFormat ); + vprintf( pcFormat, arg ); + va_end( arg ); +} +/*-----------------------------------------------------------*/ + void getUserCmd( char * pucUserCmd ) { /* Provide a stub for this function. */