diff options
Diffstat (limited to 'src/interfaces')
-rw-r--r-- | src/interfaces/libpq/fe-connect.c | 9 | ||||
-rw-r--r-- | src/interfaces/libpq/fe-protocol3.c | 4 | ||||
-rw-r--r-- | src/interfaces/libpq/libpq-int.h | 3 |
3 files changed, 13 insertions, 3 deletions
diff --git a/src/interfaces/libpq/fe-connect.c b/src/interfaces/libpq/fe-connect.c index 10233db9f5e..125d93cf0b1 100644 --- a/src/interfaces/libpq/fe-connect.c +++ b/src/interfaces/libpq/fe-connect.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/interfaces/libpq/fe-connect.c,v 1.382 2010/01/02 16:58:11 momjian Exp $ + * $PostgreSQL: pgsql/src/interfaces/libpq/fe-connect.c,v 1.383 2010/01/15 09:19:10 heikki Exp $ * *------------------------------------------------------------------------- */ @@ -227,6 +227,9 @@ static const PQconninfoOption PQconninfoOptions[] = { "GSS-library", "", 7}, /* sizeof("gssapi") = 7 */ #endif + {"replication", NULL, NULL, NULL, + "Replication", "D", 5}, + /* Terminating entry --- MUST BE LAST */ {NULL, NULL, NULL, NULL, NULL, NULL, 0} @@ -472,6 +475,8 @@ connectOptions1(PGconn *conn, const char *conninfo) tmp = conninfo_getval(connOptions, "gsslib"); conn->gsslib = tmp ? strdup(tmp) : NULL; #endif + tmp = conninfo_getval(connOptions, "replication"); + conn->replication = tmp ? strdup(tmp) : NULL; /* * Free the option info - all is in conn now @@ -2136,6 +2141,8 @@ freePGconn(PGconn *conn) free(conn->fbappname); if (conn->dbName) free(conn->dbName); + if (conn->replication) + free(conn->replication); if (conn->pguser) free(conn->pguser); if (conn->pgpass) diff --git a/src/interfaces/libpq/fe-protocol3.c b/src/interfaces/libpq/fe-protocol3.c index e5df9e712d3..4cef2b4eb72 100644 --- a/src/interfaces/libpq/fe-protocol3.c +++ b/src/interfaces/libpq/fe-protocol3.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/interfaces/libpq/fe-protocol3.c,v 1.41 2010/01/02 16:58:12 momjian Exp $ + * $PostgreSQL: pgsql/src/interfaces/libpq/fe-protocol3.c,v 1.42 2010/01/15 09:19:10 heikki Exp $ * *------------------------------------------------------------------------- */ @@ -1909,6 +1909,8 @@ build_startup_packet(const PGconn *conn, char *packet, ADD_STARTUP_OPTION("user", conn->pguser); if (conn->dbName && conn->dbName[0]) ADD_STARTUP_OPTION("database", conn->dbName); + if (conn->replication && conn->replication) + ADD_STARTUP_OPTION("replication", conn->replication); if (conn->pgoptions && conn->pgoptions[0]) ADD_STARTUP_OPTION("options", conn->pgoptions); if (conn->send_appname) diff --git a/src/interfaces/libpq/libpq-int.h b/src/interfaces/libpq/libpq-int.h index 737a6253a13..b19e5266349 100644 --- a/src/interfaces/libpq/libpq-int.h +++ b/src/interfaces/libpq/libpq-int.h @@ -12,7 +12,7 @@ * Portions Copyright (c) 1996-2010, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/interfaces/libpq/libpq-int.h,v 1.147 2010/01/02 16:58:12 momjian Exp $ + * $PostgreSQL: pgsql/src/interfaces/libpq/libpq-int.h,v 1.148 2010/01/15 09:19:10 heikki Exp $ * *------------------------------------------------------------------------- */ @@ -298,6 +298,7 @@ struct pg_conn char *appname; /* application name */ char *fbappname; /* fallback application name */ char *dbName; /* database name */ + char *replication; /* connect as the replication standby? */ char *pguser; /* Postgres username and password, if any */ char *pgpass; char *sslmode; /* SSL mode (require,prefer,allow,disable) */ |