]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
submission: Actively enforce message size limit while copying message data.
authorStephan Bosch <stephan.bosch@dovecot.fi>
Fri, 6 Apr 2018 23:08:11 +0000 (01:08 +0200)
committerVille Savolainen <ville.savolainen@dovecot.fi>
Mon, 28 May 2018 06:16:13 +0000 (09:16 +0300)
src/submission/cmd-data.c

index 6b98bde3fe8508d52d4694059554e61ceeec0bbe..3b2cfaab8b55394b470b8400af8fe19d249ae815 100644 (file)
@@ -76,8 +76,11 @@ int cmd_data_continue(void *conn_ctx, struct smtp_server_cmd_ctx *cmd,
        size_t size;
        int ret;
 
-       while ((ret = i_stream_read_more(data_input, &data, &size)) > 0)
+       while ((ret = i_stream_read_more(data_input, &data, &size)) > 0) {
                i_stream_skip(data_input, size);
+               if (!smtp_server_cmd_data_check_size(cmd))
+                       return -1;
+       }
 
        if (ret == 0)
                return 0;