mirror of
https://github.com/postgres/postgres.git
synced 2025-07-30 11:03:19 +03:00
Add PGETC (for pg_service.conf) and PGLOCALE (for locale dir)
environment variable processing to libpq. The patch also adds code to our client apps so we set the environment variable directly based on our binary location, unless it is already set. This will allow our applications to emit proper locale messages that are generated in libpq.
This commit is contained in:
@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/interfaces/libpq/fe-connect.c,v 1.271 2004/05/26 18:35:51 momjian Exp $
|
||||
* $PostgreSQL: pgsql/src/interfaces/libpq/fe-connect.c,v 1.272 2004/06/03 00:07:38 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -2363,17 +2363,13 @@ pqPacketSend(PGconn *conn, char pack_type,
|
||||
|
||||
|
||||
|
||||
#ifndef SYSCONFDIR
|
||||
#error "You must compile this file with SYSCONFDIR defined."
|
||||
#endif
|
||||
|
||||
#define MAXBUFSIZE 256
|
||||
|
||||
static int
|
||||
parseServiceInfo(PQconninfoOption *options, PQExpBuffer errorMessage)
|
||||
{
|
||||
char *service = conninfo_getval(options, "service");
|
||||
char *serviceFile = SYSCONFDIR "/pg_service.conf";
|
||||
char serviceFile[MAXPGPATH];
|
||||
bool group_found = false;
|
||||
int linenr = 0,
|
||||
i;
|
||||
@ -2386,6 +2382,13 @@ parseServiceInfo(PQconninfoOption *options, PQExpBuffer errorMessage)
|
||||
if (service == NULL)
|
||||
service = getenv("PGSERVICE");
|
||||
|
||||
/*
|
||||
* This could be used by any application so we can't use the binary
|
||||
* location to find our config files.
|
||||
*/
|
||||
snprintf(serviceFile, MAXPGPATH, "%s/pg_service.conf",
|
||||
getenv("PGETC") ? getenv("PGETC") : SYSCONFDIR);
|
||||
|
||||
if (service != NULL)
|
||||
{
|
||||
FILE *f;
|
||||
|
Reference in New Issue
Block a user