Ensure the private port number wrap check is inside the critical section in prvGetPrivatePortNumber() (UDP).

Add missing default values for some of the trace macros.
pull/1/head
Richard Barry 11 years ago
parent 63bd3ebbef
commit 818abc468d

@ -932,17 +932,19 @@ uint16_t usReturn;
/* Assign the next port in the range. */
taskENTER_CRITICAL();
{
usNextPortToUse++;
taskEXIT_CRITICAL();
/* Has it overflowed? */
if( usNextPortToUse == 0U )
{
/* Don't go right back to the start of the dynamic/private port
range numbers as any persistent sockets are likely to have been
create first so the early port numbers may still be in use. */
usNextPortToUse = socketAUTO_PORT_ALLOCATION_RESET_NUMBER;
/* Has it overflowed? */
if( usNextPortToUse == 0U )
{
/* Don't go right back to the start of the dynamic/private port
range numbers as any persistent sockets are likely to have been
create first so the early port numbers may still be in use. */
usNextPortToUse = socketAUTO_PORT_ALLOCATION_RESET_NUMBER;
}
}
taskEXIT_CRITICAL();
usReturn = FreeRTOS_htons( usNextPortToUse );

@ -164,7 +164,7 @@ http://www.FreeRTOS.org/FreeRTOS-Plus/FreeRTOS_Plus_UDP/UDP_IP_Trace.shtml */
#endif
#ifndef iptraceWAITING_FOR_TX_DMA_DESCRIPTOR
#define iptraceWAITING_FOR_TX_DMA_DESCRIPTOR
#define iptraceWAITING_FOR_TX_DMA_DESCRIPTOR()
#endif
#ifndef ipconfigINCLUDE_EXAMPLE_FREERTOS_PLUS_TRACE_CALLS
@ -174,4 +174,21 @@ http://www.FreeRTOS.org/FreeRTOS-Plus/FreeRTOS_Plus_UDP/UDP_IP_Trace.shtml */
#ifndef iptraceFAILED_TO_NOTIFY_SELECT_GROUP
#define iptraceFAILED_TO_NOTIFY_SELECT_GROUP( xSocket )
#endif
#ifndef iptraceRECVFROM_TIMEOUT
#define iptraceRECVFROM_TIMEOUT()
#endif
#ifndef iptraceNO_BUFFER_FOR_SENDTO
#define iptraceNO_BUFFER_FOR_SENDTO()
#endif
#ifndef iptraceSENDTO_SOCKET_NOT_BOUND
#define iptraceSENDTO_SOCKET_NOT_BOUND()
#endif
#ifndef iptraceSENDTO_DATA_TOO_LONG
#define iptraceSENDTO_DATA_TOO_LONG()
#endif
#endif /* UDP_TRACE_MACRO_DEFAULTS_H */

Loading…
Cancel
Save