buglwIP - A Lightweight TCP/IP stack - Bugs: bug #55987, lwip_recvmsg does not return...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #55987: lwip_recvmsg does not return sender's address/port

Submitter:  Ross Tyler <rossetyler>
Submitted:  Sat 23 Mar 2019 04:43:21 PM UTC
   
 
Category:  UDP Severity:  3 - Normal
Item Group:  Faulty Behaviour Status:  Invalid
Privacy:  Public Assigned to:  goldsimon
Open/Closed:  Closed Planned Release:  None
lwIP version:  2.0.3

Fri 10 Jan 2020 09:19:37 PM UTC, comment #3: 

OK, another vendor creating version confusion. I hadn't really followed the update espressif did although I saw they did update. As it seems they mixed 2.0.3 with a temporary (not release) git snapshot and in addition to that did more changes instead of working with us to get good changes mainlined.

This should work for official lwIP, but obviously not for what espressif marks as 2.0.3...

--> closing as invalid

Simon Goldschmidt <goldsimon>
Group administrator
Fri 13 Dec 2019 04:30:07 AM UTC, comment #2: 

At the time of this bug submission, I was using Espressif esp-idf v3.2-beta3

https://github.com/espressif/esp-idf/releases/tag/v3.2-beta3

> LWIP related
> New Functionality
> Updated LWIP to v2.0.3 with Espressif patches


lwip_recvmsg calls lwip_recvfrom with NULL, NULL ...
https://github.com/espressif/esp-lwip/blob/e2a24de6603c896a5ddacac296c0304002376eae/src/api/sockets.c#L1284

ssize_t recvd_local = lwip_recvfrom(s, message->msg_iov[i].iov_base, message->msg_iov[i].iov_len, recv_flags, NULL, NULL);

... even though it was given msghdr->msg_name{,len}









Ross Tyler <rossetyler>
Wed 11 Dec 2019 08:53:28 PM UTC, comment #1: 

I don't really get it. v2.0.3 did not provide 'recvmsg' and from reading the code, current master seems to handle this just fine.

Could you be more precise? Which version are you using and where is this "gives it NULL" you reference?

Simon Goldschmidt <goldsimon>
Group administrator
Sat 23 Mar 2019 04:43:21 PM UTC, original submission:  

When using asio async_receive_from, in the esp-idf (v3.2-beta3), the sender's endpoint is not filled in because lwip_recvmsg ignores the msghdr->msg_name{,len} it is given. Although this information is available in lwip_recvfrom, it does not return it because lwip_recvmsg gives it NULL.

The same boost::asio code works fine on Linux.

Ross Tyler <rossetyler>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by goldsimon (Posted a comment)
  • -email is unavailable- added by rossetyler (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

     

    Follow 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2020-01-10 goldsimon StatusNone Invalid
        Assigned toNone goldsimon
        Open/ClosedOpen Closed

    Back to the top

    Powered by Savane 3.13-d3ae.
    Corresponding source code