Call getsockopt() on the correct socket.

We're interested in the buffer size of the socket that's connected to the
client, not the one that's listening for new connections. It happened to
work, as default buffer size is the same on both, but it was clearly not
wrong.

Spotted by Tom Lane
This commit is contained in:
Heikki Linnakangas 2015-07-06 16:36:48 +03:00
parent 4f33621f3f
commit 8e33fc1784
1 changed files with 1 additions and 1 deletions

View File

@ -773,7 +773,7 @@ StreamConnection(pgsocket server_fd, Port *port)
* https://msdn.microsoft.com/en-us/library/bb736549%28v=vs.85%29.aspx
*/
optlen = sizeof(oldopt);
if (getsockopt(server_fd, SOL_SOCKET, SO_SNDBUF, (char *) &oldopt,
if (getsockopt(port->sock, SOL_SOCKET, SO_SNDBUF, (char *) &oldopt,
&optlen) < 0)
{
elog(LOG, "getsockopt(SO_SNDBUF) failed: %m");