Added minimum message length
Signed-off-by: Tyrolyean <tyrolyean@tyrolyean.net>
This commit is contained in:
parent
da6b92de07
commit
8c5cbe50e9
5 changed files with 25 additions and 1 deletions
11
README
11
README
|
@ -39,6 +39,17 @@ You can specify the following command line options:
|
||||||
webserver!
|
webserver!
|
||||||
That WILL BE a security riks!
|
That WILL BE a security riks!
|
||||||
|
|
||||||
|
--other-base64 --only-base64
|
||||||
|
Decides wether ONLY base64 encoded files should be removed from the
|
||||||
|
actual mail, or ALL files.
|
||||||
|
|
||||||
|
--minfilesize -s
|
||||||
|
The minimum file size which a file has to have before beeing attached.
|
||||||
|
Thissize is before base64 decoding if nescessary. Size is in bytes,
|
||||||
|
ONLY bytes. Do NOT prefix a M or K, it will not be parsed! Defaults to
|
||||||
|
500Kb. If 0 is specified, all files will be attached. A negative value
|
||||||
|
effectively disables us.
|
||||||
|
|
||||||
HOWTO
|
HOWTO
|
||||||
|
|
||||||
We essentially are MITM sniffing your email traffic and playing proxy from your
|
We essentially are MITM sniffing your email traffic and playing proxy from your
|
||||||
|
|
|
@ -33,5 +33,6 @@ extern int verbose;
|
||||||
extern char* directory;
|
extern char* directory;
|
||||||
extern char* url_base;
|
extern char* url_base;
|
||||||
|
|
||||||
|
extern long min_filesize;
|
||||||
|
|
||||||
#endif /* CONFIG_H */
|
#endif /* CONFIG_H */
|
||||||
|
|
|
@ -342,6 +342,10 @@ int replace_base64_files(struct email_t* mail, const char* dirname){
|
||||||
if(mail->file_info.name == NULL){
|
if(mail->file_info.name == NULL){
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
if((mail->message_length - mail->body_offset) < (unsigned long)
|
||||||
|
min_filesize ){
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
if(mail->base64_encoded){
|
if(mail->base64_encoded){
|
||||||
if(base64_decode_file(dirname, mail) < 0){
|
if(base64_decode_file(dirname, mail) < 0){
|
||||||
|
|
|
@ -28,3 +28,4 @@ char* directory = NULL;
|
||||||
char* url_base = NULL;
|
char* url_base = NULL;
|
||||||
|
|
||||||
|
|
||||||
|
long min_filesize= 1024*512;
|
||||||
|
|
|
@ -36,13 +36,14 @@ int main(int argc, char* argv[]){
|
||||||
{"out-port", required_argument, 0, 'o'},
|
{"out-port", required_argument, 0, 'o'},
|
||||||
{"instance-id", required_argument, 0, 'n'},
|
{"instance-id", required_argument, 0, 'n'},
|
||||||
{"directory", required_argument, 0, 'd'},
|
{"directory", required_argument, 0, 'd'},
|
||||||
|
{"minfilesize", required_argument, 0, 's'},
|
||||||
{"url", required_argument, 0, 'u'},
|
{"url", required_argument, 0, 'u'},
|
||||||
{0, 0, 0, 0}
|
{0, 0, 0, 0}
|
||||||
};
|
};
|
||||||
/* getopt_long stores the option index here. */
|
/* getopt_long stores the option index here. */
|
||||||
int option_index = 0;
|
int option_index = 0;
|
||||||
|
|
||||||
c = getopt_long (argc, argv, "n:i:o:d:u:",
|
c = getopt_long (argc, argv, "n:i:o:d:u:s:",
|
||||||
long_options, &option_index);
|
long_options, &option_index);
|
||||||
|
|
||||||
/* Detect the end of the options. */
|
/* Detect the end of the options. */
|
||||||
|
@ -71,6 +72,9 @@ int main(int argc, char* argv[]){
|
||||||
case 'u':
|
case 'u':
|
||||||
url_base = optarg;
|
url_base = optarg;
|
||||||
break;
|
break;
|
||||||
|
case 's':
|
||||||
|
min_filesize = atol(optarg);
|
||||||
|
break;
|
||||||
|
|
||||||
case '?':
|
case '?':
|
||||||
/* getopt_long already printed an error message. */
|
/* getopt_long already printed an error message. */
|
||||||
|
@ -119,6 +123,9 @@ int main(int argc, char* argv[]){
|
||||||
|
|
||||||
printf("Only saving bas64 encoded files: %s\n",
|
printf("Only saving bas64 encoded files: %s\n",
|
||||||
only_base64 ? "true":"false");
|
only_base64 ? "true":"false");
|
||||||
|
|
||||||
|
printf("Min filesize to store messages: %liB\n",
|
||||||
|
min_filesize);
|
||||||
|
|
||||||
|
|
||||||
printf("Placing files into [%s] linked by [%s]\n", directory,
|
printf("Placing files into [%s] linked by [%s]\n", directory,
|
||||||
|
|
Loading…
Reference in a new issue