-
Notifications
You must be signed in to change notification settings - Fork 167
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #8 from moninom1/maintry2
Merging to main
- Loading branch information
Showing
510 changed files
with
94,103 additions
and
14,817 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
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) . | ||
|
||
Some of the APIs have changed which is illustrated in the section below. However, there is a backward compatibility mode provided as well. | ||
|
||
Backward Compatibility Mode: | ||
--------------------------- | ||
If you are moving your code from V3.x.x to V4.0.0-rc1/rc2/rc3, then set the "ipconfigIPv4_BACKWARD_COMPATIBLE" macro to 1 in “FreeRTOSIPConfigDefaults.h” to run the code in backward compatible mode. | ||
The "Existing API's" defined in all the API changes below work only when the backward compatibility mode is enabled. | ||
|
||
API changes in 4.0.0-rc1/rc2/rc3: | ||
---------------------- | ||
|
||
The changes mentioned below uses ipconfigIPv4_BACKWARD_COMPATIBLE flag to differentiate between old API and new API. | ||
|
||
Change 1: | ||
|
||
- Existing API: FreeRTOS_IPInit | ||
- Backward compatibility with the IPv4 FreeRTOS+TCP V3.x.x which only supports single network interface. This can be used for single interface IPv4 systems. | ||
- New API: FreeRTOS_IPInit_Multi | ||
- Supports multiple interfaces. Before calling this function, at least 1 interface and 1 end-point must have been set-up. FreeRTOS_IPInit_Multi() replaces the earlier FreeRTOS_IPInit(). | ||
|
||
Change 2: | ||
|
||
- Existing API: FreeRTOS_GetAddressConfiguration/FreeRTOS_SetAddressConfiguration | ||
- Get/Set the address configuration from the global variables initialised during FreeRTOS_IPInit | ||
- New API: FreeRTOS_GetEndPointConfiguration/FreeRTOS_SetEndPointConfiguration | ||
- Get/Set the same address configuration from/to the end point | ||
|
||
Change 3: | ||
|
||
- Existing API: FreeRTOS_GetUDPPayloadBuffer | ||
- Backward compatibility with the IPv4 FreeRTOS+TCP V3.x.x. This can still be used for IPv4 use cases. | ||
- New API:FreeRTOS_GetUDPPayloadBuffer_Multi | ||
- A new argument (uint8_t ucIPType) to specify IP type to support both IPv4 and IPv6 | ||
|
||
Change 4: | ||
|
||
- Existing API: pxFillInterfaceDescriptor | ||
- It is there for backward compatibility. The function FreeRTOS_IPInit() will call it to initialise the interface and end-point objects | ||
- New API: prefix_pxFillInterfaceDescriptor | ||
- where prefix = Network Interface Name | ||
- E.g pxWinPcap_FillInterfaceDescriptor | ||
- New function with the same functionality | ||
|
||
Change 5: | ||
|
||
- Existing API: vApplicationIPNetworkEventHook | ||
- New API: vApplicationIPNetworkEventHook_Multi | ||
- New argument “struct xNetworkInterface * pxNetworkInterface” added. | ||
|
||
Change 6: | ||
|
||
- Existing API: xApplicationDHCPHook | ||
- New API: xApplicationDHCPHook_Multi | ||
- New argument "struct xNetworkEndPoint * pxEndPoint" added. | ||
|
||
Change 7: | ||
|
||
- Existing API: xApplicationDNSQueryHook | ||
- New API: xApplicationDNSQueryHook_Multi | ||
- New argument "struct xNetworkEndPoint * pxEndPoint" added. | ||
|
||
**NOTE** : We are NOT considering the APIs changes in FreeRTOS_IP_Private.h for backward compatibility as those are not part of published interface. | ||
|
||
Running Demos: | ||
------------- | ||
The demos can be found at: https://github.com/FreeRTOS/FreeRTOS/tree/devIPv6/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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.