]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
submission-login: submission-proxy - Fix assert calls in submission_proxy_parse_line()
authorStephan Bosch <stephan.bosch@open-xchange.com>
Thu, 27 Nov 2025 23:45:44 +0000 (00:45 +0100)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Mon, 1 Dec 2025 06:50:46 +0000 (06:50 +0000)
src/submission-login/submission-proxy.c

index a23a8c02b5efe1c2bec8aa706709c61d72933ecd..c239040b6c3f6f6b7bc3b572330e9313ec343acb 100644 (file)
@@ -489,18 +489,20 @@ submission_proxy_handle_redirect(struct client *client, unsigned int status,
 
 int submission_proxy_parse_line(struct client *client, const char *line)
 {
+       i_assert(!client->destroyed);
+
        struct submission_client *subm_client =
                container_of(client, struct submission_client, common);
        struct smtp_server_cmd_ctx *cmd = subm_client->auth_cmd;
+
+       i_assert(cmd != NULL);
+
        struct smtp_server_command *command = cmd->cmd;
        struct ostream *output;
        bool last_line = FALSE, invalid_line = FALSE;
        const char *suffix, *text = NULL, *enh_code = NULL;
        unsigned int status = 0;
 
-       i_assert(!client->destroyed);
-       i_assert(cmd != NULL);
-
        if ((line[3] != ' ' && line[3] != '-') ||
            str_parse_uint(line, &status, &text) < 0 ||
            status < 200 || status >= 560) {