uschar *temp_string;
uschar *mbox_path;
FILE *mbox_file = NULL, *l_data_file = NULL, *yield = NULL;
-header_line *my_headerlist;
struct stat statbuf;
-int i, j;
-void *reset_point;
+int j;
+rmark reset_point;
mbox_path = string_sprintf("%s/scan/%s/%s.eml",
spool_directory, message_id, message_id);
if (mbox_fname) *mbox_fname = mbox_path;
-reset_point = store_get(0);
+reset_point = store_mark();
/* Skip creation if already spooled out as mbox file */
if (!spool_mbox_ok)
/* write all non-deleted header lines to mbox file */
- for (my_headerlist = header_list; my_headerlist;
+ for (header_line * my_headerlist = header_list; my_headerlist;
my_headerlist = my_headerlist->next)
if (my_headerlist->type != '*')
if (fwrite(my_headerlist->text, my_headerlist->slen, 1, mbox_file) != 1)
else
{
message_subdir[1] = '\0';
- for (i = 0; i < 2; i++)
+ for (int i = 0; i < 2; i++)
{
message_subdir[0] = split_spool_directory == (i == 0) ? message_id[5] : 0;
temp_string = spool_fname(US"input", message_subdir, message_id, US"-D");
{
uschar * s;
- if (!spool_file_wireformat || source_file_override)
+ if (!f.spool_file_wireformat || source_file_override)
j = fread(buffer, 1, sizeof(buffer), l_data_file);
else /* needs CRLF -> NL */
if ((s = US fgets(CS buffer, sizeof(buffer), l_data_file)))
spam_ok = 0;
malware_ok = 0;
-if (spool_mbox_ok && !no_mbox_unspool)
+if (spool_mbox_ok && !f.no_mbox_unspool)
{
- uschar *mbox_path;
uschar *file_path;
struct dirent *entry;
DIR *tempdir;
-
- mbox_path = string_sprintf("%s/scan/%s", spool_directory, spooled_message_id);
+ rmark reset_point = store_mark();
+ uschar * mbox_path = string_sprintf("%s/scan/%s", spool_directory, spooled_message_id);
if (!(tempdir = opendir(CS mbox_path)))
{
/* remove directory */
rmdir(CS mbox_path);
- store_reset(mbox_path);
+ store_reset(reset_point);
}
spool_mbox_ok = 0;
}