From: Stephan Bosch Date: Mon, 2 Oct 2017 09:42:19 +0000 (+0200) Subject: lib-auth-client: auth-master - Move args_hide_passwords() X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=623db0dd20af7a5374306e17598ef8dc888b337d;p=thirdparty%2Fdovecot%2Fcore.git lib-auth-client: auth-master - Move args_hide_passwords() --- diff --git a/src/lib-auth-client/auth-master.c b/src/lib-auth-client/auth-master.c index 8ae9ccb9ac..780824f106 100644 --- a/src/lib-auth-client/auth-master.c +++ b/src/lib-auth-client/auth-master.c @@ -186,39 +186,6 @@ static void auth_master_destroy(struct connection *_conn) auth_request_lookup_abort(conn); } -static const char *const *args_hide_passwords(const char *const *args) -{ - ARRAY_TYPE(const_string) new_args; - const char *p, *p2; - unsigned int i; - - /* if there are any keys that contain "pass" string */ - for (i = 0; args[i] != NULL; i++) { - p = strstr(args[i], "pass"); - if (p != NULL && p < strchr(args[i], '=')) - break; - } - if (args[i] == NULL) - return args; - - /* there are. replace their values with */ - t_array_init(&new_args, i + 16); - array_append(&new_args, args, i); - for (; args[i] != NULL; i++) { - p = strstr(args[i], "pass"); - p2 = strchr(args[i], '='); - if (p != NULL && p < p2) { - p = t_strconcat(t_strdup_until(args[i], p2), - "=", NULL); - array_push_back(&new_args, &p); - } else { - array_push_back(&new_args, &args[i]); - } - } - array_append_zero(&new_args); - return array_front(&new_args); -} - static int auth_master_handshake_line(struct connection *_conn, const char *line) { @@ -480,6 +447,39 @@ auth_master_next_request_id(struct auth_master_connection *conn) return conn->request_counter; } +static const char *const *args_hide_passwords(const char *const *args) +{ + ARRAY_TYPE(const_string) new_args; + const char *p, *p2; + unsigned int i; + + /* if there are any keys that contain "pass" string */ + for (i = 0; args[i] != NULL; i++) { + p = strstr(args[i], "pass"); + if (p != NULL && p < strchr(args[i], '=')) + break; + } + if (args[i] == NULL) + return args; + + /* there are. replace their values with */ + t_array_init(&new_args, i + 16); + array_append(&new_args, args, i); + for (; args[i] != NULL; i++) { + p = strstr(args[i], "pass"); + p2 = strchr(args[i], '='); + if (p != NULL && p < p2) { + p = t_strconcat(t_strdup_until(args[i], p2), + "=", NULL); + array_push_back(&new_args, &p); + } else { + array_push_back(&new_args, &args[i]); + } + } + array_append_zero(&new_args); + return array_front(&new_args); +} + void auth_user_info_export(string_t *str, const struct auth_user_info *info) { const char *const *fieldp;