mirror of
https://github.com/EnterpriseDB/repmgr.git
synced 2026-03-22 22:56:29 +00:00
Add utility function validate_conninfo_string()
This commit is contained in:
27
dbutils.c
27
dbutils.c
@@ -705,10 +705,35 @@ param_get(t_conninfo_param_list *param_list, const char *param)
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Validate a conninfo string by attempting to parse it.
|
||||
*
|
||||
* "errmsg": passed to PQconninfoParse(), may be NULL
|
||||
*
|
||||
* NOTE: PQconninfoParse() verifies the string format and checks for
|
||||
* valid options but does not sanity check values.
|
||||
*/
|
||||
|
||||
bool
|
||||
validate_conninfo_string(const char *conninfo_str, char **errmsg)
|
||||
{
|
||||
PQconninfoOption *connOptions = NULL;
|
||||
|
||||
connOptions = PQconninfoParse(conninfo_str, errmsg);
|
||||
|
||||
if (connOptions == NULL)
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Parse a conninfo string into a t_conninfo_param_list
|
||||
*
|
||||
* See conn_to_param_list() to do the same for a PGconn
|
||||
* See conn_to_param_list() to do the same for a PGconn.
|
||||
*
|
||||
* "errmsg": passed to PQconninfoParse(), may be NULL
|
||||
*
|
||||
* "ignore_local_params": ignores those parameters specific
|
||||
* to a local installation, i.e. when parsing an upstream
|
||||
|
||||
@@ -413,6 +413,7 @@ void conn_to_param_list(PGconn *conn, t_conninfo_param_list *param_list);
|
||||
void param_set(t_conninfo_param_list *param_list, const char *param, const char *value);
|
||||
void param_set_ine(t_conninfo_param_list *param_list, const char *param, const char *value);
|
||||
char *param_get(t_conninfo_param_list *param_list, const char *param);
|
||||
bool validate_conninfo_string(const char *conninfo_str, char **errmsg);
|
||||
bool parse_conninfo_string(const char *conninfo_str, t_conninfo_param_list *param_list, char **errmsg, bool ignore_local_params);
|
||||
char *param_list_to_string(t_conninfo_param_list *param_list);
|
||||
char *normalize_conninfo_string(const char *conninfo_str);
|
||||
|
||||
Reference in New Issue
Block a user