Re: BUG #1545: LIBPQ Windows Version not calling WSACleanup for - Mailing list pgsql-bugs

From Bruce Momjian
Subject Re: BUG #1545: LIBPQ Windows Version not calling WSACleanup for
Date
Msg-id 200505051637.j45Gbem28950@candle.pha.pa.us
Whole thread Raw
In response to BUG #1545: LIBPQ Windows Version not calling WSACleanup for every WSAStartup  ("Jason Erickson" <jerickso@indian.com>)
List pgsql-bugs
This has now been packpatched to 8.0.3 and 7.4.X and will be released in
the next few days.

---------------------------------------------------------------------------

Jason Erickson wrote:
>
> The following bug has been logged online:
>
> Bug reference:      1545
> Logged by:          Jason Erickson
> Email address:      jerickso@indian.com
> PostgreSQL version: 8.0.1,7.4.7
> Operating system:   Windows
> Description:        LIBPQ Windows Version not calling WSACleanup for every
> WSAStartup
> Details:
>
> Taken from microsoft at:
> http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winsock/win
> sock/wsastartup_2.asp
> -------------------------------------------------------
> An application must call one WSACleanup call for every successful WSAStartup
> call to allow third-party DLLs to make use of a WS2_32.DLL on behalf of an
> application. This means, for example, that if an application calls
> WSAStartup three times, it must call WSACleanup three times. The first two
> calls to WSACleanup do nothing except decrement an internal counter; the
> final WSACleanup call for the task does all necessary resource deallocation
> for the task.
> ------------------------------------------------------------------
>
> The only place WSACleanup is being called is libpqdll when the process
> detaches the DLL (if the libpq is not staticly linked in), which matches up
> with the WSAStartup when the process attaches to the DLL.
>
> The WSAStartup in the fe-connect.c->makeEmptyPGconn() does not have a
> matching WSACleanup.  WSACleanup could possibly be placed in freePGconn(),
> but unsure if all possible error cases will go through this function.
>
> This problem exists in both 8.0.1 and 7.4.7 of the libpq interface for
> Windows.
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
>

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

pgsql-bugs by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: BUG #1545: LIBPQ Windows Version not calling WSACleanup for
Next
From: Michael Fuhr
Date:
Subject: Re: BUG #1647: shows version 7.1, doesnt create tablespaces etc.