Re: win32 socket definition
Magnus Hagander <magnus@hagander.net>
From: Magnus Hagander <magnus@hagander.net>
To: James Mansion <james@mansionfamily.plus.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2010-01-10T12:44:17Z
Lists: pgsql-hackers
On Sun, Jan 10, 2010 at 13:33, James Mansion <james@mansionfamily.plus.com> wrote: > Tom Lane wrote: >> >> There's another copy of ListenSocket[] in the BackendParameters struct. >> I also wonder about postmaster.c's habit of using -1 for empty slots >> in ListenSocket ... how safe is that for Win64? >> > > On Windows, it should be INVALID_SOCKET. Indeed it should, but I think we're Ok anyway. Here's the extract from the SDK headers. /* * This is used instead of -1, since the * SOCKET type is unsigned. */ #define INVALID_SOCKET (SOCKET)(~0) #define SOCKET_ERROR (-1) But it might be worthwhile going across all those places and setting them to PGINVALID_SOCKET, and typedef that as well. -- Magnus Hagander Me: http://www.hagander.net/ Work: http://www.redpill-linpro.com/