18 Sep
2023
18 Sep
'23
7:59 p.m.
Zebediah Figura (@zfigura) commented about server/sock.c:
unix_len = sizeof(unix_addr); if (!getsockname( unix_fd, &unix_addr.addr, &unix_len )) + { sock->addr_len = sockaddr_from_unix( &unix_addr, &sock->addr.addr, sizeof(sock->addr) ); + sock->peer_addr_len = sockaddr_from_unix( &peer_addr, &sock->peer_addr.addr, sizeof(sock->peer_addr)); + }
This being guarded out by getsockname() succeeding looks wrong. This is broadly true of the other calls to getpeername(), but this one especially looks wrong. It's a bit of a moot point since we don't expect getsockname() or getpeername() to fail, but it does look confusing. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/3074#note_45782