From b0fe8bb86a37938dad6bd6d6b7a51ded6afbf78a Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Tue, 31 Oct 2017 10:34:31 -0400 Subject: [PATCH v2] Add some const decorations to prototypes --- contrib/dict_xsyn/dict_xsyn.c | 2 +- contrib/fuzzystrmatch/dmetaphone.c | 4 +-- contrib/pgcrypto/pgcrypto.c | 4 +-- contrib/seg/seg.c | 4 +-- contrib/seg/segdata.h | 2 +- contrib/seg/segparse.y | 4 +-- contrib/unaccent/unaccent.c | 2 +- contrib/uuid-ossp/uuid-ossp.c | 2 +- src/backend/access/common/reloptions.c | 12 ++++---- src/backend/access/gist/gistbuild.c | 2 +- src/backend/access/transam/xact.c | 6 ++-- src/backend/access/transam/xlogarchive.c | 4 +-- src/backend/catalog/heap.c | 10 +++---- src/backend/commands/comment.c | 4 +-- src/backend/commands/event_trigger.c | 4 +-- src/backend/commands/extension.c | 4 +-- src/backend/commands/indexcmds.c | 8 +++--- src/backend/commands/opclasscmds.c | 2 +- src/backend/commands/tablecmds.c | 16 +++++------ src/backend/commands/typecmds.c | 6 ++-- src/backend/commands/view.c | 2 +- src/backend/libpq/auth.c | 24 ++++++++-------- src/backend/libpq/hba.c | 6 ++-- src/backend/parser/parse_expr.c | 2 +- src/backend/parser/parse_func.c | 4 +-- src/backend/parser/parse_relation.c | 8 +++--- src/backend/parser/parse_target.c | 2 +- src/backend/port/dynloader/darwin.c | 8 +++--- src/backend/port/dynloader/darwin.h | 4 +-- src/backend/port/dynloader/hpux.c | 4 +-- src/backend/port/dynloader/hpux.h | 4 +-- src/backend/port/dynloader/linux.c | 4 +-- src/backend/postmaster/postmaster.c | 2 +- src/backend/replication/basebackup.c | 8 +++--- src/backend/rewrite/rewriteDefine.c | 4 +-- src/backend/snowball/dict_snowball.c | 2 +- src/backend/storage/lmgr/lwlock.c | 8 +++--- src/backend/tsearch/dict_thesaurus.c | 2 +- src/backend/tsearch/spell.c | 4 +-- src/backend/utils/adt/genfile.c | 2 +- src/backend/utils/adt/ruleutils.c | 4 +-- src/backend/utils/adt/varlena.c | 2 +- src/backend/utils/adt/xml.c | 32 +++++++++++----------- src/bin/initdb/initdb.c | 12 ++++---- src/bin/pg_dump/pg_backup_db.c | 2 +- src/bin/pg_dump/pg_backup_db.h | 2 +- src/bin/pg_rewind/fetch.c | 2 +- src/bin/pg_rewind/fetch.h | 2 +- src/bin/pg_upgrade/option.c | 6 ++-- src/bin/pg_upgrade/pg_upgrade.c | 4 +-- src/bin/pg_waldump/pg_waldump.c | 2 +- src/bin/pgbench/pgbench.c | 4 +-- src/include/access/gist_private.h | 2 +- src/include/access/reloptions.h | 14 +++++----- src/include/access/xact.h | 6 ++-- src/include/access/xlog_internal.h | 4 +-- src/include/catalog/heap.h | 2 +- src/include/commands/comment.h | 4 +-- src/include/commands/defrem.h | 4 +-- src/include/commands/typecmds.h | 2 +- src/include/commands/view.h | 2 +- src/include/executor/tablefunc.h | 8 +++--- src/include/parser/parse_relation.h | 6 ++-- src/include/parser/parse_target.h | 2 +- src/include/postmaster/bgworker.h | 2 +- src/include/rewrite/rewriteDefine.h | 2 +- src/include/storage/lwlock.h | 2 +- src/include/utils/dynamic_loader.h | 4 +-- src/include/utils/varlena.h | 2 +- src/include/utils/xml.h | 6 ++-- src/interfaces/ecpg/compatlib/informix.c | 14 +++++----- src/interfaces/ecpg/ecpglib/misc.c | 20 +++++++------- src/interfaces/ecpg/include/ecpg_informix.h | 12 ++++---- src/interfaces/ecpg/include/ecpglib.h | 2 +- src/interfaces/ecpg/include/pgtypes_date.h | 2 +- src/interfaces/ecpg/include/pgtypes_timestamp.h | 2 +- src/interfaces/ecpg/pgtypeslib/datetime.c | 2 +- src/interfaces/ecpg/pgtypeslib/interval.c | 4 +-- src/interfaces/ecpg/pgtypeslib/timestamp.c | 2 +- src/interfaces/ecpg/preproc/type.c | 2 +- src/interfaces/ecpg/preproc/type.h | 2 +- .../ecpg/test/compat_informix/rfmtdate.pgc | 6 ++-- .../ecpg/test/compat_informix/rfmtlong.pgc | 2 +- .../ecpg/test/compat_informix/test_informix2.pgc | 2 +- .../ecpg/test/expected/compat_informix-rfmtdate.c | 6 ++-- .../ecpg/test/expected/compat_informix-rfmtlong.c | 2 +- .../test/expected/compat_informix-test_informix2.c | 2 +- src/interfaces/ecpg/test/expected/preproc-init.c | 2 +- .../ecpg/test/expected/preproc-whenever.c | 2 +- src/interfaces/ecpg/test/preproc/init.pgc | 2 +- src/interfaces/ecpg/test/preproc/whenever.pgc | 2 +- src/interfaces/libpq/fe-connect.c | 16 +++++------ src/pl/plperl/plperl.c | 4 +-- src/test/regress/pg_regress.c | 4 +-- src/test/regress/pg_regress.h | 2 +- 95 files changed, 236 insertions(+), 236 deletions(-) diff --git a/contrib/dict_xsyn/dict_xsyn.c b/contrib/dict_xsyn/dict_xsyn.c index fcf541ee0f..977162951a 100644 --- a/contrib/dict_xsyn/dict_xsyn.c +++ b/contrib/dict_xsyn/dict_xsyn.c @@ -70,7 +70,7 @@ compare_syn(const void *a, const void *b) } static void -read_dictionary(DictSyn *d, char *filename) +read_dictionary(DictSyn *d, const char *filename) { char *real_filename = get_tsearch_config_filename(filename, "rules"); tsearch_readline_state trst; diff --git a/contrib/fuzzystrmatch/dmetaphone.c b/contrib/fuzzystrmatch/dmetaphone.c index 918ee0d90e..16e4c66167 100644 --- a/contrib/fuzzystrmatch/dmetaphone.c +++ b/contrib/fuzzystrmatch/dmetaphone.c @@ -232,7 +232,7 @@ metastring; */ static metastring * -NewMetaString(char *init_str) +NewMetaString(const char *init_str) { metastring *s; char empty_string[] = ""; @@ -375,7 +375,7 @@ StringAt(metastring *s, int start, int length,...) static void -MetaphAdd(metastring *s, char *new_str) +MetaphAdd(metastring *s, const char *new_str) { int add_length; diff --git a/contrib/pgcrypto/pgcrypto.c b/contrib/pgcrypto/pgcrypto.c index e09f3378da..de09ececcf 100644 --- a/contrib/pgcrypto/pgcrypto.c +++ b/contrib/pgcrypto/pgcrypto.c @@ -47,7 +47,7 @@ PG_MODULE_MAGIC; /* private stuff */ typedef int (*PFN) (const char *name, void **res); -static void *find_provider(text *name, PFN pf, char *desc, int silent); +static void *find_provider(text *name, PFN pf, const char *desc, int silent); /* SQL function: hash(bytea, text) returns bytea */ PG_FUNCTION_INFO_V1(pg_digest); @@ -474,7 +474,7 @@ pg_random_uuid(PG_FUNCTION_ARGS) static void * find_provider(text *name, PFN provider_lookup, - char *desc, int silent) + const char *desc, int silent) { void *res; char *buf; diff --git a/contrib/seg/seg.c b/contrib/seg/seg.c index e707b18fc6..4f18d0f5fa 100644 --- a/contrib/seg/seg.c +++ b/contrib/seg/seg.c @@ -1052,9 +1052,9 @@ restore(char *result, float val, int n) * a floating point number */ int -significant_digits(char *s) +significant_digits(const char *s) { - char *p = s; + const char *p = s; int n, c, zeroes; diff --git a/contrib/seg/segdata.h b/contrib/seg/segdata.h index cac68ee2b2..9488bf3a81 100644 --- a/contrib/seg/segdata.h +++ b/contrib/seg/segdata.h @@ -12,7 +12,7 @@ typedef struct SEG } SEG; /* in seg.c */ -extern int significant_digits(char *str); +extern int significant_digits(const char *str); /* in segscan.l */ extern int seg_yylex(void); diff --git a/contrib/seg/segparse.y b/contrib/seg/segparse.y index 045ff91f3e..040cab3904 100644 --- a/contrib/seg/segparse.y +++ b/contrib/seg/segparse.y @@ -21,7 +21,7 @@ #define YYMALLOC palloc #define YYFREE pfree -static float seg_atof(char *value); +static float seg_atof(const char *value); static char strbuf[25] = { '0', '0', '0', '0', '0', @@ -151,7 +151,7 @@ deviation: SEGFLOAT static float -seg_atof(char *value) +seg_atof(const char *value) { Datum datum; diff --git a/contrib/unaccent/unaccent.c b/contrib/unaccent/unaccent.c index e08cca1707..e68b098b78 100644 --- a/contrib/unaccent/unaccent.c +++ b/contrib/unaccent/unaccent.c @@ -90,7 +90,7 @@ placeChar(TrieChar *node, const unsigned char *str, int lenstr, * Function converts UTF8-encoded file into current encoding. */ static TrieChar * -initTrie(char *filename) +initTrie(const char *filename) { TrieChar *volatile rootTrie = NULL; MemoryContext ccxt = CurrentMemoryContext; diff --git a/contrib/uuid-ossp/uuid-ossp.c b/contrib/uuid-ossp/uuid-ossp.c index fce4bc9140..151223a199 100644 --- a/contrib/uuid-ossp/uuid-ossp.c +++ b/contrib/uuid-ossp/uuid-ossp.c @@ -253,7 +253,7 @@ uuid_generate_v35_internal(int mode, pg_uuid_t *ns, text *name) #else /* !HAVE_UUID_OSSP */ static Datum -uuid_generate_internal(int v, unsigned char *ns, char *ptr, int len) +uuid_generate_internal(int v, unsigned char *ns, const char *ptr, int len) { char strbuf[40]; diff --git a/src/backend/access/common/reloptions.c b/src/backend/access/common/reloptions.c index ec10762529..3d0ce9af6f 100644 --- a/src/backend/access/common/reloptions.c +++ b/src/backend/access/common/reloptions.c @@ -582,7 +582,7 @@ add_reloption(relopt_gen *newoption) * (for types other than string) */ static relopt_gen * -allocate_reloption(bits32 kinds, int type, char *name, char *desc) +allocate_reloption(bits32 kinds, int type, const char *name, const char *desc) { MemoryContext oldcxt; size_t size; @@ -630,7 +630,7 @@ allocate_reloption(bits32 kinds, int type, char *name, char *desc) * Add a new boolean reloption */ void -add_bool_reloption(bits32 kinds, char *name, char *desc, bool default_val) +add_bool_reloption(bits32 kinds, const char *name, const char *desc, bool default_val) { relopt_bool *newoption; @@ -646,7 +646,7 @@ add_bool_reloption(bits32 kinds, char *name, char *desc, bool default_val) * Add a new integer reloption */ void -add_int_reloption(bits32 kinds, char *name, char *desc, int default_val, +add_int_reloption(bits32 kinds, const char *name, const char *desc, int default_val, int min_val, int max_val) { relopt_int *newoption; @@ -665,7 +665,7 @@ add_int_reloption(bits32 kinds, char *name, char *desc, int default_val, * Add a new float reloption */ void -add_real_reloption(bits32 kinds, char *name, char *desc, double default_val, +add_real_reloption(bits32 kinds, const char *name, const char *desc, double default_val, double min_val, double max_val) { relopt_real *newoption; @@ -689,7 +689,7 @@ add_real_reloption(bits32 kinds, char *name, char *desc, double default_val, * the validation. */ void -add_string_reloption(bits32 kinds, char *name, char *desc, char *default_val, +add_string_reloption(bits32 kinds, const char *name, const char *desc, const char *default_val, validate_string_relopt validator) { relopt_string *newoption; @@ -742,7 +742,7 @@ add_string_reloption(bits32 kinds, char *name, char *desc, char *default_val, * but we declare them as Datums to avoid including array.h in reloptions.h. */ Datum -transformRelOptions(Datum oldOptions, List *defList, char *namspace, +transformRelOptions(Datum oldOptions, List *defList, const char *namspace, char *validnsps[], bool ignoreOids, bool isReset) { Datum result; diff --git a/src/backend/access/gist/gistbuild.c b/src/backend/access/gist/gistbuild.c index b4cb364869..2415f00e06 100644 --- a/src/backend/access/gist/gistbuild.c +++ b/src/backend/access/gist/gistbuild.c @@ -238,7 +238,7 @@ gistbuild(Relation heap, Relation index, IndexInfo *indexInfo) * and "auto" values. */ void -gistValidateBufferingOption(char *value) +gistValidateBufferingOption(const char *value) { if (value == NULL || (strcmp(value, "on") != 0 && diff --git a/src/backend/access/transam/xact.c b/src/backend/access/transam/xact.c index 8203388fa8..408422ab22 100644 --- a/src/backend/access/transam/xact.c +++ b/src/backend/access/transam/xact.c @@ -3478,7 +3478,7 @@ BeginTransactionBlock(void) * resource owner, etc while executing inside a Portal. */ bool -PrepareTransactionBlock(char *gid) +PrepareTransactionBlock(const char *gid) { TransactionState s; bool result; @@ -3823,7 +3823,7 @@ EndImplicitTransactionBlock(void) * This executes a SAVEPOINT command. */ void -DefineSavepoint(char *name) +DefineSavepoint(const char *name) { TransactionState s = CurrentTransactionState; @@ -4168,7 +4168,7 @@ RollbackToSavepoint(List *options) * the caller to do it. */ void -BeginInternalSubTransaction(char *name) +BeginInternalSubTransaction(const char *name) { TransactionState s = CurrentTransactionState; diff --git a/src/backend/access/transam/xlogarchive.c b/src/backend/access/transam/xlogarchive.c index c723c931d8..f426ad8b89 100644 --- a/src/backend/access/transam/xlogarchive.c +++ b/src/backend/access/transam/xlogarchive.c @@ -327,7 +327,7 @@ RestoreArchivedFile(char *path, const char *xlogfname, * This is currently used for recovery_end_command and archive_cleanup_command. */ void -ExecuteRecoveryCommand(char *command, char *commandName, bool failOnSignal) +ExecuteRecoveryCommand(const char *command, const char *commandName, bool failOnSignal) { char xlogRecoveryCmd[MAXPGPATH]; char lastRestartPointFname[MAXPGPATH]; @@ -425,7 +425,7 @@ ExecuteRecoveryCommand(char *command, char *commandName, bool failOnSignal) * in pg_wal (xlogfname), replacing any existing file with the same name. */ void -KeepFileRestoredFromArchive(char *path, char *xlogfname) +KeepFileRestoredFromArchive(const char *path, const char *xlogfname) { char xlogfpath[MAXPGPATH]; bool reload = false; diff --git a/src/backend/catalog/heap.c b/src/backend/catalog/heap.c index 05e70818e7..5c0ee1e106 100644 --- a/src/backend/catalog/heap.c +++ b/src/backend/catalog/heap.c @@ -103,12 +103,12 @@ static ObjectAddress AddNewRelationType(const char *typeName, Oid new_row_type, Oid new_array_type); static void RelationRemoveInheritance(Oid relid); -static Oid StoreRelCheck(Relation rel, char *ccname, Node *expr, +static Oid StoreRelCheck(Relation rel, const char *ccname, Node *expr, bool is_validated, bool is_local, int inhcount, bool is_no_inherit, bool is_internal); static void StoreConstraints(Relation rel, List *cooked_constraints, bool is_internal); -static bool MergeWithExistingConstraint(Relation rel, char *ccname, Node *expr, +static bool MergeWithExistingConstraint(Relation rel, const char *ccname, Node *expr, bool allow_merge, bool is_local, bool is_initially_valid, bool is_no_inherit); @@ -2037,7 +2037,7 @@ StoreAttrDefault(Relation rel, AttrNumber attnum, * The OID of the new constraint is returned. */ static Oid -StoreRelCheck(Relation rel, char *ccname, Node *expr, +StoreRelCheck(Relation rel, const char *ccname, Node *expr, bool is_validated, bool is_local, int inhcount, bool is_no_inherit, bool is_internal) { @@ -2461,7 +2461,7 @@ AddRelationNewConstraints(Relation rel, * XXX See MergeConstraintsIntoExisting too if you change this code. */ static bool -MergeWithExistingConstraint(Relation rel, char *ccname, Node *expr, +MergeWithExistingConstraint(Relation rel, const char *ccname, Node *expr, bool allow_merge, bool is_local, bool is_initially_valid, bool is_no_inherit) @@ -2658,7 +2658,7 @@ cookDefault(ParseState *pstate, Node *raw_default, Oid atttypid, int32 atttypmod, - char *attname) + const char *attname) { Node *expr; diff --git a/src/backend/commands/comment.c b/src/backend/commands/comment.c index 1c17927c49..2dc9371fdb 100644 --- a/src/backend/commands/comment.c +++ b/src/backend/commands/comment.c @@ -139,7 +139,7 @@ CommentObject(CommentStmt *stmt) * existing comment for the specified key. */ void -CreateComments(Oid oid, Oid classoid, int32 subid, char *comment) +CreateComments(Oid oid, Oid classoid, int32 subid, const char *comment) { Relation description; ScanKeyData skey[3]; @@ -234,7 +234,7 @@ CreateComments(Oid oid, Oid classoid, int32 subid, char *comment) * existing comment for the specified key. */ void -CreateSharedComments(Oid oid, Oid classoid, char *comment) +CreateSharedComments(Oid oid, Oid classoid, const char *comment) { Relation shdescription; ScanKeyData skey[2]; diff --git a/src/backend/commands/event_trigger.c b/src/backend/commands/event_trigger.c index 938133bbe4..fa7d0d015a 100644 --- a/src/backend/commands/event_trigger.c +++ b/src/backend/commands/event_trigger.c @@ -152,7 +152,7 @@ static event_trigger_command_tag_check_result check_table_rewrite_ddl_tag( const char *tag); static void error_duplicate_filter_variable(const char *defname); static Datum filter_list_to_array(List *filterlist); -static Oid insert_event_trigger_tuple(char *trigname, char *eventname, +static Oid insert_event_trigger_tuple(const char *trigname, const char *eventname, Oid evtOwner, Oid funcoid, List *tags); static void validate_ddl_tags(const char *filtervar, List *taglist); static void validate_table_rewrite_tags(const char *filtervar, List *taglist); @@ -372,7 +372,7 @@ error_duplicate_filter_variable(const char *defname) * Insert the new pg_event_trigger row and record dependencies. */ static Oid -insert_event_trigger_tuple(char *trigname, char *eventname, Oid evtOwner, +insert_event_trigger_tuple(const char *trigname, const char *eventname, Oid evtOwner, Oid funcoid, List *taglist) { Relation tgrel; diff --git a/src/backend/commands/extension.c b/src/backend/commands/extension.c index e4340eed8c..9f77d25352 100644 --- a/src/backend/commands/extension.c +++ b/src/backend/commands/extension.c @@ -1266,8 +1266,8 @@ find_install_path(List *evi_list, ExtensionVersionInfo *evi_target, static ObjectAddress CreateExtensionInternal(char *extensionName, char *schemaName, - char *versionName, - char *oldVersionName, + const char *versionName, + const char *oldVersionName, bool cascade, List *parents, bool is_create) diff --git a/src/backend/commands/indexcmds.c b/src/backend/commands/indexcmds.c index 3f615b6260..89114af119 100644 --- a/src/backend/commands/indexcmds.c +++ b/src/backend/commands/indexcmds.c @@ -67,7 +67,7 @@ static void ComputeIndexAttrs(IndexInfo *indexInfo, List *attList, List *exclusionOpNames, Oid relId, - char *accessMethodName, Oid accessMethodId, + const char *accessMethodName, Oid accessMethodId, bool amcanorder, bool isconstraint); static char *ChooseIndexName(const char *tabname, Oid namespaceId, @@ -115,7 +115,7 @@ static void RangeVarCallbackForReindexIndex(const RangeVar *relation, */ bool CheckIndexCompatible(Oid oldId, - char *accessMethodName, + const char *accessMethodName, List *attributeList, List *exclusionOpNames) { @@ -1011,7 +1011,7 @@ ComputeIndexAttrs(IndexInfo *indexInfo, List *attList, /* list of IndexElem's */ List *exclusionOpNames, Oid relId, - char *accessMethodName, + const char *accessMethodName, Oid accessMethodId, bool amcanorder, bool isconstraint) @@ -1277,7 +1277,7 @@ ComputeIndexAttrs(IndexInfo *indexInfo, */ Oid ResolveOpClass(List *opclass, Oid attrType, - char *accessMethodName, Oid accessMethodId) + const char *accessMethodName, Oid accessMethodId) { char *schemaname; char *opcname; diff --git a/src/backend/commands/opclasscmds.c b/src/backend/commands/opclasscmds.c index d23e6d6f25..1641e68abe 100644 --- a/src/backend/commands/opclasscmds.c +++ b/src/backend/commands/opclasscmds.c @@ -239,7 +239,7 @@ get_opclass_oid(Oid amID, List *opclassname, bool missing_ok) * Caller must have done permissions checks etc. already. */ static ObjectAddress -CreateOpFamily(char *amname, char *opfname, Oid namespaceoid, Oid amoid) +CreateOpFamily(const char *amname, const char *opfname, Oid namespaceoid, Oid amoid) { Oid opfamilyoid; Relation rel; diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c index c902293741..fb1254e48e 100644 --- a/src/backend/commands/tablecmds.c +++ b/src/backend/commands/tablecmds.c @@ -426,7 +426,7 @@ static void ATPostAlterTypeParse(Oid oldId, Oid oldRelId, Oid refRelId, bool rewrite); static void RebuildConstraintComment(AlteredTableInfo *tab, int pass, Oid objid, Relation rel, List *domname, - char *conname); + const char *conname); static void TryReuseIndex(Oid oldId, IndexStmt *stmt); static void TryReuseForeignKey(Oid oldId, Constraint *con); static void change_owner_fix_column_acls(Oid relationOid, @@ -438,14 +438,14 @@ static ObjectAddress ATExecClusterOn(Relation rel, const char *indexName, static void ATExecDropCluster(Relation rel, LOCKMODE lockmode); static bool ATPrepChangePersistence(Relation rel, bool toLogged); static void ATPrepSetTableSpace(AlteredTableInfo *tab, Relation rel, - char *tablespacename, LOCKMODE lockmode); + const char *tablespacename, LOCKMODE lockmode); static void ATExecSetTableSpace(Oid tableOid, Oid newTableSpace, LOCKMODE lockmode); static void ATExecSetRelOptions(Relation rel, List *defList, AlterTableType operation, LOCKMODE lockmode); -static void ATExecEnableDisableTrigger(Relation rel, char *trigname, +static void ATExecEnableDisableTrigger(Relation rel, const char *trigname, char fires_when, bool skip_system, LOCKMODE lockmode); -static void ATExecEnableDisableRule(Relation rel, char *rulename, +static void ATExecEnableDisableRule(Relation rel, const char *rulename, char fires_when, LOCKMODE lockmode); static void ATPrepAddInherit(Relation child_rel); static ObjectAddress ATExecAddInherit(Relation child_rel, RangeVar *parent, LOCKMODE lockmode); @@ -9873,7 +9873,7 @@ ATPostAlterTypeParse(Oid oldId, Oid oldRelId, Oid refRelId, char *cmd, static void RebuildConstraintComment(AlteredTableInfo *tab, int pass, Oid objid, Relation rel, List *domname, - char *conname) + const char *conname) { CommentStmt *cmd; char *comment_str; @@ -10393,7 +10393,7 @@ ATExecDropCluster(Relation rel, LOCKMODE lockmode) * ALTER TABLE SET TABLESPACE */ static void -ATPrepSetTableSpace(AlteredTableInfo *tab, Relation rel, char *tablespacename, LOCKMODE lockmode) +ATPrepSetTableSpace(AlteredTableInfo *tab, Relation rel, const char *tablespacename, LOCKMODE lockmode) { Oid tablespaceId; @@ -11060,7 +11060,7 @@ copy_relation_data(SMgrRelation src, SMgrRelation dst, * We just pass this off to trigger.c. */ static void -ATExecEnableDisableTrigger(Relation rel, char *trigname, +ATExecEnableDisableTrigger(Relation rel, const char *trigname, char fires_when, bool skip_system, LOCKMODE lockmode) { EnableDisableTrigger(rel, trigname, fires_when, skip_system); @@ -11072,7 +11072,7 @@ ATExecEnableDisableTrigger(Relation rel, char *trigname, * We just pass this off to rewriteDefine.c. */ static void -ATExecEnableDisableRule(Relation rel, char *rulename, +ATExecEnableDisableRule(Relation rel, const char *rulename, char fires_when, LOCKMODE lockmode) { EnableDisableRule(rel, rulename, fires_when); diff --git a/src/backend/commands/typecmds.c b/src/backend/commands/typecmds.c index 7df942b18b..bbfd4b9014 100644 --- a/src/backend/commands/typecmds.c +++ b/src/backend/commands/typecmds.c @@ -103,7 +103,7 @@ static void checkEnumOwner(HeapTuple tup); static char *domainAddConstraint(Oid domainOid, Oid domainNamespace, Oid baseTypeOid, int typMod, Constraint *constr, - char *domainName, ObjectAddress *constrAddr); + const char *domainName, ObjectAddress *constrAddr); static Node *replace_domain_constraint_value(ParseState *pstate, ColumnRef *cref); @@ -2649,7 +2649,7 @@ AlterDomainAddConstraint(List *names, Node *newConstraint, * Implements the ALTER DOMAIN .. VALIDATE CONSTRAINT statement. */ ObjectAddress -AlterDomainValidateConstraint(List *names, char *constrName) +AlterDomainValidateConstraint(List *names, const char *constrName) { TypeName *typename; Oid domainoid; @@ -3060,7 +3060,7 @@ checkDomainOwner(HeapTuple tup) static char * domainAddConstraint(Oid domainOid, Oid domainNamespace, Oid baseTypeOid, int typMod, Constraint *constr, - char *domainName, ObjectAddress *constrAddr) + const char *domainName, ObjectAddress *constrAddr) { Node *expr; char *ccsrc; diff --git a/src/backend/commands/view.c b/src/backend/commands/view.c index 076e2a3a40..c1e80e61d4 100644 --- a/src/backend/commands/view.c +++ b/src/backend/commands/view.c @@ -43,7 +43,7 @@ static void checkViewTupleDesc(TupleDesc newdesc, TupleDesc olddesc); * are "local" and "cascaded". */ void -validateWithCheckOption(char *value) +validateWithCheckOption(const char *value) { if (value == NULL || (pg_strcasecmp(value, "local") != 0 && diff --git a/src/backend/libpq/auth.c b/src/backend/libpq/auth.c index ab74fd8dfd..6505b1f2b9 100644 --- a/src/backend/libpq/auth.c +++ b/src/backend/libpq/auth.c @@ -43,7 +43,7 @@ * Global authentication functions *---------------------------------------------------------------- */ -static void sendAuthRequest(Port *port, AuthRequest areq, char *extradata, +static void sendAuthRequest(Port *port, AuthRequest areq, const char *extradata, int extralen); static void auth_failed(Port *port, int status, char *logdetail); static char *recv_password_packet(Port *port); @@ -91,7 +91,7 @@ static int auth_peer(hbaPort *port); #define PGSQL_PAM_SERVICE "postgresql" /* Service name passed to PAM */ -static int CheckPAMAuth(Port *port, char *user, char *password); +static int CheckPAMAuth(Port *port, const char *user, const char *password); static int pam_passwd_conv_proc(int num_msg, const struct pam_message **msg, struct pam_response **resp, void *appdata_ptr); @@ -100,7 +100,7 @@ static struct pam_conv pam_passw_conv = { NULL }; -static char *pam_passwd = NULL; /* Workaround for Solaris 2.6 brokenness */ +static const char *pam_passwd = NULL; /* Workaround for Solaris 2.6 brokenness */ static Port *pam_port_cludge; /* Workaround for passing "Port *port" into * pam_passwd_conv_proc */ #endif /* USE_PAM */ @@ -202,7 +202,7 @@ static int pg_SSPI_make_upn(char *accountname, *---------------------------------------------------------------- */ static int CheckRADIUSAuth(Port *port); -static int PerformRadiusTransaction(char *server, char *secret, char *portstr, char *identifier, char *user_name, char *passwd); +static int PerformRadiusTransaction(const char *server, const char *secret, const char *portstr, const char *identifier, const char *user_name, const char *passwd); /* @@ -612,7 +612,7 @@ ClientAuthentication(Port *port) * Send an authentication request packet to the frontend. */ static void -sendAuthRequest(Port *port, AuthRequest areq, char *extradata, int extralen) +sendAuthRequest(Port *port, AuthRequest areq, const char *extradata, int extralen) { StringInfoData buf; @@ -1040,7 +1040,7 @@ static GSS_DLLIMP gss_OID GSS_C_NT_USER_NAME = &GSS_C_NT_USER_NAME_desc; static void -pg_GSS_error(int severity, char *errmsg, OM_uint32 maj_stat, OM_uint32 min_stat) +pg_GSS_error(int severity, const char *errmsg, OM_uint32 maj_stat, OM_uint32 min_stat) { gss_buffer_desc gmsg; OM_uint32 lmin_s, @@ -2051,7 +2051,7 @@ static int pam_passwd_conv_proc(int num_msg, const struct pam_message **msg, struct pam_response **resp, void *appdata_ptr) { - char *passwd; + const char *passwd; struct pam_response *reply; int i; @@ -2149,7 +2149,7 @@ pam_passwd_conv_proc(int num_msg, const struct pam_message **msg, * Check authentication against PAM. */ static int -CheckPAMAuth(Port *port, char *user, char *password) +CheckPAMAuth(Port *port, const char *user, const char *password) { int retval; pam_handle_t *pamh = NULL; @@ -2874,7 +2874,7 @@ CheckRADIUSAuth(Port *port) } static int -PerformRadiusTransaction(char *server, char *secret, char *portstr, char *identifier, char *user_name, char *passwd) +PerformRadiusTransaction(const char *server, const char *secret, const char *portstr, const char *identifier, const char *user_name, const char *passwd) { radius_packet radius_send_pack; radius_packet radius_recv_pack; @@ -2941,9 +2941,9 @@ PerformRadiusTransaction(char *server, char *secret, char *portstr, char *identi return STATUS_ERROR; } packet->id = packet->vector[0]; - radius_add_attribute(packet, RADIUS_SERVICE_TYPE, (unsigned char *) &service, sizeof(service)); - radius_add_attribute(packet, RADIUS_USER_NAME, (unsigned char *) user_name, strlen(user_name)); - radius_add_attribute(packet, RADIUS_NAS_IDENTIFIER, (unsigned char *) identifier, strlen(identifier)); + radius_add_attribute(packet, RADIUS_SERVICE_TYPE, (const unsigned char *) &service, sizeof(service)); + radius_add_attribute(packet, RADIUS_USER_NAME, (const unsigned char *) user_name, strlen(user_name)); + radius_add_attribute(packet, RADIUS_NAS_IDENTIFIER, (const unsigned char *) identifier, strlen(identifier)); /* * RADIUS password attributes are calculated as: e[0] = p[0] XOR diff --git a/src/backend/libpq/hba.c b/src/backend/libpq/hba.c index b2c487a8e8..fcbe708d43 100644 --- a/src/backend/libpq/hba.c +++ b/src/backend/libpq/hba.c @@ -144,8 +144,8 @@ static List *tokenize_inc_file(List *tokens, const char *outer_filename, const char *inc_filename, int elevel, char **err_msg); static bool parse_hba_auth_opt(char *name, char *val, HbaLine *hbaline, int elevel, char **err_msg); -static bool verify_option_list_length(List *options, char *optionname, - List *masters, char *mastername, int line_num); +static bool verify_option_list_length(List *options, const char *optionname, + List *masters, const char *mastername, int line_num); static ArrayType *gethba_options(HbaLine *hba); static void fill_hba_line(Tuplestorestate *tuple_store, TupleDesc tupdesc, int lineno, HbaLine *hba, const char *err_msg); @@ -1617,7 +1617,7 @@ parse_hba_line(TokenizedLine *tok_line, int elevel) static bool -verify_option_list_length(List *options, char *optionname, List *masters, char *mastername, int line_num) +verify_option_list_length(List *options, const char *optionname, List *masters, const char *mastername, int line_num) { if (list_length(options) == 0 || list_length(options) == 1 || diff --git a/src/backend/parser/parse_expr.c b/src/backend/parser/parse_expr.c index 1aaa5244e6..86d1da0677 100644 --- a/src/backend/parser/parse_expr.c +++ b/src/backend/parser/parse_expr.c @@ -386,7 +386,7 @@ transformExprRecurse(ParseState *pstate, Node *expr) * selection from an arbitrary node needs it.) */ static void -unknown_attribute(ParseState *pstate, Node *relref, char *attname, +unknown_attribute(ParseState *pstate, Node *relref, const char *attname, int location) { RangeTblEntry *rte; diff --git a/src/backend/parser/parse_func.c b/src/backend/parser/parse_func.c index fc0d6bc2f2..a11843332b 100644 --- a/src/backend/parser/parse_func.c +++ b/src/backend/parser/parse_func.c @@ -39,7 +39,7 @@ static void unify_hypothetical_args(ParseState *pstate, List *fargs, int numAggregatedArgs, Oid *actual_arg_types, Oid *declared_arg_types); static Oid FuncNameAsType(List *funcname); -static Node *ParseComplexProjection(ParseState *pstate, char *funcname, +static Node *ParseComplexProjection(ParseState *pstate, const char *funcname, Node *first_arg, int location); @@ -1790,7 +1790,7 @@ FuncNameAsType(List *funcname) * transformed expression tree. If not, return NULL. */ static Node * -ParseComplexProjection(ParseState *pstate, char *funcname, Node *first_arg, +ParseComplexProjection(ParseState *pstate, const char *funcname, Node *first_arg, int location) { TupleDesc tupdesc; diff --git a/src/backend/parser/parse_relation.c b/src/backend/parser/parse_relation.c index 6acc21dfe6..5233ec11cc 100644 --- a/src/backend/parser/parse_relation.c +++ b/src/backend/parser/parse_relation.c @@ -652,7 +652,7 @@ updateFuzzyAttrMatchState(int fuzzy_rte_penalty, * for an approximate match and update fuzzystate accordingly. */ Node * -scanRTEForColumn(ParseState *pstate, RangeTblEntry *rte, char *colname, +scanRTEForColumn(ParseState *pstate, RangeTblEntry *rte, const char *colname, int location, int fuzzy_rte_penalty, FuzzyAttrMatchState *fuzzystate) { @@ -754,7 +754,7 @@ scanRTEForColumn(ParseState *pstate, RangeTblEntry *rte, char *colname, * If localonly is true, only names in the innermost query are considered. */ Node * -colNameToVar(ParseState *pstate, char *colname, bool localonly, +colNameToVar(ParseState *pstate, const char *colname, bool localonly, int location) { Node *result = NULL; @@ -828,7 +828,7 @@ colNameToVar(ParseState *pstate, char *colname, bool localonly, * and 'second' will contain the attribute number for the second match. */ static FuzzyAttrMatchState * -searchRangeTableForCol(ParseState *pstate, const char *alias, char *colname, +searchRangeTableForCol(ParseState *pstate, const char *alias, const char *colname, int location) { ParseState *orig_pstate = pstate; @@ -3248,7 +3248,7 @@ errorMissingRTE(ParseState *pstate, RangeVar *relation) */ void errorMissingColumn(ParseState *pstate, - char *relname, char *colname, int location) + const char *relname, const char *colname, int location) { FuzzyAttrMatchState *state; char *closestfirst = NULL; diff --git a/src/backend/parser/parse_target.c b/src/backend/parser/parse_target.c index 01fd726a3d..21593b249f 100644 --- a/src/backend/parser/parse_target.c +++ b/src/backend/parser/parse_target.c @@ -455,7 +455,7 @@ Expr * transformAssignedExpr(ParseState *pstate, Expr *expr, ParseExprKind exprKind, - char *colname, + const char *colname, int attrno, List *indirection, int location) diff --git a/src/backend/port/dynloader/darwin.c b/src/backend/port/dynloader/darwin.c index f8fdeaf122..0a54ce907c 100644 --- a/src/backend/port/dynloader/darwin.c +++ b/src/backend/port/dynloader/darwin.c @@ -20,7 +20,7 @@ #ifdef HAVE_DLOPEN void * -pg_dlopen(char *filename) +pg_dlopen(const char *filename) { return dlopen(filename, RTLD_NOW | RTLD_GLOBAL); } @@ -32,7 +32,7 @@ pg_dlclose(void *handle) } PGFunction -pg_dlsym(void *handle, char *funcname) +pg_dlsym(void *handle, const char *funcname) { /* Do not prepend an underscore: see dlopen(3) */ return dlsym(handle, funcname); @@ -54,7 +54,7 @@ pg_dlerror(void) static NSObjectFileImageReturnCode cofiff_result = NSObjectFileImageFailure; void * -pg_dlopen(char *filename) +pg_dlopen(const char *filename) { NSObjectFileImage image; @@ -73,7 +73,7 @@ pg_dlclose(void *handle) } PGFunction -pg_dlsym(void *handle, char *funcname) +pg_dlsym(void *handle, const char *funcname) { NSSymbol symbol; char *symname = (char *) malloc(strlen(funcname) + 2); diff --git a/src/backend/port/dynloader/darwin.h b/src/backend/port/dynloader/darwin.h index 44a3bd6b82..292a31de13 100644 --- a/src/backend/port/dynloader/darwin.h +++ b/src/backend/port/dynloader/darwin.h @@ -2,7 +2,7 @@ #include "fmgr.h" -void *pg_dlopen(char *filename); -PGFunction pg_dlsym(void *handle, char *funcname); +void *pg_dlopen(const char *filename); +PGFunction pg_dlsym(void *handle, const char *funcname); void pg_dlclose(void *handle); char *pg_dlerror(void); diff --git a/src/backend/port/dynloader/hpux.c b/src/backend/port/dynloader/hpux.c index 5a0e40146d..5ab24f8fd9 100644 --- a/src/backend/port/dynloader/hpux.c +++ b/src/backend/port/dynloader/hpux.c @@ -26,7 +26,7 @@ #include "utils/dynamic_loader.h" void * -pg_dlopen(char *filename) +pg_dlopen(const char *filename) { /* * Use BIND_IMMEDIATE so that undefined symbols cause a failure return @@ -41,7 +41,7 @@ pg_dlopen(char *filename) } PGFunction -pg_dlsym(void *handle, char *funcname) +pg_dlsym(void *handle, const char *funcname) { PGFunction f; diff --git a/src/backend/port/dynloader/hpux.h b/src/backend/port/dynloader/hpux.h index 0a17454f2b..6c1b367e97 100644 --- a/src/backend/port/dynloader/hpux.h +++ b/src/backend/port/dynloader/hpux.h @@ -19,7 +19,7 @@ /* System includes */ #include "fmgr.h" -extern void *pg_dlopen(char *filename); -extern PGFunction pg_dlsym(void *handle, char *funcname); +extern void *pg_dlopen(const char *filename); +extern PGFunction pg_dlsym(void *handle, const char *funcname); extern void pg_dlclose(void *handle); extern char *pg_dlerror(void); diff --git a/src/backend/port/dynloader/linux.c b/src/backend/port/dynloader/linux.c index 38e19f7484..375ade32e5 100644 --- a/src/backend/port/dynloader/linux.c +++ b/src/backend/port/dynloader/linux.c @@ -29,7 +29,7 @@ #ifndef HAVE_DLOPEN void * -pg_dlopen(char *filename) +pg_dlopen(const char *filename) { #ifndef HAVE_DLD_H elog(ERROR, "dynamic load not supported"); @@ -101,7 +101,7 @@ pg_dlopen(char *filename) } PGFunction -pg_dlsym(void *handle, char *funcname) +pg_dlsym(void *handle, const char *funcname) { #ifndef HAVE_DLD_H return NULL; diff --git a/src/backend/postmaster/postmaster.c b/src/backend/postmaster/postmaster.c index 2b2b993e2c..9906a85bc0 100644 --- a/src/backend/postmaster/postmaster.c +++ b/src/backend/postmaster/postmaster.c @@ -5537,7 +5537,7 @@ MaxLivePostmasterChildren(void) * Connect background worker to a database. */ void -BackgroundWorkerInitializeConnection(char *dbname, char *username) +BackgroundWorkerInitializeConnection(const char *dbname, const char *username) { BackgroundWorker *worker = MyBgworkerEntry; diff --git a/src/backend/replication/basebackup.c b/src/backend/replication/basebackup.c index 75029b0def..eb159f7d3a 100644 --- a/src/backend/replication/basebackup.c +++ b/src/backend/replication/basebackup.c @@ -51,9 +51,9 @@ typedef struct } basebackup_options; -static int64 sendDir(char *path, int basepathlen, bool sizeonly, +static int64 sendDir(const char *path, int basepathlen, bool sizeonly, List *tablespaces, bool sendtblspclinks); -static bool sendFile(char *readfilename, char *tarfilename, +static bool sendFile(const char *readfilename, const char *tarfilename, struct stat *statbuf, bool missing_ok); static void sendFileWithContent(const char *filename, const char *content); static int64 _tarWriteHeader(const char *filename, const char *linktarget, @@ -958,7 +958,7 @@ sendTablespace(char *path, bool sizeonly) * as it will be sent separately in the tablespace_map file. */ static int64 -sendDir(char *path, int basepathlen, bool sizeonly, List *tablespaces, +sendDir(const char *path, int basepathlen, bool sizeonly, List *tablespaces, bool sendtblspclinks) { DIR *dir; @@ -1203,7 +1203,7 @@ sendDir(char *path, int basepathlen, bool sizeonly, List *tablespaces, * and the file did not exist. */ static bool -sendFile(char *readfilename, char *tarfilename, struct stat *statbuf, +sendFile(const char *readfilename, const char *tarfilename, struct stat *statbuf, bool missing_ok) { FILE *fp; diff --git a/src/backend/rewrite/rewriteDefine.c b/src/backend/rewrite/rewriteDefine.c index 071b3a9ec9..d5aecfe165 100644 --- a/src/backend/rewrite/rewriteDefine.c +++ b/src/backend/rewrite/rewriteDefine.c @@ -56,7 +56,7 @@ static void setRuleCheckAsUser_Query(Query *qry, Oid userid); * relation "pg_rewrite" */ static Oid -InsertRule(char *rulname, +InsertRule(const char *rulname, int evtype, Oid eventrel_oid, bool evinstead, @@ -225,7 +225,7 @@ DefineRule(RuleStmt *stmt, const char *queryString) * action and qual have already been passed through parse analysis. */ ObjectAddress -DefineQueryRewrite(char *rulename, +DefineQueryRewrite(const char *rulename, Oid event_relid, Node *event_qual, CmdType event_type, diff --git a/src/backend/snowball/dict_snowball.c b/src/backend/snowball/dict_snowball.c index 7cf668de19..42384b42b1 100644 --- a/src/backend/snowball/dict_snowball.c +++ b/src/backend/snowball/dict_snowball.c @@ -138,7 +138,7 @@ typedef struct DictSnowball static void -locate_stem_module(DictSnowball *d, char *lang) +locate_stem_module(DictSnowball *d, const char *lang) { const stemmer_module *m; diff --git a/src/backend/storage/lmgr/lwlock.c b/src/backend/storage/lmgr/lwlock.c index f1060f9675..227ab69cba 100644 --- a/src/backend/storage/lmgr/lwlock.c +++ b/src/backend/storage/lmgr/lwlock.c @@ -111,7 +111,7 @@ extern slock_t *ShmemLock; * This is indexed by tranche ID and stores the names of all tranches known * to the current backend. */ -static char **LWLockTrancheArray = NULL; +static const char **LWLockTrancheArray = NULL; static int LWLockTranchesAllocated = 0; #define T_NAME(lock) \ @@ -495,7 +495,7 @@ RegisterLWLockTranches(void) if (LWLockTrancheArray == NULL) { LWLockTranchesAllocated = 128; - LWLockTrancheArray = (char **) + LWLockTrancheArray = (const char **) MemoryContextAllocZero(TopMemoryContext, LWLockTranchesAllocated * sizeof(char *)); Assert(LWLockTranchesAllocated >= LWTRANCHE_FIRST_USER_DEFINED); @@ -595,7 +595,7 @@ LWLockNewTrancheId(void) * (TopMemoryContext, static variable, or similar). */ void -LWLockRegisterTranche(int tranche_id, char *tranche_name) +LWLockRegisterTranche(int tranche_id, const char *tranche_name) { Assert(LWLockTrancheArray != NULL); @@ -607,7 +607,7 @@ LWLockRegisterTranche(int tranche_id, char *tranche_name) while (i <= tranche_id) i *= 2; - LWLockTrancheArray = (char **) + LWLockTrancheArray = (const char **) repalloc(LWLockTrancheArray, i * sizeof(char *)); LWLockTranchesAllocated = i; while (j < LWLockTranchesAllocated) diff --git a/src/backend/tsearch/dict_thesaurus.c b/src/backend/tsearch/dict_thesaurus.c index 1b6085add3..2a458db691 100644 --- a/src/backend/tsearch/dict_thesaurus.c +++ b/src/backend/tsearch/dict_thesaurus.c @@ -165,7 +165,7 @@ addWrd(DictThesaurus *d, char *b, char *e, uint32 idsubst, uint16 nwrd, uint16 p #define TR_INSUBS 4 static void -thesaurusRead(char *filename, DictThesaurus *d) +thesaurusRead(const char *filename, DictThesaurus *d) { tsearch_readline_state trst; uint32 idsubst = 0; diff --git a/src/backend/tsearch/spell.c b/src/backend/tsearch/spell.c index 6527c73731..976451a1ee 100644 --- a/src/backend/tsearch/spell.c +++ b/src/backend/tsearch/spell.c @@ -450,7 +450,7 @@ getNextFlagFromString(IspellDict *Conf, char **sflagset, char *sflag) * otherwise returns false. */ static bool -IsAffixFlagInUse(IspellDict *Conf, int affix, char *affixflag) +IsAffixFlagInUse(IspellDict *Conf, int affix, const char *affixflag) { char *flagcur; char flag[BUFSIZ]; @@ -596,7 +596,7 @@ NIImportDictionary(IspellDict *Conf, const char *filename) * Returns 1 if the word was found in the prefix tree, else returns 0. */ static int -FindWord(IspellDict *Conf, const char *word, char *affixflag, int flag) +FindWord(IspellDict *Conf, const char *word, const char *affixflag, int flag) { SPNode *node = Conf->Dictionary; SPNodeData *StopLow, diff --git a/src/backend/utils/adt/genfile.c b/src/backend/utils/adt/genfile.c index 5285aa54f1..b3b9fc522d 100644 --- a/src/backend/utils/adt/genfile.c +++ b/src/backend/utils/adt/genfile.c @@ -477,7 +477,7 @@ pg_ls_dir_1arg(PG_FUNCTION_ARGS) /* Generic function to return a directory listing of files */ static Datum -pg_ls_dir_files(FunctionCallInfo fcinfo, char *dir) +pg_ls_dir_files(FunctionCallInfo fcinfo, const char *dir) { FuncCallContext *funcctx; struct dirent *de; diff --git a/src/backend/utils/adt/ruleutils.c b/src/backend/utils/adt/ruleutils.c index cc6cec7877..1fec59002c 100644 --- a/src/backend/utils/adt/ruleutils.c +++ b/src/backend/utils/adt/ruleutils.c @@ -343,7 +343,7 @@ static void set_relation_column_names(deparse_namespace *dpns, deparse_columns *colinfo); static void set_join_column_names(deparse_namespace *dpns, RangeTblEntry *rte, deparse_columns *colinfo); -static bool colname_is_unique(char *colname, deparse_namespace *dpns, +static bool colname_is_unique(const char *colname, deparse_namespace *dpns, deparse_columns *colinfo); static char *make_colname_unique(char *colname, deparse_namespace *dpns, deparse_columns *colinfo); @@ -4113,7 +4113,7 @@ set_join_column_names(deparse_namespace *dpns, RangeTblEntry *rte, * dpns is query-wide info, colinfo is for the column's RTE */ static bool -colname_is_unique(char *colname, deparse_namespace *dpns, +colname_is_unique(const char *colname, deparse_namespace *dpns, deparse_columns *colinfo) { int i; diff --git a/src/backend/utils/adt/varlena.c b/src/backend/utils/adt/varlena.c index 4b5483dbb9..9e62c248a1 100644 --- a/src/backend/utils/adt/varlena.c +++ b/src/backend/utils/adt/varlena.c @@ -1379,7 +1379,7 @@ text_position_cleanup(TextPositionState *state) * whether arg1 is less than, equal to, or greater than arg2. */ int -varstr_cmp(char *arg1, int len1, char *arg2, int len2, Oid collid) +varstr_cmp(const char *arg1, int len1, const char *arg2, int len2, Oid collid) { int result; diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c index 24229c2dff..88d54d4796 100644 --- a/src/backend/utils/adt/xml.c +++ b/src/backend/utils/adt/xml.c @@ -146,7 +146,7 @@ static text *xml_xmlnodetoxmltype(xmlNodePtr cur, PgXmlErrorContext *xmlerrcxt); static int xml_xpathobjtoxmlarray(xmlXPathObjectPtr xpathobj, ArrayBuildState *astate, PgXmlErrorContext *xmlerrcxt); -static xmlChar *pg_xmlCharStrndup(char *str, size_t len); +static xmlChar *pg_xmlCharStrndup(const char *str, size_t len); #endif /* USE_LIBXML */ static void xmldata_root_element_start(StringInfo result, const char *eltname, @@ -192,11 +192,11 @@ typedef struct XmlTableBuilderData static void XmlTableInitOpaque(struct TableFuncScanState *state, int natts); static void XmlTableSetDocument(struct TableFuncScanState *state, Datum value); -static void XmlTableSetNamespace(struct TableFuncScanState *state, char *name, - char *uri); -static void XmlTableSetRowFilter(struct TableFuncScanState *state, char *path); +static void XmlTableSetNamespace(struct TableFuncScanState *state, const char *name, + const char *uri); +static void XmlTableSetRowFilter(struct TableFuncScanState *state, const char *path); static void XmlTableSetColumnFilter(struct TableFuncScanState *state, - char *path, int colnum); + const char *path, int colnum); static bool XmlTableFetchRow(struct TableFuncScanState *state); static Datum XmlTableGetValue(struct TableFuncScanState *state, int colnum, Oid typid, int32 typmod, bool *isnull); @@ -765,7 +765,7 @@ xmlparse(text *data, XmlOptionType xmloption_arg, bool preserve_whitespace) xmltype * -xmlpi(char *target, text *arg, bool arg_is_null, bool *result_is_null) +xmlpi(const char *target, text *arg, bool arg_is_null, bool *result_is_null) { #ifdef USE_LIBXML xmltype *result; @@ -1164,7 +1164,7 @@ xml_pnstrdup(const xmlChar *str, size_t len) /* Ditto, except input is char* */ static xmlChar * -pg_xmlCharStrndup(char *str, size_t len) +pg_xmlCharStrndup(const char *str, size_t len) { xmlChar *result; @@ -1850,7 +1850,7 @@ appendStringInfoLineSeparator(StringInfo str) * Convert one char in the current server encoding to a Unicode codepoint. */ static pg_wchar -sqlchar_to_unicode(char *s) +sqlchar_to_unicode(const char *s) { char *utf8string; pg_wchar ret[2]; /* need space for trailing zero */ @@ -1894,12 +1894,12 @@ is_valid_xml_namechar(pg_wchar c) * Map SQL identifier to XML name; see SQL/XML:2008 section 9.1. */ char * -map_sql_identifier_to_xml_name(char *ident, bool fully_escaped, +map_sql_identifier_to_xml_name(const char *ident, bool fully_escaped, bool escape_period) { #ifdef USE_LIBXML StringInfoData buf; - char *p; + const char *p; /* * SQL/XML doesn't make use of this case anywhere, so it's probably a @@ -1970,10 +1970,10 @@ unicode_to_sqlchar(pg_wchar c) * Map XML name to SQL identifier; see SQL/XML:2008 section 9.3. */ char * -map_xml_name_to_sql_identifier(char *name) +map_xml_name_to_sql_identifier(const char *name) { StringInfoData buf; - char *p; + const char *p; initStringInfo(&buf); @@ -3009,7 +3009,7 @@ database_to_xml_and_xmlschema(PG_FUNCTION_ARGS) * 9.2. */ static char * -map_multipart_sql_identifier_to_xml_name(char *a, char *b, char *c, char *d) +map_multipart_sql_identifier_to_xml_name(const char *a, const char *b, const char *c, const char *d) { StringInfoData result; @@ -4292,7 +4292,7 @@ XmlTableSetDocument(TableFuncScanState *state, Datum value) * Add a namespace declaration */ static void -XmlTableSetNamespace(TableFuncScanState *state, char *name, char *uri) +XmlTableSetNamespace(TableFuncScanState *state, const char *name, const char *uri) { #ifdef USE_LIBXML XmlTableBuilderData *xtCxt; @@ -4318,7 +4318,7 @@ XmlTableSetNamespace(TableFuncScanState *state, char *name, char *uri) * Install the row-filter Xpath expression. */ static void -XmlTableSetRowFilter(TableFuncScanState *state, char *path) +XmlTableSetRowFilter(TableFuncScanState *state, const char *path) { #ifdef USE_LIBXML XmlTableBuilderData *xtCxt; @@ -4347,7 +4347,7 @@ XmlTableSetRowFilter(TableFuncScanState *state, char *path) * Install the column-filter Xpath expression, for the given column. */ static void -XmlTableSetColumnFilter(TableFuncScanState *state, char *path, int colnum) +XmlTableSetColumnFilter(TableFuncScanState *state, const char *path, int colnum) { #ifdef USE_LIBXML XmlTableBuilderData *xtCxt; diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 27fcf5a87f..bb2bc065ef 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -239,10 +239,10 @@ static void writefile(char *path, char **lines); static FILE *popen_check(const char *command, const char *mode); static void exit_nicely(void); static char *get_id(void); -static int get_encoding_id(char *encoding_name); -static void set_input(char **dest, char *filename); +static int get_encoding_id(const char *encoding_name); +static void set_input(char **dest, const char *filename); static void check_input(char *path); -static void write_version_file(char *extrapath); +static void write_version_file(const char *extrapath); static void set_null_conf(void); static void test_config_settings(void); static void setup_config(void); @@ -640,7 +640,7 @@ encodingid_to_string(int enc) * get the encoding id for a given encoding name */ static int -get_encoding_id(char *encoding_name) +get_encoding_id(const char *encoding_name) { int enc; @@ -751,7 +751,7 @@ find_matching_ts_config(const char *lc_type) * set name of given input file variable under data directory */ static void -set_input(char **dest, char *filename) +set_input(char **dest, const char *filename) { *dest = psprintf("%s/%s", share_path, filename); } @@ -801,7 +801,7 @@ check_input(char *path) * if extrapath is not NULL */ static void -write_version_file(char *extrapath) +write_version_file(const char *extrapath) { FILE *version_file; char *path; diff --git a/src/bin/pg_dump/pg_backup_db.c b/src/bin/pg_dump/pg_backup_db.c index befcde4630..216853d627 100644 --- a/src/bin/pg_dump/pg_backup_db.c +++ b/src/bin/pg_dump/pg_backup_db.c @@ -419,7 +419,7 @@ ExecuteSqlQuery(Archive *AHX, const char *query, ExecStatusType status) * Execute an SQL query and verify that we got exactly one row back. */ PGresult * -ExecuteSqlQueryForSingleRow(Archive *fout, char *query) +ExecuteSqlQueryForSingleRow(Archive *fout, const char *query) { PGresult *res; int ntups; diff --git a/src/bin/pg_dump/pg_backup_db.h b/src/bin/pg_dump/pg_backup_db.h index 527449e044..a79f5283fe 100644 --- a/src/bin/pg_dump/pg_backup_db.h +++ b/src/bin/pg_dump/pg_backup_db.h @@ -16,7 +16,7 @@ extern int ExecuteSqlCommandBuf(Archive *AHX, const char *buf, size_t bufLen); extern void ExecuteSqlStatement(Archive *AHX, const char *query); extern PGresult *ExecuteSqlQuery(Archive *AHX, const char *query, ExecStatusType status); -extern PGresult *ExecuteSqlQueryForSingleRow(Archive *fout, char *query); +extern PGresult *ExecuteSqlQueryForSingleRow(Archive *fout, const char *query); extern void EndDBCopyMode(Archive *AHX, const char *tocEntryTag); diff --git a/src/bin/pg_rewind/fetch.c b/src/bin/pg_rewind/fetch.c index e9353d8866..13553e3b5a 100644 --- a/src/bin/pg_rewind/fetch.c +++ b/src/bin/pg_rewind/fetch.c @@ -51,7 +51,7 @@ executeFileMap(void) * handy for text files. */ char * -fetchFile(char *filename, size_t *filesize) +fetchFile(const char *filename, size_t *filesize) { if (datadir_source) return slurpFile(datadir_source, filename, filesize); diff --git a/src/bin/pg_rewind/fetch.h b/src/bin/pg_rewind/fetch.h index 1e08f76b3e..7288120a0b 100644 --- a/src/bin/pg_rewind/fetch.h +++ b/src/bin/pg_rewind/fetch.h @@ -24,7 +24,7 @@ * config options. */ extern void fetchSourceFileList(void); -extern char *fetchFile(char *filename, size_t *filesize); +extern char *fetchFile(const char *filename, size_t *filesize); extern void executeFileMap(void); /* in libpq_fetch.c */ diff --git a/src/bin/pg_upgrade/option.c b/src/bin/pg_upgrade/option.c index c74eb25e18..f7f2ebdacf 100644 --- a/src/bin/pg_upgrade/option.c +++ b/src/bin/pg_upgrade/option.c @@ -22,7 +22,7 @@ static void usage(void); static void check_required_directory(char **dirpath, char **configpath, - char *envVarName, char *cmdLineOption, char *description); + const char *envVarName, const char *cmdLineOption, const char *description); #define FIX_DEFAULT_READ_ONLY "-c default_transaction_read_only=false" @@ -341,8 +341,8 @@ usage(void) */ static void check_required_directory(char **dirpath, char **configpath, - char *envVarName, char *cmdLineOption, - char *description) + const char *envVarName, const char *cmdLineOption, + const char *description) { if (*dirpath == NULL || strlen(*dirpath) == 0) { diff --git a/src/bin/pg_upgrade/pg_upgrade.c b/src/bin/pg_upgrade/pg_upgrade.c index d44fefb457..c10103f0bf 100644 --- a/src/bin/pg_upgrade/pg_upgrade.c +++ b/src/bin/pg_upgrade/pg_upgrade.c @@ -363,7 +363,7 @@ create_new_objects(void) * Delete the given subdirectory contents from the new cluster */ static void -remove_new_subdir(char *subdir, bool rmtopdir) +remove_new_subdir(const char *subdir, bool rmtopdir) { char new_path[MAXPGPATH]; @@ -380,7 +380,7 @@ remove_new_subdir(char *subdir, bool rmtopdir) * Copy the files from the old cluster into it */ static void -copy_subdir_files(char *old_subdir, char *new_subdir) +copy_subdir_files(const char *old_subdir, const char *new_subdir) { char old_path[MAXPGPATH]; char new_path[MAXPGPATH]; diff --git a/src/bin/pg_waldump/pg_waldump.c b/src/bin/pg_waldump/pg_waldump.c index 53eca4c8e0..6443eda6df 100644 --- a/src/bin/pg_waldump/pg_waldump.c +++ b/src/bin/pg_waldump/pg_waldump.c @@ -175,7 +175,7 @@ open_file_in_directory(const char *directory, const char *fname) * wal segment size. */ static bool -search_directory(char *directory, char *fname) +search_directory(const char *directory, const char *fname) { int fd = -1; DIR *xldir; diff --git a/src/bin/pgbench/pgbench.c b/src/bin/pgbench/pgbench.c index d4a60351a8..ec56a74de0 100644 --- a/src/bin/pgbench/pgbench.c +++ b/src/bin/pgbench/pgbench.c @@ -1870,7 +1870,7 @@ preparedStatementName(char *buffer, int file, int state) } static void -commandFailed(CState *st, char *message) +commandFailed(CState *st, const char *message) { fprintf(stderr, "client %d aborted in command %d of script %d; %s\n", @@ -3538,7 +3538,7 @@ addScript(ParsedScript script) } static void -printSimpleStats(char *prefix, SimpleStats *ss) +printSimpleStats(const char *prefix, SimpleStats *ss) { /* print NaN if no transactions where executed */ double latency = ss->sum / ss->count; diff --git a/src/include/access/gist_private.h b/src/include/access/gist_private.h index bfef2df420..eb1c6728d4 100644 --- a/src/include/access/gist_private.h +++ b/src/include/access/gist_private.h @@ -503,7 +503,7 @@ extern void gistSplitByKey(Relation r, Page page, IndexTuple *itup, /* gistbuild.c */ extern IndexBuildResult *gistbuild(Relation heap, Relation index, struct IndexInfo *indexInfo); -extern void gistValidateBufferingOption(char *value); +extern void gistValidateBufferingOption(const char *value); /* gistbuildbuffers.c */ extern GISTBuildBuffers *gistInitBuildBuffers(int pagesPerBuffer, int levelStep, diff --git a/src/include/access/reloptions.h b/src/include/access/reloptions.h index 5cdaa3bff1..cd43e3a52e 100644 --- a/src/include/access/reloptions.h +++ b/src/include/access/reloptions.h @@ -108,7 +108,7 @@ typedef struct relopt_real } relopt_real; /* validation routines for strings */ -typedef void (*validate_string_relopt) (char *value); +typedef void (*validate_string_relopt) (const char *value); typedef struct relopt_string { @@ -246,17 +246,17 @@ typedef struct extern relopt_kind add_reloption_kind(void); -extern void add_bool_reloption(bits32 kinds, char *name, char *desc, +extern void add_bool_reloption(bits32 kinds, const char *name, const char *desc, bool default_val); -extern void add_int_reloption(bits32 kinds, char *name, char *desc, +extern void add_int_reloption(bits32 kinds, const char *name, const char *desc, int default_val, int min_val, int max_val); -extern void add_real_reloption(bits32 kinds, char *name, char *desc, +extern void add_real_reloption(bits32 kinds, const char *name, const char *desc, double default_val, double min_val, double max_val); -extern void add_string_reloption(bits32 kinds, char *name, char *desc, - char *default_val, validate_string_relopt validator); +extern void add_string_reloption(bits32 kinds, const char *name, const char *desc, + const char *default_val, validate_string_relopt validator); extern Datum transformRelOptions(Datum oldOptions, List *defList, - char *namspace, char *validnsps[], + const char *namspace, char *validnsps[], bool ignoreOids, bool isReset); extern List *untransformRelOptions(Datum options); extern bytea *extractRelOptions(HeapTuple tuple, TupleDesc tupdesc, diff --git a/src/include/access/xact.h b/src/include/access/xact.h index f2c10f905f..118b0a8432 100644 --- a/src/include/access/xact.h +++ b/src/include/access/xact.h @@ -350,14 +350,14 @@ extern void CommitTransactionCommand(void); extern void AbortCurrentTransaction(void); extern void BeginTransactionBlock(void); extern bool EndTransactionBlock(void); -extern bool PrepareTransactionBlock(char *gid); +extern bool PrepareTransactionBlock(const char *gid); extern void UserAbortTransactionBlock(void); extern void BeginImplicitTransactionBlock(void); extern void EndImplicitTransactionBlock(void); extern void ReleaseSavepoint(List *options); -extern void DefineSavepoint(char *name); +extern void DefineSavepoint(const char *name); extern void RollbackToSavepoint(List *options); -extern void BeginInternalSubTransaction(char *name); +extern void BeginInternalSubTransaction(const char *name); extern void ReleaseCurrentSubTransaction(void); extern void RollbackAndReleaseCurrentSubTransaction(void); extern bool IsSubTransaction(void); diff --git a/src/include/access/xlog_internal.h b/src/include/access/xlog_internal.h index 22a8e63658..7805c3c747 100644 --- a/src/include/access/xlog_internal.h +++ b/src/include/access/xlog_internal.h @@ -321,9 +321,9 @@ extern char *recoveryRestoreCommand; extern bool RestoreArchivedFile(char *path, const char *xlogfname, const char *recovername, off_t expectedSize, bool cleanupEnabled); -extern void ExecuteRecoveryCommand(char *command, char *commandName, +extern void ExecuteRecoveryCommand(const char *command, const char *commandName, bool failOnerror); -extern void KeepFileRestoredFromArchive(char *path, char *xlogfname); +extern void KeepFileRestoredFromArchive(const char *path, const char *xlogfname); extern void XLogArchiveNotify(const char *xlog); extern void XLogArchiveNotifySeg(XLogSegNo segno); extern void XLogArchiveForceDone(const char *xlog); diff --git a/src/include/catalog/heap.h b/src/include/catalog/heap.h index cb1bc887f8..0fae02295b 100644 --- a/src/include/catalog/heap.h +++ b/src/include/catalog/heap.h @@ -109,7 +109,7 @@ extern Node *cookDefault(ParseState *pstate, Node *raw_default, Oid atttypid, int32 atttypmod, - char *attname); + const char *attname); extern void DeleteRelationTuple(Oid relid); extern void DeleteAttributeTuples(Oid relid); diff --git a/src/include/commands/comment.h b/src/include/commands/comment.h index 85bd801513..0caf0e81ab 100644 --- a/src/include/commands/comment.h +++ b/src/include/commands/comment.h @@ -34,11 +34,11 @@ extern ObjectAddress CommentObject(CommentStmt *stmt); extern void DeleteComments(Oid oid, Oid classoid, int32 subid); -extern void CreateComments(Oid oid, Oid classoid, int32 subid, char *comment); +extern void CreateComments(Oid oid, Oid classoid, int32 subid, const char *comment); extern void DeleteSharedComments(Oid oid, Oid classoid); -extern void CreateSharedComments(Oid oid, Oid classoid, char *comment); +extern void CreateSharedComments(Oid oid, Oid classoid, const char *comment); extern char *GetComment(Oid oid, Oid classoid, int32 subid); diff --git a/src/include/commands/defrem.h b/src/include/commands/defrem.h index f7bb4a54f7..bfead9af3d 100644 --- a/src/include/commands/defrem.h +++ b/src/include/commands/defrem.h @@ -39,12 +39,12 @@ extern char *makeObjectName(const char *name1, const char *name2, extern char *ChooseRelationName(const char *name1, const char *name2, const char *label, Oid namespaceid); extern bool CheckIndexCompatible(Oid oldId, - char *accessMethodName, + const char *accessMethodName, List *attributeList, List *exclusionOpNames); extern Oid GetDefaultOpClass(Oid type_id, Oid am_id); extern Oid ResolveOpClass(List *opclass, Oid attrType, - char *accessMethodName, Oid accessMethodId); + const char *accessMethodName, Oid accessMethodId); /* commands/functioncmds.c */ extern ObjectAddress CreateFunction(ParseState *pstate, CreateFunctionStmt *stmt); diff --git a/src/include/commands/typecmds.h b/src/include/commands/typecmds.h index 8f3fc65536..9fbf38629d 100644 --- a/src/include/commands/typecmds.h +++ b/src/include/commands/typecmds.h @@ -34,7 +34,7 @@ extern ObjectAddress AlterDomainDefault(List *names, Node *defaultRaw); extern ObjectAddress AlterDomainNotNull(List *names, bool notNull); extern ObjectAddress AlterDomainAddConstraint(List *names, Node *constr, ObjectAddress *constrAddr); -extern ObjectAddress AlterDomainValidateConstraint(List *names, char *constrName); +extern ObjectAddress AlterDomainValidateConstraint(List *names, const char *constrName); extern ObjectAddress AlterDomainDropConstraint(List *names, const char *constrName, DropBehavior behavior, bool missing_ok); diff --git a/src/include/commands/view.h b/src/include/commands/view.h index cf08ce2ac7..46d762db22 100644 --- a/src/include/commands/view.h +++ b/src/include/commands/view.h @@ -17,7 +17,7 @@ #include "catalog/objectaddress.h" #include "nodes/parsenodes.h" -extern void validateWithCheckOption(char *value); +extern void validateWithCheckOption(const char *value); extern ObjectAddress DefineView(ViewStmt *stmt, const char *queryString, int stmt_location, int stmt_len); diff --git a/src/include/executor/tablefunc.h b/src/include/executor/tablefunc.h index a24a555b75..49e8c7c1b2 100644 --- a/src/include/executor/tablefunc.h +++ b/src/include/executor/tablefunc.h @@ -53,11 +53,11 @@ typedef struct TableFuncRoutine { void (*InitOpaque) (struct TableFuncScanState *state, int natts); void (*SetDocument) (struct TableFuncScanState *state, Datum value); - void (*SetNamespace) (struct TableFuncScanState *state, char *name, - char *uri); - void (*SetRowFilter) (struct TableFuncScanState *state, char *path); + void (*SetNamespace) (struct TableFuncScanState *state, const char *name, + const char *uri); + void (*SetRowFilter) (struct TableFuncScanState *state, const char *path); void (*SetColumnFilter) (struct TableFuncScanState *state, - char *path, int colnum); + const char *path, int colnum); bool (*FetchRow) (struct TableFuncScanState *state); Datum (*GetValue) (struct TableFuncScanState *state, int colnum, Oid typid, int32 typmod, bool *isnull); diff --git a/src/include/parser/parse_relation.h b/src/include/parser/parse_relation.h index 91542d4f15..290f3b78cb 100644 --- a/src/include/parser/parse_relation.h +++ b/src/include/parser/parse_relation.h @@ -54,9 +54,9 @@ extern RangeTblEntry *GetRTEByRangeTablePosn(ParseState *pstate, extern CommonTableExpr *GetCTEForRTE(ParseState *pstate, RangeTblEntry *rte, int rtelevelsup); extern Node *scanRTEForColumn(ParseState *pstate, RangeTblEntry *rte, - char *colname, int location, + const char *colname, int location, int fuzzy_rte_penalty, FuzzyAttrMatchState *fuzzystate); -extern Node *colNameToVar(ParseState *pstate, char *colname, bool localonly, +extern Node *colNameToVar(ParseState *pstate, const char *colname, bool localonly, int location); extern void markVarForSelectPriv(ParseState *pstate, Var *var, RangeTblEntry *rte); @@ -117,7 +117,7 @@ extern void addRTEtoQuery(ParseState *pstate, RangeTblEntry *rte, bool addToRelNameSpace, bool addToVarNameSpace); extern void errorMissingRTE(ParseState *pstate, RangeVar *relation) pg_attribute_noreturn(); extern void errorMissingColumn(ParseState *pstate, - char *relname, char *colname, int location) pg_attribute_noreturn(); + const char *relname, const char *colname, int location) pg_attribute_noreturn(); extern void expandRTE(RangeTblEntry *rte, int rtindex, int sublevels_up, int location, bool include_dropped, List **colnames, List **colvars); diff --git a/src/include/parser/parse_target.h b/src/include/parser/parse_target.h index 44af46b1aa..bb7b7b606b 100644 --- a/src/include/parser/parse_target.h +++ b/src/include/parser/parse_target.h @@ -28,7 +28,7 @@ extern TargetEntry *transformTargetEntry(ParseState *pstate, char *colname, bool resjunk); extern Expr *transformAssignedExpr(ParseState *pstate, Expr *expr, ParseExprKind exprKind, - char *colname, + const char *colname, int attrno, List *indirection, int location); diff --git a/src/include/postmaster/bgworker.h b/src/include/postmaster/bgworker.h index 6b4e631880..b6c5800cfe 100644 --- a/src/include/postmaster/bgworker.h +++ b/src/include/postmaster/bgworker.h @@ -140,7 +140,7 @@ extern PGDLLIMPORT BackgroundWorker *MyBgworkerEntry; * If dbname is NULL, connection is made to no specific database; * only shared catalogs can be accessed. */ -extern void BackgroundWorkerInitializeConnection(char *dbname, char *username); +extern void BackgroundWorkerInitializeConnection(const char *dbname, const char *username); /* Just like the above, but specifying database and user by OID. */ extern void BackgroundWorkerInitializeConnectionByOid(Oid dboid, Oid useroid); diff --git a/src/include/rewrite/rewriteDefine.h b/src/include/rewrite/rewriteDefine.h index 2e25288bb4..b496a0c154 100644 --- a/src/include/rewrite/rewriteDefine.h +++ b/src/include/rewrite/rewriteDefine.h @@ -25,7 +25,7 @@ extern ObjectAddress DefineRule(RuleStmt *stmt, const char *queryString); -extern ObjectAddress DefineQueryRewrite(char *rulename, +extern ObjectAddress DefineQueryRewrite(const char *rulename, Oid event_relid, Node *event_qual, CmdType event_type, diff --git a/src/include/storage/lwlock.h b/src/include/storage/lwlock.h index f4c4aed7f9..596fdadc63 100644 --- a/src/include/storage/lwlock.h +++ b/src/include/storage/lwlock.h @@ -184,7 +184,7 @@ extern LWLockPadded *GetNamedLWLockTranche(const char *tranche_name); * registration in the main shared memory segment wouldn't work for that case. */ extern int LWLockNewTrancheId(void); -extern void LWLockRegisterTranche(int tranche_id, char *tranche_name); +extern void LWLockRegisterTranche(int tranche_id, const char *tranche_name); extern void LWLockInitialize(LWLock *lock, int tranche_id); /* diff --git a/src/include/utils/dynamic_loader.h b/src/include/utils/dynamic_loader.h index 6c9287b611..80ac1e3fe6 100644 --- a/src/include/utils/dynamic_loader.h +++ b/src/include/utils/dynamic_loader.h @@ -17,8 +17,8 @@ #include "fmgr.h" -extern void *pg_dlopen(char *filename); -extern PGFunction pg_dlsym(void *handle, char *funcname); +extern void *pg_dlopen(const char *filename); +extern PGFunction pg_dlsym(void *handle, const char *funcname); extern void pg_dlclose(void *handle); extern char *pg_dlerror(void); diff --git a/src/include/utils/varlena.h b/src/include/utils/varlena.h index cab82ee888..06f3b69893 100644 --- a/src/include/utils/varlena.h +++ b/src/include/utils/varlena.h @@ -16,7 +16,7 @@ #include "nodes/pg_list.h" #include "utils/sortsupport.h" -extern int varstr_cmp(char *arg1, int len1, char *arg2, int len2, Oid collid); +extern int varstr_cmp(const char *arg1, int len1, const char *arg2, int len2, Oid collid); extern void varstr_sortsupport(SortSupport ssup, Oid collid, bool bpchar); extern int varstr_levenshtein(const char *source, int slen, const char *target, int tlen, diff --git a/src/include/utils/xml.h b/src/include/utils/xml.h index e6fa0e2051..385b728f42 100644 --- a/src/include/utils/xml.h +++ b/src/include/utils/xml.h @@ -65,14 +65,14 @@ extern xmltype *xmlelement(XmlExpr *xexpr, Datum *named_argvalue, bool *named_argnull, Datum *argvalue, bool *argnull); extern xmltype *xmlparse(text *data, XmlOptionType xmloption, bool preserve_whitespace); -extern xmltype *xmlpi(char *target, text *arg, bool arg_is_null, bool *result_is_null); +extern xmltype *xmlpi(const char *target, text *arg, bool arg_is_null, bool *result_is_null); extern xmltype *xmlroot(xmltype *data, text *version, int standalone); extern bool xml_is_document(xmltype *arg); extern text *xmltotext_with_xmloption(xmltype *data, XmlOptionType xmloption_arg); extern char *escape_xml(const char *str); -extern char *map_sql_identifier_to_xml_name(char *ident, bool fully_escaped, bool escape_period); -extern char *map_xml_name_to_sql_identifier(char *name); +extern char *map_sql_identifier_to_xml_name(const char *ident, bool fully_escaped, bool escape_period); +extern char *map_xml_name_to_sql_identifier(const char *name); extern char *map_sql_value_to_xml_value(Datum value, Oid type, bool xml_escape_strings); extern int xmlbinary; /* XmlBinaryType, but int for guc enum */ diff --git a/src/interfaces/ecpg/compatlib/informix.c b/src/interfaces/ecpg/compatlib/informix.c index e9bcb4cde2..13058cf7bf 100644 --- a/src/interfaces/ecpg/compatlib/informix.c +++ b/src/interfaces/ecpg/compatlib/informix.c @@ -195,7 +195,7 @@ ecpg_strndup(const char *str, size_t len) } int -deccvasc(char *cp, int len, decimal *np) +deccvasc(const char *cp, int len, decimal *np) { char *str; int ret = 0; @@ -520,7 +520,7 @@ rdatestr(date d, char *str) * */ int -rstrdate(char *str, date * d) +rstrdate(const char *str, date * d) { return rdefmtdate(d, "mm/dd/yyyy", str); } @@ -545,7 +545,7 @@ rjulmdy(date d, short mdy[3]) } int -rdefmtdate(date * d, char *fmt, char *str) +rdefmtdate(date * d, const char *fmt, const char *str) { /* TODO: take care of DBCENTURY environment variable */ /* PGSQL functions allow all centuries */ @@ -571,7 +571,7 @@ rdefmtdate(date * d, char *fmt, char *str) } int -rfmtdate(date d, char *fmt, char *str) +rfmtdate(date d, const char *fmt, char *str) { errno = 0; if (PGTYPESdate_fmt_asc(d, fmt, str) == 0) @@ -747,7 +747,7 @@ initValue(long lng_val) /* return the position oft the right-most dot in some string */ static int -getRightMostDot(char *str) +getRightMostDot(const char *str) { size_t len = strlen(str); int i, @@ -765,7 +765,7 @@ getRightMostDot(char *str) /* And finally some misc functions */ int -rfmtlong(long lng_val, char *fmt, char *outbuf) +rfmtlong(long lng_val, const char *fmt, char *outbuf) { size_t fmt_len = strlen(fmt); size_t temp_len; @@ -1047,7 +1047,7 @@ rsetnull(int t, char *ptr) } int -risnull(int t, char *ptr) +risnull(int t, const char *ptr) { return ECPGis_noind_null(t, ptr); } diff --git a/src/interfaces/ecpg/ecpglib/misc.c b/src/interfaces/ecpg/ecpglib/misc.c index 2084d7fe60..8f720b2c54 100644 --- a/src/interfaces/ecpg/ecpglib/misc.c +++ b/src/interfaces/ecpg/ecpglib/misc.c @@ -375,7 +375,7 @@ ECPGset_noind_null(enum ECPGttype type, void *ptr) } static bool -_check(unsigned char *ptr, int length) +_check(const unsigned char *ptr, int length) { for (length--; length >= 0; length--) if (ptr[length] != 0xff) @@ -385,36 +385,36 @@ _check(unsigned char *ptr, int length) } bool -ECPGis_noind_null(enum ECPGttype type, void *ptr) +ECPGis_noind_null(enum ECPGttype type, const void *ptr) { switch (type) { case ECPGt_char: case ECPGt_unsigned_char: case ECPGt_string: - if (*((char *) ptr) == '\0') + if (*((const char *) ptr) == '\0') return true; break; case ECPGt_short: case ECPGt_unsigned_short: - if (*((short int *) ptr) == SHRT_MIN) + if (*((const short int *) ptr) == SHRT_MIN) return true; break; case ECPGt_int: case ECPGt_unsigned_int: - if (*((int *) ptr) == INT_MIN) + if (*((const int *) ptr) == INT_MIN) return true; break; case ECPGt_long: case ECPGt_unsigned_long: case ECPGt_date: - if (*((long *) ptr) == LONG_MIN) + if (*((const long *) ptr) == LONG_MIN) return true; break; #ifdef HAVE_LONG_LONG_INT case ECPGt_long_long: case ECPGt_unsigned_long_long: - if (*((long long *) ptr) == LONG_LONG_MIN) + if (*((const long long *) ptr) == LONG_LONG_MIN) return true; break; #endif /* HAVE_LONG_LONG_INT */ @@ -425,15 +425,15 @@ ECPGis_noind_null(enum ECPGttype type, void *ptr) return _check(ptr, sizeof(double)); break; case ECPGt_varchar: - if (*(((struct ECPGgeneric_varchar *) ptr)->arr) == 0x00) + if (*(((const struct ECPGgeneric_varchar *) ptr)->arr) == 0x00) return true; break; case ECPGt_decimal: - if (((decimal *) ptr)->sign == NUMERIC_NULL) + if (((const decimal *) ptr)->sign == NUMERIC_NULL) return true; break; case ECPGt_numeric: - if (((numeric *) ptr)->sign == NUMERIC_NULL) + if (((const numeric *) ptr)->sign == NUMERIC_NULL) return true; break; case ECPGt_interval: diff --git a/src/interfaces/ecpg/include/ecpg_informix.h b/src/interfaces/ecpg/include/ecpg_informix.h index dd6258152a..a5260a5542 100644 --- a/src/interfaces/ecpg/include/ecpg_informix.h +++ b/src/interfaces/ecpg/include/ecpg_informix.h @@ -36,15 +36,15 @@ extern "C" extern int rdatestr(date, char *); extern void rtoday(date *); extern int rjulmdy(date, short *); -extern int rdefmtdate(date *, char *, char *); -extern int rfmtdate(date, char *, char *); +extern int rdefmtdate(date *, const char *, const char *); +extern int rfmtdate(date, const char *, char *); extern int rmdyjul(short *, date *); -extern int rstrdate(char *, date *); +extern int rstrdate(const char *, date *); extern int rdayofweek(date); -extern int rfmtlong(long, char *, char *); +extern int rfmtlong(long, const char *, char *); extern int rgetmsg(int, char *, int); -extern int risnull(int, char *); +extern int risnull(int, const char *); extern int rsetnull(int, char *); extern int rtypalign(int, int); extern int rtypmsize(int, int); @@ -62,7 +62,7 @@ extern void ECPG_informix_reset_sqlca(void); int decadd(decimal *, decimal *, decimal *); int deccmp(decimal *, decimal *); void deccopy(decimal *, decimal *); -int deccvasc(char *, int, decimal *); +int deccvasc(const char *, int, decimal *); int deccvdbl(double, decimal *); int deccvint(int, decimal *); int deccvlong(long, decimal *); diff --git a/src/interfaces/ecpg/include/ecpglib.h b/src/interfaces/ecpg/include/ecpglib.h index 536b7506ff..8a601996d2 100644 --- a/src/interfaces/ecpg/include/ecpglib.h +++ b/src/interfaces/ecpg/include/ecpglib.h @@ -80,7 +80,7 @@ bool ECPGset_desc_header(int, const char *, int); bool ECPGset_desc(int, const char *, int,...); void ECPGset_noind_null(enum ECPGttype, void *); -bool ECPGis_noind_null(enum ECPGttype, void *); +bool ECPGis_noind_null(enum ECPGttype, const void *); bool ECPGdescribe(int, int, bool, const char *, const char *,...); void ECPGset_var(int, void *, int); diff --git a/src/interfaces/ecpg/include/pgtypes_date.h b/src/interfaces/ecpg/include/pgtypes_date.h index 3d1a181b2b..caf8a33d12 100644 --- a/src/interfaces/ecpg/include/pgtypes_date.h +++ b/src/interfaces/ecpg/include/pgtypes_date.h @@ -21,7 +21,7 @@ extern void PGTYPESdate_julmdy(date, int *); extern void PGTYPESdate_mdyjul(int *, date *); extern int PGTYPESdate_dayofweek(date); extern void PGTYPESdate_today(date *); -extern int PGTYPESdate_defmt_asc(date *, const char *, char *); +extern int PGTYPESdate_defmt_asc(date *, const char *, const char *); extern int PGTYPESdate_fmt_asc(date, const char *, char *); #ifdef __cplusplus diff --git a/src/interfaces/ecpg/include/pgtypes_timestamp.h b/src/interfaces/ecpg/include/pgtypes_timestamp.h index 283ecca25e..1545be4ee9 100644 --- a/src/interfaces/ecpg/include/pgtypes_timestamp.h +++ b/src/interfaces/ecpg/include/pgtypes_timestamp.h @@ -19,7 +19,7 @@ extern char *PGTYPEStimestamp_to_asc(timestamp); extern int PGTYPEStimestamp_sub(timestamp *, timestamp *, interval *); extern int PGTYPEStimestamp_fmt_asc(timestamp *, char *, int, const char *); extern void PGTYPEStimestamp_current(timestamp *); -extern int PGTYPEStimestamp_defmt_asc(char *, const char *, timestamp *); +extern int PGTYPEStimestamp_defmt_asc(const char *, const char *, timestamp *); extern int PGTYPEStimestamp_add_interval(timestamp * tin, interval * span, timestamp * tout); extern int PGTYPEStimestamp_sub_interval(timestamp * tin, interval * span, timestamp * tout); diff --git a/src/interfaces/ecpg/pgtypeslib/datetime.c b/src/interfaces/ecpg/pgtypeslib/datetime.c index 33c9011a71..4ee70ee40b 100644 --- a/src/interfaces/ecpg/pgtypeslib/datetime.c +++ b/src/interfaces/ecpg/pgtypeslib/datetime.c @@ -329,7 +329,7 @@ PGTYPESdate_fmt_asc(date dDate, const char *fmtstring, char *outbuf) #define PGTYPES_DATE_MONTH_MAXLENGTH 20 /* probably even less :-) */ int -PGTYPESdate_defmt_asc(date * d, const char *fmt, char *str) +PGTYPESdate_defmt_asc(date * d, const char *fmt, const char *str) { /* * token[2] = { 4,6 } means that token 2 starts at position 4 and ends at diff --git a/src/interfaces/ecpg/pgtypeslib/interval.c b/src/interfaces/ecpg/pgtypeslib/interval.c index 30f2ccbcb7..4f7c4c68b1 100644 --- a/src/interfaces/ecpg/pgtypeslib/interval.c +++ b/src/interfaces/ecpg/pgtypeslib/interval.c @@ -65,7 +65,7 @@ AdjustFractDays(double frac, struct /* pg_ */ tm *tm, fsec_t *fsec, int scale) /* copy&pasted from .../src/backend/utils/adt/datetime.c */ static int -ParseISO8601Number(char *str, char **endptr, int *ipart, double *fpart) +ParseISO8601Number(const char *str, char **endptr, int *ipart, double *fpart) { double val; @@ -90,7 +90,7 @@ ParseISO8601Number(char *str, char **endptr, int *ipart, double *fpart) /* copy&pasted from .../src/backend/utils/adt/datetime.c */ static int -ISO8601IntegerWidth(char *fieldstart) +ISO8601IntegerWidth(const char *fieldstart) { /* We might have had a leading '-' */ if (*fieldstart == '-') diff --git a/src/interfaces/ecpg/pgtypeslib/timestamp.c b/src/interfaces/ecpg/pgtypeslib/timestamp.c index fa5b32ed9d..e3a275df56 100644 --- a/src/interfaces/ecpg/pgtypeslib/timestamp.c +++ b/src/interfaces/ecpg/pgtypeslib/timestamp.c @@ -815,7 +815,7 @@ PGTYPEStimestamp_sub(timestamp * ts1, timestamp * ts2, interval * iv) } int -PGTYPEStimestamp_defmt_asc(char *str, const char *fmt, timestamp * d) +PGTYPEStimestamp_defmt_asc(const char *str, const char *fmt, timestamp * d) { int year, month, diff --git a/src/interfaces/ecpg/preproc/type.c b/src/interfaces/ecpg/preproc/type.c index 256a3c395c..4abbf93d19 100644 --- a/src/interfaces/ecpg/preproc/type.c +++ b/src/interfaces/ecpg/preproc/type.c @@ -74,7 +74,7 @@ ECPGstruct_member_dup(struct ECPGstruct_member *rm) /* The NAME argument is copied. The type argument is preserved as a pointer. */ void -ECPGmake_struct_member(char *name, struct ECPGtype *type, struct ECPGstruct_member **start) +ECPGmake_struct_member(const char *name, struct ECPGtype *type, struct ECPGstruct_member **start) { struct ECPGstruct_member *ptr, *ne = diff --git a/src/interfaces/ecpg/preproc/type.h b/src/interfaces/ecpg/preproc/type.h index 4b93336480..fc70d7d218 100644 --- a/src/interfaces/ecpg/preproc/type.h +++ b/src/interfaces/ecpg/preproc/type.h @@ -33,7 +33,7 @@ struct ECPGtype }; /* Everything is malloced. */ -void ECPGmake_struct_member(char *, struct ECPGtype *, struct ECPGstruct_member **); +void ECPGmake_struct_member(const char *, struct ECPGtype *, struct ECPGstruct_member **); struct ECPGtype *ECPGmake_simple_type(enum ECPGttype, char *, int); struct ECPGtype *ECPGmake_array_type(struct ECPGtype *, char *); struct ECPGtype *ECPGmake_struct_type(struct ECPGstruct_member *, enum ECPGttype, char *, char *); diff --git a/src/interfaces/ecpg/test/compat_informix/rfmtdate.pgc b/src/interfaces/ecpg/test/compat_informix/rfmtdate.pgc index f1a9048889..a147f405ab 100644 --- a/src/interfaces/ecpg/test/compat_informix/rfmtdate.pgc +++ b/src/interfaces/ecpg/test/compat_informix/rfmtdate.pgc @@ -13,7 +13,7 @@ static void check_return(int ret); static void -date_test_strdate(char *input) +date_test_strdate(const char *input) { static int i; date d; @@ -38,7 +38,7 @@ date_test_strdate(char *input) } static void -date_test_defmt(char *fmt, char *input) +date_test_defmt(const char *fmt, const char *input) { static int i; char dbuf[11]; @@ -63,7 +63,7 @@ date_test_defmt(char *fmt, char *input) } static void -date_test_fmt(date d, char *fmt) +date_test_fmt(date d, const char *fmt) { static int i; char buf[200]; diff --git a/src/interfaces/ecpg/test/compat_informix/rfmtlong.pgc b/src/interfaces/ecpg/test/compat_informix/rfmtlong.pgc index a1070e1331..2ecf09c837 100644 --- a/src/interfaces/ecpg/test/compat_informix/rfmtlong.pgc +++ b/src/interfaces/ecpg/test/compat_informix/rfmtlong.pgc @@ -13,7 +13,7 @@ static void check_return(int ret); static void -fmtlong(long lng, char *fmt) +fmtlong(long lng, const char *fmt) { static int i; int r; diff --git a/src/interfaces/ecpg/test/compat_informix/test_informix2.pgc b/src/interfaces/ecpg/test/compat_informix/test_informix2.pgc index 0386093d70..5380f9eb5a 100644 --- a/src/interfaces/ecpg/test/compat_informix/test_informix2.pgc +++ b/src/interfaces/ecpg/test/compat_informix/test_informix2.pgc @@ -7,7 +7,7 @@ EXEC SQL include ../regression; EXEC SQL DEFINE MAXDBLEN 30; /* Check SQLCODE, and produce a "standard error" if it's wrong! */ -static void sql_check(char *fn, char *caller, int ignore) +static void sql_check(const char *fn, const char *caller, int ignore) { char errorstring[255]; diff --git a/src/interfaces/ecpg/test/expected/compat_informix-rfmtdate.c b/src/interfaces/ecpg/test/expected/compat_informix-rfmtdate.c index 87a435e9bd..68be08276d 100644 --- a/src/interfaces/ecpg/test/expected/compat_informix-rfmtdate.c +++ b/src/interfaces/ecpg/test/expected/compat_informix-rfmtdate.c @@ -24,7 +24,7 @@ static void check_return(int ret); static void -date_test_strdate(char *input) +date_test_strdate(const char *input) { static int i; date d; @@ -49,7 +49,7 @@ date_test_strdate(char *input) } static void -date_test_defmt(char *fmt, char *input) +date_test_defmt(const char *fmt, const char *input) { static int i; char dbuf[11]; @@ -74,7 +74,7 @@ date_test_defmt(char *fmt, char *input) } static void -date_test_fmt(date d, char *fmt) +date_test_fmt(date d, const char *fmt) { static int i; char buf[200]; diff --git a/src/interfaces/ecpg/test/expected/compat_informix-rfmtlong.c b/src/interfaces/ecpg/test/expected/compat_informix-rfmtlong.c index 70e015a130..b2e397e38c 100644 --- a/src/interfaces/ecpg/test/expected/compat_informix-rfmtlong.c +++ b/src/interfaces/ecpg/test/expected/compat_informix-rfmtlong.c @@ -24,7 +24,7 @@ static void check_return(int ret); static void -fmtlong(long lng, char *fmt) +fmtlong(long lng, const char *fmt) { static int i; int r; diff --git a/src/interfaces/ecpg/test/expected/compat_informix-test_informix2.c b/src/interfaces/ecpg/test/expected/compat_informix-test_informix2.c index 4e372a5799..eeb9b62ab4 100644 --- a/src/interfaces/ecpg/test/expected/compat_informix-test_informix2.c +++ b/src/interfaces/ecpg/test/expected/compat_informix-test_informix2.c @@ -97,7 +97,7 @@ struct sqlca_t *ECPGget_sqlca(void); /* Check SQLCODE, and produce a "standard error" if it's wrong! */ -static void sql_check(char *fn, char *caller, int ignore) +static void sql_check(const char *fn, const char *caller, int ignore) { char errorstring[255]; diff --git a/src/interfaces/ecpg/test/expected/preproc-init.c b/src/interfaces/ecpg/test/expected/preproc-init.c index ca23d348d6..b0e04731fe 100644 --- a/src/interfaces/ecpg/test/expected/preproc-init.c +++ b/src/interfaces/ecpg/test/expected/preproc-init.c @@ -114,7 +114,7 @@ static int fe(enum e x) return (int)x; } -static void sqlnotice(char *notice, short trans) +static void sqlnotice(const char *notice, short trans) { if (!notice) notice = "-empty-"; diff --git a/src/interfaces/ecpg/test/expected/preproc-whenever.c b/src/interfaces/ecpg/test/expected/preproc-whenever.c index 922ef76b92..332ef85b10 100644 --- a/src/interfaces/ecpg/test/expected/preproc-whenever.c +++ b/src/interfaces/ecpg/test/expected/preproc-whenever.c @@ -24,7 +24,7 @@ #line 5 "whenever.pgc" -static void print(char *msg) +static void print(const char *msg) { fprintf(stderr, "Error in statement '%s':\n", msg); sqlprint(); diff --git a/src/interfaces/ecpg/test/preproc/init.pgc b/src/interfaces/ecpg/test/preproc/init.pgc index 11dc01ade4..b1f71997a2 100644 --- a/src/interfaces/ecpg/test/preproc/init.pgc +++ b/src/interfaces/ecpg/test/preproc/init.pgc @@ -35,7 +35,7 @@ static int fe(enum e x) return (int)x; } -static void sqlnotice(char *notice, short trans) +static void sqlnotice(const char *notice, short trans) { if (!notice) notice = "-empty-"; diff --git a/src/interfaces/ecpg/test/preproc/whenever.pgc b/src/interfaces/ecpg/test/preproc/whenever.pgc index 9b3ae9e9ec..14cf571e6a 100644 --- a/src/interfaces/ecpg/test/preproc/whenever.pgc +++ b/src/interfaces/ecpg/test/preproc/whenever.pgc @@ -4,7 +4,7 @@ exec sql include ../regression; exec sql whenever sqlerror sqlprint; -static void print(char *msg) +static void print(const char *msg) { fprintf(stderr, "Error in statement '%s':\n", msg); sqlprint(); diff --git a/src/interfaces/libpq/fe-connect.c b/src/interfaces/libpq/fe-connect.c index 6bcf60a712..1cd15c3ce0 100644 --- a/src/interfaces/libpq/fe-connect.c +++ b/src/interfaces/libpq/fe-connect.c @@ -398,9 +398,9 @@ static int parseServiceFile(const char *serviceFile, PQconninfoOption *options, PQExpBuffer errorMessage, bool *group_found); -static char *pwdfMatchesString(char *buf, char *token); -static char *passwordFromFile(char *hostname, char *port, char *dbname, - char *username, char *pgpassfile); +static char *pwdfMatchesString(char *buf, const char *token); +static char *passwordFromFile(const char *hostname, const char *port, const char *dbname, + const char *username, const char *pgpassfile); static void pgpassfileWarning(PGconn *conn); static void default_threadlock(int acquire); @@ -6329,10 +6329,10 @@ defaultNoticeProcessor(void *arg, const char *message) * token doesn't match */ static char * -pwdfMatchesString(char *buf, char *token) +pwdfMatchesString(char *buf, const char *token) { - char *tbuf, - *ttok; + char *tbuf; + const char *ttok; bool bslash = false; if (buf == NULL || token == NULL) @@ -6366,8 +6366,8 @@ pwdfMatchesString(char *buf, char *token) /* Get a password from the password file. Return value is malloc'd. */ static char * -passwordFromFile(char *hostname, char *port, char *dbname, - char *username, char *pgpassfile) +passwordFromFile(const char *hostname, const char *port, const char *dbname, + const char *username, const char *pgpassfile) { FILE *fp; struct stat stat_buf; diff --git a/src/pl/plperl/plperl.c b/src/pl/plperl/plperl.c index ca0d1bccf8..a57393fbdd 100644 --- a/src/pl/plperl/plperl.c +++ b/src/pl/plperl/plperl.c @@ -293,7 +293,7 @@ static void plperl_return_next_internal(SV *sv); static char *hek2cstr(HE *he); static SV **hv_store_string(HV *hv, const char *key, SV *val); static SV **hv_fetch_string(HV *hv, const char *key); -static void plperl_create_sub(plperl_proc_desc *desc, char *s, Oid fn_oid); +static void plperl_create_sub(plperl_proc_desc *desc, const char *s, Oid fn_oid); static SV *plperl_call_perl_func(plperl_proc_desc *desc, FunctionCallInfo fcinfo); static void plperl_compile_callback(void *arg); @@ -2083,7 +2083,7 @@ plperlu_validator(PG_FUNCTION_ARGS) * supplied in s, and returns a reference to it */ static void -plperl_create_sub(plperl_proc_desc *prodesc, char *s, Oid fn_oid) +plperl_create_sub(plperl_proc_desc *prodesc, const char *s, Oid fn_oid) { dTHX; dSP; diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c index 0156b00bfb..e7ea3ae138 100644 --- a/src/test/regress/pg_regress.c +++ b/src/test/regress/pg_regress.c @@ -438,7 +438,7 @@ string_matches_pattern(const char *str, const char *pattern) * NOTE: Assumes there is enough room in the target buffer! */ void -replace_string(char *string, char *replace, char *replacement) +replace_string(char *string, const char *replace, const char *replacement) { char *ptr; @@ -460,7 +460,7 @@ replace_string(char *string, char *replace, char *replacement) * the given suffix. */ static void -convert_sourcefiles_in(char *source_subdir, char *dest_dir, char *dest_subdir, char *suffix) +convert_sourcefiles_in(const char *source_subdir, const char *dest_dir, const char *dest_subdir, const char *suffix) { char testtablespace[MAXPGPATH]; char indir[MAXPGPATH]; diff --git a/src/test/regress/pg_regress.h b/src/test/regress/pg_regress.h index 4abfc628e5..0d9c4bfac3 100644 --- a/src/test/regress/pg_regress.h +++ b/src/test/regress/pg_regress.h @@ -49,5 +49,5 @@ int regression_main(int argc, char *argv[], init_function ifunc, test_function tfunc); void add_stringlist_item(_stringlist **listhead, const char *str); PID_TYPE spawn_process(const char *cmdline); -void replace_string(char *string, char *replace, char *replacement); +void replace_string(char *string, const char *replace, const char *replacement); bool file_exists(const char *file); -- 2.15.0