X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/f1e894f37fb99398f7447220925a915bd031491a..e0df1c8324f0e0c4112302fa473cff6a6110a044:/src/src/demime.c diff --git a/src/src/demime.c b/src/src/demime.c index 70125a53d..887678db3 100644 --- a/src/src/demime.c +++ b/src/src/demime.c @@ -1,5 +1,3 @@ -/* $Cambridge: exim/src/src/demime.c,v 1.6 2005/06/27 14:29:43 ph10 Exp $ */ - /************************************************* * Exim - an Internet mail transport agent * *************************************************/ @@ -47,7 +45,7 @@ int demime(uschar **listptr) { }; /* make sure the eml mbox file is spooled up */ - mbox_file = spool_mbox(&mbox_size); + mbox_file = spool_mbox(&mbox_size, NULL); if (mbox_file == NULL) { /* error while spooling */ @@ -245,7 +243,7 @@ int mime_get_dump_file(uschar *extension, FILE **f, uschar *info) { do { struct stat mystat; - snprintf(CS file_name,1024,"%s/scan/%s/%s-%05u%s",spool_directory,message_id,message_id,file_nr,extension); + (void)string_format(file_name,1024,"%s/scan/%s/%s-%05u%s",spool_directory,message_id,message_id,file_nr,extension); file_nr++; if (file_nr >= MIME_SANITY_MAX_DUMP_FILES) { /* max parts reached */ @@ -256,10 +254,10 @@ int mime_get_dump_file(uschar *extension, FILE **f, uschar *info) { } while(result != -1); - *f = fopen(CS file_name,"w+"); + *f = modefopen(file_name,"wb+",SPOOL_MODE); if (*f == NULL) { /* cannot open new dump file, disk full ? -> soft error */ - snprintf(CS info, 1024,"unable to open dump file"); + (void)string_format(info, 1024,"unable to open dump file"); return -2; }; @@ -533,13 +531,13 @@ long uu_decode_line(uschar *line, uschar **data, long line_len, uschar *info) { /* allocate memory for data and work buffer */ *data = (uschar *)malloc(line_len); if (*data == NULL) { - snprintf(CS info, 1024,"unable to allocate %lu bytes",line_len); + (void)string_format(info, 1024,"unable to allocate %lu bytes",line_len); return -2; }; work = (uschar *)malloc(line_len); if (work == NULL) { - snprintf(CS info, 1024,"unable to allocate %lu bytes",line_len); + (void)string_format(info, 1024,"unable to allocate %lu bytes",line_len); return -2; }; @@ -656,7 +654,7 @@ long mime_decode_line(int mime_demux_mode,uschar *line, uschar **data, long max_ /* allocate memory for data */ *data = (uschar *)malloc(max_data_len); if (*data == NULL) { - snprintf(CS info, 1024,"unable to allocate %lu bytes",max_data_len); + (void)string_format(info, 1024,"unable to allocate %lu bytes",max_data_len); return -2; }; @@ -820,10 +818,10 @@ void mime_trigger_error(int level, uschar *format, ...) { sprintf(f,"demime acl condition: "); f+=22; va_start(ap, format); - vsnprintf(f, 16383,(char *)format, ap); + (void)string_vformat(US f, 16383,(char *)format, ap); va_end(ap); f-=22; - log_write(0, LOG_MAIN, f); + log_write(0, LOG_MAIN, "%s", f); /* then copy to demime_reason_buffer if new level is greater than old level */ if (level > demime_errorlevel) { @@ -866,7 +864,7 @@ int mime_demux(FILE *f, uschar *info) { /* allocate room for our linebuffer */ line = (uschar *)malloc(MIME_SANITY_MAX_LINE_LENGTH); if (line == NULL) { - snprintf(CS info, 1024,"unable to allocate %u bytes",MIME_SANITY_MAX_LINE_LENGTH); + (void)string_format(info, 1024,"unable to allocate %u bytes",MIME_SANITY_MAX_LINE_LENGTH); return DEFER; }; @@ -1126,7 +1124,7 @@ int mime_demux(FILE *f, uschar *info) { if (data_len > 0) { if (fwrite(data,1,data_len,uu_dump_file) < data_len) { /* short write */ - snprintf(CS info, 1024,"short write on uudecode dump file"); + (void)string_format(info, 1024,"short write on uudecode dump file"); free(line); return DEFER; }; @@ -1192,7 +1190,7 @@ int mime_demux(FILE *f, uschar *info) { if (data_len > 0) { if (fwrite(data,1,data_len,mime_dump_file) < data_len) { /* short write */ - snprintf(CS info, 1024,"short write on dump file"); + (void)string_format(info, 1024,"short write on dump file"); free(line); return DEFER; }; @@ -1234,7 +1232,7 @@ int mime_demux(FILE *f, uschar *info) { /* at least one file could be TNEF encoded. attempt to send all decoded files thru the TNEF decoder */ - snprintf(CS file_name,1024,"%s/scan/%s",spool_directory,message_id); + (void)string_format(file_name,1024,"%s/scan/%s",spool_directory,message_id); /* Removed FTTB. We need to decide on TNEF inclusion */ /* mime_unpack_tnef(file_name); */ };