miclam wrote on Friday, August 11, 2017:
Hello,
I’m currently testing the DNS client of +TCP_multi. When using 8.8.8.8 as DNS server I noticed, that eARPGetCacheEntry does not resolve unmatched remote ip addresses to the default gateway.
This is because FreeRTOS_FindEndPointOnNetMask returns either the correct EndPoint, or the default EndPoint, and only in case no default is set NULL.
eARPGetCacheEntry then checks by if( pxEndPoint == NULL )
(Line 456 in FreeRTOS_ARP.c) if the default gateway should be used, which is never reached.
My idea was to let FreeRTOS_FindEndPointOnNetMask return NULL instead of the default EndPoint, and to explicitly call FreeRTOS_FindDefaultEndPoint wherever the default EndPoint is required. But FreeRTOS_FindEndPointOnNetMask is used in quiet a lot locations, I’m afraid of breaking something without knowing.
What do you think?
Many thanks,
Michael