* resolve most warnings
* fix ip diffconfig test
* fix dns cache test
* resolve empty macros warning and remove unused test
* resolve C90 issues for unit tests
* resolve semphr mocking warning
* restore arp data len test
* Uncrustify: triggered by comment.
* remove union name
* Uncrustify: triggered by comment.
* resolve remaining warnings
* Uncrustify: triggered by comment.
---------
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: tony-josi-aws <tonyjosi@amazon.com>
Fix following MISRA issues :
MISRA Rule 8_5 : Symbol "FreeRTOS_inet_ntop6" is declared more than once.
MISRA Rule 8_9 : Symbol "FreeRTOS_in6addr_loopback" should be defined at block scope.
MISRA Rule 8_8 : missing static storage modifier for "prvCloseDHCPSocket" which has internal linkage.
MISRA Rule 9_1 : Using uninitialized value "xRemoteIP.xIs_IPv6" when calling "pxTCPSocketLookup".
MISRA Rule 9_1 : Using uninitialized value "pxAddress->sin_family" when calling "prvSocketBindAdd".
MISRA Rule 11_3 : A cast shall not be performed between two pointer of different object type.
MISRA Rule 12_1 : Missing parentheses on sub-expression of the operator.
MISRA Rule 14.4 : The condition expression 0 does not have an essentially boolean type
MISRA Rule 15_6 : The body of the "then" branch of the "if" statement is not a compound statement.
MISRA Rule 17_7 : The return value of a non-void function "memset" is unused.
MISRA Rule 20_5 : Using "#undef".
MISRA Rule 20_10 : Use of "#" or "##" preprocessor operator.
MISRA Rule 21_1 : Defining or undefining a reserved name "_static", which is an identifier or macro name beginning with an underscore.
MISRA Rule 21_15 : Calling function "memcmp" with incompatible types "void " and "uint8_t const ()[6]".
* Disable DHCP timer when network goes down
* Don't stop checking the Network Timer
* Fix network down when using RA
* Revert "Don't stop checking the Network Timer"
This reverts commit f5d8d98856.
* Add vSetNotAllNetworksUp function
* Fix unit tests
* Update comments
* Store DHCPv4 socket locally for all endpoints
* Add vDHCPStop and vDHCPv6Stop functions
* Fix IP Utils tests
* Fix most of DHCP unit tests
* Fix formatting
* Change vSetNotAllNetworksUp into a more generic vSetAllNetworksUp
* Fix almost all of DHCP unit tests
* Fix formatting
* Add tests for vDHCPStop and vDHCPv6Stop functions
* Fix formatting
* Remove redundant MISRA comment
* Set all fields of xAddress when binding DHCP socket
* Fix unit test coverage of prvCreateDHCPSocket
* Fix DHCP CBMC memory proof
---------
Co-authored-by: Soren Ptak <ptaksoren@gmail.com>
Co-authored-by: Tony Josi <tonyjosi@amazon.com>
* Use new version of CI-CD Actions, checkout@v3 instead of checkout@v2 on all jobs
* Use cSpell spell check, and use ubuntu-20.04 for formatting check
* Add in bot formatting action
* DHCPv6 repaired and tested
* More changes
* Added entries to lexicon.txt
* Ran uncrustify on tools/tcp_utilities
* Formatting STM32Fxx
* Uncrusitfy tcp_mem_stats.c
* Remove trailing space
* I didn't mean to update the tcp_utilities directory yet
* Changes after Actory's review
* Replaced tabs with spaces
* Fix spelling.
* Changed the application hook for IPv6 and set the correct IPv6 defaults when failed
* Add a macro as maximum send buffer size.
* Fix formatting & build test.
* Replace xApplicationDHCPHook with xApplicationDHCPHook_Multi.
* Fix comments for xDNSServers & uxDNSCount.
* Fix ApplicationDHCPHook_Multi parameters.
---------
Co-authored-by: ActoryOu <jay2002824@gmail.com>
Co-authored-by: ActoryOu <ousc@amazon.com>
* 556 Initial Cmake Module definition. #557
* renaming variables that have conflicting names with MSC and *nix headers
* fix build issue for posix port
* Fix warning: -Waddress-of-packed-member when calculating checksum directly from network packets
* fix warnings with prvInitialiseTCPFields declaration
* removing macros that hides the structure fields
* Updating build check enable all config to enable all config macros
* CMake: Fix GIT_REPOSITORY and GIT_TAG (#742)
* moving ipTRUE_BOOL and ipFALSE_BOOL out of #ifndef pdTRUE_SIGNED check as they are not defined in kernel
* minor fix to the cmake files and main file
* Uncrustify: triggered by comment.
* adding doxygen comments to new functions
* Uncrustify: triggered by comment
* Add more warnings check and fix warnings
* Uncrustify: triggered by comment
* fix review feedback and more debug printf warnings fix
* more warnings fix
* fix misra issues
* Uncrustify: triggered by comment
* replace sin_addr with sin_address.ulIP_IPv4 in +TCP demos
* replace sin_addr6 with sin_address.xIP_IPv6 in +TCP demos
* replace freertos_sockaddr6 with freertos_sockaddr in +TCP demos
* review feedback changes
* removing duplicate def for prvStreamBufferAdd from winpcap
* fix more warnings from MSVC
* Uncrustify: triggered by comment
* review feedback changes
* Uncrustify: triggered by comment
---------
Co-authored-by: phelter <paulheltera@gmail.com>
Co-authored-by: Nikhil Kamath <110539926+amazonKamath@users.noreply.github.com>
Co-authored-by: GitHub Action <action@github.com>
* Minor changes to the CBMC DHCP proof to make the code more readable
* minor documentation fix
* fix unit tests
* Uncrustify: triggered by comment
* minor update
---------
Co-authored-by: GitHub Action <action@github.com>
* updating doxygen config
* fixing doxygen comments
* adding IPv6 files and fixing comments
* fix doxygen cfg and file names in comments
* wip doxygen v6 docs
* adding doxygen comments
* include RA src file to doxgendocs generation
* fix spell check issues
* Uncrustify: triggered by comment.
* fix minor build issue
* fix spell check issues
* Uncrustify: triggered by comment
* fix trailing white space
* Dev integration hein.v8 (#738)
* Updating tcp utilities
* Some more change in dev_integration_hein.v8
* In FreeRTOS_DNS_Parser.c : use 'ipUDP_PAYLOAD_OFFSET_IPv4' in stead of 'ipIP_PAYLOAD_OFFSET'
* And a few more corrections
* Changes to WinPCap network interface, removed debugging code
* After applying uncrustify
* Oops, I forgot the push changes in include files.
* Now removing it, hopefully
---------
Co-authored-by: Nikhil Kamath <110539926+amazonKamath@users.noreply.github.com>
Co-authored-by: Monika Singh <108652024+moninom1@users.noreply.github.com>
* Fix CBMC proofs for DNS (#718)
* 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 <tuttle@acm.org>
* wip
* wip DNSgetHostByName
* wip DNSgetHostByName
* fixed cbmc proof for DNS_ReadNameField
* wip DNSgetHostByName_a_harness
* Fix CBMC prooff for DNSgetHostByName
* wip fix DNSgetHostByName_a CBMC proof
* fixed cbmc target func not called issue in DNSclear
* fixed cbmc target func not called issue in DNSlookup
* fix DNSgetHostByName_a CBMC proof
* update comments
* more asserts
* fixing formatting
* updating as per review comments
* fix dns after review comments
* adding more asserts
* adds more asserts
* minor fix
* fixing comments
* fixing comments
* fixing minor issue
* fixing DNS_ReadReply() signature
* making code more consistant
* adding more asserts
* making code more consistent
---------
Co-authored-by: Kareem Khazem <karkhaz@amazon.com>
Co-authored-by: Mark Tuttle <tuttle@acm.org>
* Uncrustify: triggered by comment
* fixing formatting
---------
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Hein Tibosch <hein_tibosch@yahoo.es>
Co-authored-by: Nikhil Kamath <110539926+amazonKamath@users.noreply.github.com>
Co-authored-by: Monika Singh <108652024+moninom1@users.noreply.github.com>
Co-authored-by: Kareem Khazem <karkhaz@amazon.com>
Co-authored-by: Mark Tuttle <tuttle@acm.org>
* 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 <tuttle@acm.org>
* wip
* wip DHCPProcess
* wip dhcp process
* wip
* fix CBMC ProcessDHCPReplies proofs
* wip DHCPProcess
* fix DHCPProcess CBMC proof
* fix DHCPProcess CBMC proof
* added multiple end point
* fix ProcessDHCPReplies
* fix function sign.
* fix DHCP CBMC proofs
* NULL assume to assignment
* updating with changes wrt review comments
* adding more non determinism to the proof
* free memory in FreeRTOS_ReleaseUDPPayloadBuffer
* WIP DHCPProcess CBMC proof
* wip DHCP process
* reverting back to old version
* adding more comments
---------
Co-authored-by: Kareem Khazem <karkhaz@amazon.com>
Co-authored-by: Mark Tuttle <tuttle@acm.org>
* Changes after testing all other protocols IPv4 and IPv6
* Clear interface/endpoint when creating a network buffer
* After running uncristify
* Didn't mean to update 'TCP_Transmission_IPV4'
* Removed changes from Routing.h to make merging easier
* Reparations and recommendations for the dev/IPv6_integration branch
* Applied uncrustify
* More changes after testing ARP, ICMP4, ICMP6, UDPv4 and UDPv6, DNSv6
* A few changes to DNS after testing it
* Fix FreeRTOS_IP and FreeRTOS_IP_DiffConfig test cases
* Remove test_prvProcessIPEventsAndTimers_eNetworkDownEvent test Case
- eNetworkDownEvent no longer support xNetworkUp variable, the network status
is kept in pxEndPoint->bits.bEndPointUp.
* Run Uncrustify.
Co-authored-by: GitHub Action <action@github.com>
* Add IPv6 data path and endpoint changes to FreeRTOS_IP.c
* Add FreeRTOS_IPv4.h and FreeRTOS_IPv6.h files.
* Fix compilation issues and run Uncrustify
* Add EndPoint changes to FreeRTOS_Socket.c
* Split Socket.c to IPv4 and IPv6 files
* Combine freertos_sockaddr for IPv4 and IPv6
* Update sendto and recv function to handle IPv4 and IPv6 case
* Run uncrustify
* IPv4/single: DHCP send option 50 only when a preferred IP-address is supplied
* Formatting FreeRTOS_DHCP.h
* Add unit test for increasing the coverage
Co-authored-by: Hein Tibosch <hein@htibosch.net>
Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>
* Update source location for coverity
* Add coverage checker
* Add build check with default configuration
* Fix build combination and DNS error
* uncrustified and fixed cmakelists
* This commit updates version number in all files to Development-Branch
* Update version number macros
* This commit fixes a typo in version number macro
* Added a 'critical section' to prevent a race condition in stream buffers
* Uncrustify: triggered by comment.
* Fixed unit-tests by adding mocked functions
* Initial commit of file README.md
* Update README.md
* Fix the title of README file in coverity
* Addressed issue comments
* Update command
* Add details about remaining exception
* Move file to original location
* Remove use of sudo in commands
* Fix links; added coverity version note
* Update README.md
* Remove CMake installation instructions
* Update manifest/history and copyright year
* Update kernel version to 10.4.5
* Update remaining copyright year instances
* Update the version number macros
* Update license header titles
* Remove kernel license header and add TCP header
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
* Update source location for coverity
* Add coverage checker
* Add build check with default configuration
* Fix build combination and DNS error
* uncrustified and fixed cmakelists
* This commit updates version number in all files to Development-Branch
* Update version number macros
* This commit fixes a typo in version number macro
This commit brings in the refactoring and restructuring changes
from IntegrationTesting1 branch to the main branch.
It also includes additional unit tests for 100% coverage.
The rationale behind not creating a PR is that the conflicts were too
huge to be resolved correctly. Thus, a force push to the main branch is
being done.