Keep It Simple, Stupid | |
PerlMonks |
Re^2: getsockopt truncating values to 256 bytes ?by Yaribz (Beadle) |
on May 20, 2022 at 15:54 UTC ( [id://11144034]=note: print w/replies, xml ) | Need Help?? |
I can duplicate with your script on my mac
Thanks for taking time to reproduce. This is probably something you should open an issue forI was hoping I was wrong and missed something, but I guess I should indeed... I just opened this issue. my guess is that hard-coded 256 should really be changed to maybe sizeof(struct tcp_info)As far as I understand this code is responsible for all getsockopt calls, not just the calls for the TCP_INFO structure (for example on macOS one can also retrieve the TCP_CONNECTION_INFO structure using getsockopt...). So unless we are sure the TCP_INFO structure will always be the largest one, it would require checking the size of the requested structure, i.e. translating the getsockopt macro name to the actual C structure name to be able to compute the length, which seems quite complicated... I guess adding an optional parameter to the getsockopt function to allow the calling code to override the default 256 max size would be ok though.
In Section
Seekers of Perl Wisdom
|
|