@@ -194,11 +194,11 @@ mime_get_decode_file(uschar *pname, uschar *fname)
194
194
FILE * f = NULL ;
195
195
uschar * filename ;
196
196
197
- filename = (uschar * )malloc (2048 );
197
+ filename = (uschar * )malloc (PATH_MAX );
198
198
199
199
if (pname && fname )
200
200
{
201
- (void )string_format (filename , 2048 , "%s/%s" , pname , fname );
201
+ (void )string_format (filename , PATH_MAX , "%s/%s" , pname , fname );
202
202
f = modefopen (filename ,"wb+" ,SPOOL_MODE );
203
203
}
204
204
else if (!pname )
@@ -212,7 +212,7 @@ else if (!fname)
212
212
do
213
213
{
214
214
struct stat mystat ;
215
- (void )string_format (filename , 2048 ,
215
+ (void )string_format (filename , PATH_MAX ,
216
216
"%s/%s-%05u" , pname , message_id , file_nr ++ );
217
217
/* security break */
218
218
if (file_nr >= 1024 )
@@ -236,8 +236,8 @@ mime_decode(const uschar **listptr)
236
236
int sep = 0 ;
237
237
const uschar * list = * listptr ;
238
238
uschar * option ;
239
- uschar option_buffer [1024 ];
240
- uschar decode_path [1024 ];
239
+ uschar option_buffer [PATH_MAX ];
240
+ uschar decode_path [PATH_MAX ];
241
241
FILE * decode_file = NULL ;
242
242
long f_pos = 0 ;
243
243
ssize_t size_counter = 0 ;
@@ -249,7 +249,7 @@ if (mime_stream == NULL)
249
249
f_pos = ftell (mime_stream );
250
250
251
251
/* build default decode path (will exist since MBOX must be spooled up) */
252
- (void )string_format (decode_path ,1024 ,"%s/scan/%s" ,spool_directory ,message_id );
252
+ (void )string_format (decode_path ,PATH_MAX ,"%s/scan/%s" ,spool_directory ,message_id );
253
253
254
254
/* try to find 1st option */
255
255
if ((option = string_nextinlist (& list , & sep ,
@@ -783,15 +783,15 @@ while(1)
783
783
(Ustrncmp (mime_content_type ,"message/rfc822" ,14 ) == 0 ) )
784
784
{
785
785
const uschar * rfc822name = NULL ;
786
- uschar filename [2048 ];
786
+ uschar filename [PATH_MAX ];
787
787
int file_nr = 0 ;
788
788
int result = 0 ;
789
789
790
790
/* must find first free sequential filename */
791
791
do
792
792
{
793
793
struct stat mystat ;
794
- (void )string_format (filename , 2048 ,
794
+ (void )string_format (filename , PATH_MAX ,
795
795
"%s/scan/%s/__rfc822_%05u" , spool_directory , message_id , file_nr ++ );
796
796
/* security break */
797
797
if (file_nr >= 128 )
0 commit comments