As of PostgreSQL, an appropriately built client will initiate TCP/IP
connections with these packets:
1. GSSENCRequest
2. SSLRequest
3. StartupMessage
Older servers will respond to the first one with:
FATAL: unsupported frontend protocol 1234.5680: server supports 2.0 to 3.0
libpq will then try to reconnect with SSLRequest. So this works out in
practice, but it will require two TCP/IP connections and leave these
messages in the log.
I think we should at least document this somehow in the release notes.
Also, third-party implementors of the server protocol should be made
aware of this, again probably via the release notes.
--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services