Skip to content

Commit 2a571bc

Browse files
committed
Fully const-ify PQconnectdbParams, PQconnectStartParams, and PQpingParams.
The keywords and values arguments of these functions are more properly declared "const char * const *" than just "const char **". Lionel Elie Mamane, reviewed by Craig Ringer
1 parent d5aa7a9 commit 2a571bc

File tree

3 files changed

+23
-19
lines changed

3 files changed

+23
-19
lines changed

doc/src/sgml/libpq.sgml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,9 @@
9898
Makes a new connection to the database server.
9999

100100
<synopsis>
101-
PGconn *PQconnectdbParams(const char **keywords, const char **values, int expand_dbname);
101+
PGconn *PQconnectdbParams(const char * const *keywords,
102+
const char * const *values,
103+
int expand_dbname);
102104
</synopsis>
103105
</para>
104106

@@ -730,8 +732,8 @@ PGconn *PQsetdb(char *pghost,
730732
Make a connection to the database server in a nonblocking manner.
731733

732734
<synopsis>
733-
PGconn *PQconnectStartParams(const char **keywords,
734-
const char **values,
735+
PGconn *PQconnectStartParams(const char * const *keywords,
736+
const char * const *values,
735737
int expand_dbname);
736738

737739
PGconn *PQconnectStart(const char *conninfo);
@@ -1112,7 +1114,9 @@ PostgresPollingStatusType PQresetPoll(PGconn *conn);
11121114
values to obtain the server status.
11131115

11141116
<synopsis>
1115-
PGPing PQpingParams(const char **keywords, const char **values, int expand_dbname);
1117+
PGPing PQpingParams(const char * const *keywords,
1118+
const char * const *values,
1119+
int expand_dbname);
11161120
</synopsis>
11171121

11181122
The function returns one of the following values:

src/interfaces/libpq/fe-connect.c

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -291,8 +291,8 @@ static void freePGconn(PGconn *conn);
291291
static void closePGconn(PGconn *conn);
292292
static PQconninfoOption *conninfo_parse(const char *conninfo,
293293
PQExpBuffer errorMessage, bool use_defaults);
294-
static PQconninfoOption *conninfo_array_parse(const char **keywords,
295-
const char **values, PQExpBuffer errorMessage,
294+
static PQconninfoOption *conninfo_array_parse(const char *const * keywords,
295+
const char *const * values, PQExpBuffer errorMessage,
296296
bool use_defaults, int expand_dbname);
297297
static char *conninfo_getval(PQconninfoOption *connOptions,
298298
const char *keyword);
@@ -362,8 +362,8 @@ pgthreadlock_t pg_g_threadlock = default_threadlock;
362362
* call succeeded.
363363
*/
364364
PGconn *
365-
PQconnectdbParams(const char **keywords,
366-
const char **values,
365+
PQconnectdbParams(const char *const * keywords,
366+
const char *const * values,
367367
int expand_dbname)
368368
{
369369
PGconn *conn = PQconnectStartParams(keywords, values, expand_dbname);
@@ -381,8 +381,8 @@ PQconnectdbParams(const char **keywords,
381381
* check server status, accepting parameters identical to PQconnectdbParams
382382
*/
383383
PGPing
384-
PQpingParams(const char **keywords,
385-
const char **values,
384+
PQpingParams(const char *const * keywords,
385+
const char *const * values,
386386
int expand_dbname)
387387
{
388388
PGconn *conn = PQconnectStartParams(keywords, values, expand_dbname);
@@ -464,8 +464,8 @@ PQping(const char *conninfo)
464464
* See PQconnectPoll for more info.
465465
*/
466466
PGconn *
467-
PQconnectStartParams(const char **keywords,
468-
const char **values,
467+
PQconnectStartParams(const char *const * keywords,
468+
const char *const * values,
469469
int expand_dbname)
470470
{
471471
PGconn *conn;
@@ -4249,7 +4249,7 @@ conninfo_parse(const char *conninfo, PQExpBuffer errorMessage,
42494249
* keywords will take precedence, however.
42504250
*/
42514251
static PQconninfoOption *
4252-
conninfo_array_parse(const char **keywords, const char **values,
4252+
conninfo_array_parse(const char *const * keywords, const char *const * values,
42534253
PQExpBuffer errorMessage, bool use_defaults,
42544254
int expand_dbname)
42554255
{

src/interfaces/libpq/libpq-fe.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -235,14 +235,14 @@ typedef struct pgresAttDesc
235235
/* make a new client connection to the backend */
236236
/* Asynchronous (non-blocking) */
237237
extern PGconn *PQconnectStart(const char *conninfo);
238-
extern PGconn *PQconnectStartParams(const char **keywords,
239-
const char **values, int expand_dbname);
238+
extern PGconn *PQconnectStartParams(const char *const * keywords,
239+
const char *const * values, int expand_dbname);
240240
extern PostgresPollingStatusType PQconnectPoll(PGconn *conn);
241241

242242
/* Synchronous (blocking) */
243243
extern PGconn *PQconnectdb(const char *conninfo);
244-
extern PGconn *PQconnectdbParams(const char **keywords,
245-
const char **values, int expand_dbname);
244+
extern PGconn *PQconnectdbParams(const char *const * keywords,
245+
const char *const * values, int expand_dbname);
246246
extern PGconn *PQsetdbLogin(const char *pghost, const char *pgport,
247247
const char *pgoptions, const char *pgtty,
248248
const char *dbName,
@@ -413,8 +413,8 @@ extern int PQsetnonblocking(PGconn *conn, int arg);
413413
extern int PQisnonblocking(const PGconn *conn);
414414
extern int PQisthreadsafe(void);
415415
extern PGPing PQping(const char *conninfo);
416-
extern PGPing PQpingParams(const char **keywords,
417-
const char **values, int expand_dbname);
416+
extern PGPing PQpingParams(const char *const * keywords,
417+
const char *const * values, int expand_dbname);
418418

419419
/* Force the write buffer to be written (or at least try) */
420420
extern int PQflush(PGconn *conn);

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy