DKIM: fix verify under TLS & chunking, with pipelined next command
[exim.git] / src / src / tls-gnu.c
index 7d434f6afe06db7758c35b7045373e5b4f14f87d..796581b0e70fe2bbe8d89ef030763b5086d8ce5d 100644 (file)
@@ -3877,12 +3877,15 @@ return buf;
 }
 
 
+/* Get up to the given number of bytes from any cached data, and feed to dkim. */
 void
-tls_get_cache(void)
+tls_get_cache(unsigned lim)
 {
 #ifndef DISABLE_DKIM
 exim_gnutls_state_st * state = &state_server;
 int n = state->xfer_buffer_hwm - state->xfer_buffer_lwm;
+if (n > lim)
+  n = lim;
 if (n > 0)
   dkim_exim_verify_feed(state->xfer_buffer+state->xfer_buffer_lwm, n);
 #endif