diff --git a/HISTORY b/HISTORY index 7d4a3cfe..f1109216 100644 --- a/HISTORY +++ b/HISTORY @@ -1,3 +1,6 @@ +4.0.5 2018-??-?? + repmgr: fix display of conninfo parsing error messages (Ian) + 4.0.4 2018-03-09 repmgr: add "standby clone --recovery-conf-only" option; GitHub #382 (Ian) repmgr: make "standby promote" timeout values configurable; GitHub #387 (Ian) diff --git a/dbutils.c b/dbutils.c index eb263b00..1de530b1 100644 --- a/dbutils.c +++ b/dbutils.c @@ -124,7 +124,7 @@ _establish_db_connection(const char *conninfo, const bool exit_on_error, const b initialize_conninfo_params(&conninfo_params, false); - parse_success = parse_conninfo_string(conninfo, &conninfo_params, errmsg, false); + parse_success = parse_conninfo_string(conninfo, &conninfo_params, &errmsg, false); if (parse_success == false) { @@ -549,12 +549,12 @@ param_get(t_conninfo_param_list *param_list, const char *param) * don't copy that node's values */ bool -parse_conninfo_string(const char *conninfo_str, t_conninfo_param_list *param_list, char *errmsg, bool ignore_local_params) +parse_conninfo_string(const char *conninfo_str, t_conninfo_param_list *param_list, char **errmsg, bool ignore_local_params) { PQconninfoOption *connOptions = NULL; PQconninfoOption *option = NULL; - connOptions = PQconninfoParse(conninfo_str, &errmsg); + connOptions = PQconninfoParse(conninfo_str, errmsg); if (connOptions == NULL) return false; diff --git a/dbutils.h b/dbutils.h index d9b6b53b..1891b03f 100644 --- a/dbutils.h +++ b/dbutils.h @@ -364,7 +364,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 parse_conninfo_string(const char *conninfo_str, t_conninfo_param_list *param_list, char *errmsg, bool ignore_local_params); +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); bool has_passfile(void); diff --git a/repmgr-action-standby.c b/repmgr-action-standby.c index 6323a3e3..31b933c7 100644 --- a/repmgr-action-standby.c +++ b/repmgr-action-standby.c @@ -349,7 +349,7 @@ do_standby_clone(void) * `application_name`, if set */ - parse_success = parse_conninfo_string(recovery_conninfo_str, &recovery_conninfo, errmsg, true); + parse_success = parse_conninfo_string(recovery_conninfo_str, &recovery_conninfo, &errmsg, true); if (parse_success == false) { @@ -2356,7 +2356,7 @@ do_standby_follow_internal(PGconn *primary_conn, t_node_info *primary_node_recor initialize_conninfo_params(&recovery_conninfo, false); /* We ignore any application_name set in the primary's conninfo */ - parse_conninfo_string(primary_node_record->conninfo, &recovery_conninfo, errmsg, true); + parse_conninfo_string(primary_node_record->conninfo, &recovery_conninfo, &errmsg, true); { t_conninfo_param_list local_node_conninfo = T_CONNINFO_PARAM_LIST_INITIALIZER; @@ -2364,7 +2364,7 @@ do_standby_follow_internal(PGconn *primary_conn, t_node_info *primary_node_recor initialize_conninfo_params(&local_node_conninfo, false); - parse_success = parse_conninfo_string(local_node_record.conninfo, &local_node_conninfo, errmsg, false); + parse_success = parse_conninfo_string(local_node_record.conninfo, &local_node_conninfo, &errmsg, false); if (parse_success == false) { @@ -4016,7 +4016,7 @@ check_source_server_via_barman() * parse_conninfo_string() here will remove the upstream's * `application_name`, if set */ - parse_success = parse_conninfo_string(barman_conninfo_str, &barman_conninfo, errmsg, true); + parse_success = parse_conninfo_string(barman_conninfo_str, &barman_conninfo, &errmsg, true); if (parse_success == false) {