Tatsuo Ishii <t-ishii(at)sra(dot)co(dot)jp> writes:
> 2) check if the status of handle returned PQsetdbLogin is
> CONNECTION_BAD closePGconn. if so, do not call pqPuts (and
> pqFlush)
I like this approach. The other way, you'd have to be sure that all
failure paths close the socket before returning; even if you get it
right today, somebody will break it again in future. The sending of
the final 'X' is really quite optional anyhow, so I'd say it's fine
not to do it when there's any question about whether it's safe.
regards, tom lane