Excellent idea. Patch attached and applied. ---------------------------------------------------------------------------
Tom Lane wrote: > Bruce Momjian <[EMAIL PROTECTED]> writes: > > I had a little problem apply this patch because it had an #ifdef for > > elog() parameter passing. Because ereport() is now a macro, you can't > > do #ifdef inside a macro _call_, so I did it this way: > > I don't think a non-SSL-enabled build need be pointing that out in every > error message --- the SSL phrase shouldn't even be there in the message. > Accordingly, I'd be inclined to do this: > > #ifdef USE_SSL > ereport(FATAL, > (errcode(ERRCODE_INVALID_AUTHORIZATION_SPECIFICATION), > errmsg("no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\", > %s", > hostinfo, port->user_name, port->database_name, > (port->ssl ? gettext("SSL on") : gettext("SSL off"))))); > #else > ereport(FATAL, > (errcode(ERRCODE_INVALID_AUTHORIZATION_SPECIFICATION), > errmsg("no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\"", > hostinfo, port->user_name, port->database_name))); > #endif > > This approach is also more localizable. > > regards, tom lane > > ---------------------------(end of broadcast)--------------------------- > TIP 6: Have you searched our list archives? > > http://archives.postgresql.org > -- Bruce Momjian | http://candle.pha.pa.us [EMAIL PROTECTED] | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
Index: auth.c =================================================================== RCS file: /cvsroot/pgsql-server/src/backend/libpq/auth.c,v retrieving revision 1.106 diff -c -c -r1.106 auth.c *** auth.c 26 Jul 2003 13:50:02 -0000 1.106 --- auth.c 26 Jul 2003 15:21:20 -0000 *************** *** 440,454 **** NI_NUMERICHOST); #ifdef USE_SSL - #define EREPORT_SSL_STATUS (port->ssl ? "on" : "off") - #else - #define EREPORT_SSL_STATUS "off" - #endif - ereport(FATAL, (errcode(ERRCODE_INVALID_AUTHORIZATION_SPECIFICATION), errmsg("no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\", SSL \"%s\"", ! hostinfo, port->user_name, port->database_name, EREPORT_SSL_STATUS))); break; } --- 440,455 ---- NI_NUMERICHOST); #ifdef USE_SSL ereport(FATAL, (errcode(ERRCODE_INVALID_AUTHORIZATION_SPECIFICATION), errmsg("no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\", SSL \"%s\"", ! hostinfo, port->user_name, port->database_name, port->ssl ? "on" : "off"))); ! #else ! ereport(FATAL, ! (errcode(ERRCODE_INVALID_AUTHORIZATION_SPECIFICATION), ! errmsg("no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\"", ! hostinfo, port->user_name, port->database_name))); ! #endif break; }
---------------------------(end of broadcast)--------------------------- TIP 4: Don't 'kill -9' the postmaster