BUG #17074: PQsocket() truncate hande on win64

Started by PG Bug reporting formalmost 5 years ago2 messagesbugs
Jump to latest
#1PG Bug reporting form
noreply@postgresql.org

The following bug has been logged on the website:

Bug reference: 17074
Logged by: Alexey Polushin
Email address: barlone@gmail.com
PostgreSQL version: 13.3
Operating system: windows 64 bit
Description:

Function PQsocket from libpq returns int. But on win64, int type has 32
bits, and socket handle has 64 bits.
PQsocket must return а different type, may be ptrdiff_t.

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: PG Bug reporting form (#1)
Re: BUG #17074: PQsocket() truncate hande on win64

PG Bug reporting form <noreply@postgresql.org> writes:

Function PQsocket from libpq returns int. But on win64, int type has 32
bits, and socket handle has 64 bits.
PQsocket must return а different type, may be ptrdiff_t.

We can't just redefine the result type of PQsocket without
causing API/ABI breakage everywhere.

Perhaps it would be worth inventing a Windows-only function that
returns a connection's socket handle. There hasn't been much
demand for that though.

regards, tom lane