Autoreply: Remove Exim version 3 campatibility code
[exim.git] / src / src / transports / autoreply.c
index 42466875a393ec29709910a7893697e100fbcbe6..690ec4a92a83756f8be0a6f615f44ec562d6c635 100644 (file)
@@ -5,9 +5,12 @@
 /* Copyright (c) The Exim Maintainers 2020 - 2022 */
 /* Copyright (c) University of Cambridge 1995 - 2018 */
 /* See the file NOTICE for conditions of use and distribution. */
+/* SPDX-License-Identifier: GPL-2.0-or-later */
 
 
 #include "../exim.h"
+
+#ifdef TRANSPORT_AUTOREPLY     /* Remainder of file */
 #include "autoreply.h"
 
 
@@ -313,20 +316,21 @@ if (addr->reply)
   }
 else
   {
-  uschar *oncerepeat = ob->once_repeat;
+  uschar * oncerepeat;
 
   DEBUG(D_transport) debug_printf("taking data from transport\n");
-  from = ob->from;
-  reply_to = ob->reply_to;
-  to = ob->to;
-  cc = ob->cc;
-  bcc = ob->bcc;
-  subject = ob->subject;
-  headers = ob->headers;
-  text = ob->text;
-  file = ob->file;
-  logfile = ob->logfile;
-  oncelog = ob->oncelog;
+  GET_OPTION("once_repeat");   oncerepeat = ob->once_repeat;
+  GET_OPTION("from");          from = ob->from;
+  GET_OPTION("reply_to");      reply_to = ob->reply_to;
+  GET_OPTION("to");            to = ob->to;
+  GET_OPTION("cc");            cc = ob->cc;
+  GET_OPTION("bcc");           bcc = ob->bcc;
+  GET_OPTION("subject");       subject = ob->subject;
+  GET_OPTION("headers");       headers = ob->headers;
+  GET_OPTION("text");          text = ob->text;
+  GET_OPTION("file");          file = ob->file;
+  GET_OPTION("log");           logfile = ob->logfile;
+  GET_OPTION("once");          oncelog = ob->oncelog;
   file_expand = ob->file_expand;
   return_message = ob->return_message;
 
@@ -492,19 +496,7 @@ if (oncelog && *oncelog && to)
     exim_datum_size_set(&key_datum, Ustrlen(to) + 1);
 
     if (exim_dbget(dbm_file, &key_datum, &result_datum))
-      {
-      /* If the datum size is that of a binary time, we are in the new world
-      where messages are sent periodically. Otherwise the file is an old one,
-      where the datum was filled with a tod_log time, which is assumed to be
-      different in size. For that, only one message is ever sent. This change
-      introduced at Exim 3.00. In a couple of years' time the test on the size
-      can be abolished. */
-
-      if (exim_datum_size_get(&result_datum) == sizeof(time_t))
-        memcpy(&then, exim_datum_data_get(&result_datum), sizeof(time_t));
-      else
-        then = now;
-      }
+      memcpy(&then, exim_datum_data_get(&result_datum), sizeof(time_t));
     }
 
   /* Either "then" is set zero, if no message has yet been sent, or it
@@ -623,7 +615,6 @@ if (text)
 
 if (ff)
   {
-debug_printf("%s %d: ff\n", __FUNCTION__, __LINE__);
   while (Ufgets(big_buffer, big_buffer_size, ff) != NULL)
     {
     if (file_expand)
@@ -647,7 +638,6 @@ limit if we are returning the body. */
 
 if (return_message)
   {
-debug_printf("%s %d: ret msg\n", __FUNCTION__, __LINE__);
   uschar *rubric = tblock->headers_only
     ? US"------ This is a copy of the message's header lines.\n"
     : tblock->body_only
@@ -820,4 +810,5 @@ return FALSE;
 }
 
 #endif /*!MACRO_PREDEF*/
+#endif /*TRANSPORT_AUTOREPOL*/
 /* End of transport/autoreply.c */