/[smeserver]/rpms/smeserver-qpsmtpd/sme8/smeserver-qpsmtpd-1.2.1-keeptnef.patch
ViewVC logotype

Contents of /rpms/smeserver-qpsmtpd/sme8/smeserver-qpsmtpd-1.2.1-keeptnef.patch

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.2 - (show annotations) (download)
Tue Oct 7 15:06:54 2008 UTC (15 years, 7 months ago) by slords
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +0 -0 lines
FILE REMOVED
New streams

1 diff -Nur -x '*.orig' -x '*.rej' smeserver-qpsmtpd-1.2.1/root/usr/share/qpsmtpd/plugins/tnef2mime mezzanine_patched_smeserver-qpsmtpd-1.2.1/root/usr/share/qpsmtpd/plugins/tnef2mime
2 --- smeserver-qpsmtpd-1.2.1/root/usr/share/qpsmtpd/plugins/tnef2mime 2007-01-27 16:29:42.000000000 -0700
3 +++ mezzanine_patched_smeserver-qpsmtpd-1.2.1/root/usr/share/qpsmtpd/plugins/tnef2mime 2007-01-27 16:29:26.000000000 -0700
4 @@ -40,6 +40,13 @@
5 $self->register_hook("data_post", "tnef2mime");
6 }
7
8 +sub hasMessageClassProperty {
9 + my $self = shift;
10 + my $data = $self->data("Attachment");
11 + return 0 unless $data;
12 + return index( $data, pack( "H*", "8008" ) ) >= 0;
13 +}
14 +
15 # for future use
16 sub kill_part ($)
17 {
18 @@ -68,19 +75,35 @@
19 # if $tnef is undefined here, the application/octet-stream was not a ms-tnef and we are done.
20 return 1 if( ! defined $tnef );
21
22 + my $keep_tnef=0;
23 for ($tnef->attachments)
24 {
25 next if !defined $_->datahandle;
26 +
27 + if( hasMessageClassProperty($_) ) # Outlook MAPI object
28 + {
29 + $keep_tnef++;
30 + $self->log(LOGWARN, sprintf "Outlook MAPI object #%i: %s", $keep_tnef, $_->longname);
31 + next;
32 + }
33 +
34 my $mimetype = $mm->checktype_filename( $_->datahandle->path );
35 $attachments[$count] = MIME::Entity->build(
36 Path=>$_->datahandle->path,
37 Filename=>$_->longname,
38 Encoding=>"base64",
39 Type=>$mimetype );
40 - $self->log(LOGDEBUG,
41 - sprintf "converted attachment #%i: %s (%s, %ld bytes)", $count+1, $_->longname, $mimetype, $_->size );
42 + $self->log(LOGWARN,
43 + sprintf "File attachment #%i: %s (%s, %ld bytes)", $count+1, $_->longname, $mimetype, $_->size );
44 $count++;
45 }
46 +
47 + if( $keep_tnef )
48 + {
49 + $attachments[$count++] = $part;
50 + $self->log(LOGWARN, "Original TNEF file attached." );
51 + }
52 +
53 push( @tnefs, $tnef ); # remind for cleanup
54 $foundtnef=1;
55 return 0;

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed