[imp] IMP and virus checking

Michael Redinger Michael.Redinger@uibk.ac.at
Sun, 6 Jan 2002 20:36:45 +0100 (CET)


---------------------- multipart/mixed attachment
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Sun, 6 Jan 2002, Jan Schneider wrote:

> This one is a bug in the pear library then, not in IMP. You can try a newer 
> version to find out if it's already fixed or fix the code yourself (in 
> Mail/smtp.php) and send the patch to us or the pear mailing list. Chuck 
> also works on the Mail modules in PEAR.


I'll have a look into this.
However, for all of those that don't have an SMTP server that checks for
viruses, here's a small patch (against compose.php) that checks uploaded files
before attaching them.
The function expects an array - the first item is the return message from
the scanner, the second the exit code of the virus scanner.

Attached you also find an example how to use this hook for 
McAfee VirusScan for UNIX.

For other languages the error message needs to be translated.


Michael


-----BEGIN PGP SIGNATURE-----
Version: PGP 6.5.8

iQA/AwUBPDinUg/XqdllwsEdEQL7jQCdHrkWHwBtP4j/NIevb1Bq80bcPK8An1Yo
TSTkvhHU1gSHqmU7UMQN1Kx6
=hang
-----END PGP SIGNATURE-----


---------------------- multipart/mixed attachment
LS0tIGNvbXBvc2UucGhwLm9yaWcJU3VuIEphbiAgNiAyMDoxODozMiAyMDAy
DQorKysgY29tcG9zZS5waHAJU3VuIEphbiAgNiAyMDoyMDoxNyAyMDAyDQpA
QCAtMjg5LDYgKzI4OSwzMyBAQA0KICAgICB9DQogfQ0KIA0KKw0KKy8qKg0K
KyAqIFNjYW4gYXR0YWNobWVudCBmb3IgdmlydXMNCisgKg0KKyAqIEBwYXJh
bSBzdHJpbmcgJGZpbGUgICAgICB0aGUgZmlsZSB0byBzY2FuDQorICoNCisg
Ki8NCitmdW5jdGlvbiB2aXJ1c19zY2FuKCRmaWxlKQ0KK3sNCisgICAgZ2xv
YmFsICRjb25mOw0KKw0KKyAgICBpZiAoIWVtcHR5KCRjb25mWydob29rcydd
Wyd2aXJ1c2NoZWNrJ10pKSB7DQorICAgICRmZD1mb3BlbignL3RtcC92cycs
ICd3Jyk7ZndyaXRlKCRmZCwiMSIpO2ZjbG9zZSgkZmQpOyB9DQorICAgIGlm
ICghZW1wdHkoJGNvbmZbJ2hvb2tzJ11bJ3ZpcnVzY2hlY2snXSkgJiYgZnVu
Y3Rpb25fZXhpc3RzKCRjb25mWydob29rcyddWyd2aXJ1c2NoZWNrJ10pKSB7
DQorICAgICAgICRmZD1mb3BlbignL3RtcC92cycsICd3Jyk7ZndyaXRlKCRm
ZCwiMSIpO2ZjbG9zZSgkZmQpOw0KKyAgICAgICAkdmlyX3Jlcz1jYWxsX3Vz
ZXJfZnVuYygkY29uZlsnaG9va3MnXVsndmlydXNjaGVjayddLCAkZmlsZSk7
DQorICAgICAgIGlmICggaXNfYXJyYXkoJHZpcl9yZXMpKSB7DQorICAgICAg
ICAgIGlmICggaXNfc3RyaW5nKCR2aXJfcmVzWzBdKSAmJiBpc19pbnRlZ2Vy
KCR2aXJfcmVzWzFdKSApIHsNCisgICAgICAgICAgICAgICByZXR1cm4gXygi
VGhlIGF0dGFjaG1lbnQgY29udGFpbnMgYSB2aXJ1cy4gVGhlIHZpcnVzIHNj
YW5uZXIgcmVwb3J0ZWQ6ICIpIC4gJHZpcl9yZXNbMF0gLiAiICggIiAgLiAk
dmlyX3Jlc1sxXSAuICIpIjsNCisgICAgICAgICAgfSBlbHNlIHsNCisgICAg
ICAgICAgICAgcmV0dXJuIF8oIlRoZSB2aXJ1cyBzY2FubmVyIHJldHVybmVk
IHVuZXhwZWN0ZWQgdmFsdWVzLiIpOw0KKyAgICAgICAgICB9DQorICAgICAg
IH0NCisgICAgfQ0KK30NCisNCisNCiBkZWZpbmUoJ0lNUF9CQVNFJywgZGly
bmFtZShfX0ZJTEVfXykpOw0KIA0KICRzZXNzaW9uX2NvbnRyb2wgPSAnbmV0
c2NhcGUnOw0KQEAgLTg3MSw2ICs4OTgsMTIgQEANCiAgICAgICAgICBIb3Jk
ZTo6cmFpc2VNZXNzYWdlKHNwcmludGYoXygiVGhlcmUgd2FzIGEgcHJvYmxl
bSB3aXRoIHRoZSBmaWxlIHVwbG9hZC4gVGhlIGZpbGUgbWF5IGhhdmUgYmVl
biBsYXJnZXIgdGhhbiB0aGUgbWF4aW11bSBhbGxvd2VkIHNpemUgKCVkIE1C
KS4iKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aW5pX2dldCgndXBsb2FkX21heF9maWxlc2l6ZScpKSwgSE9SREVfRVJST1Ip
Ow0KICAgICAgfSBlbHNlaWYgKCRIVFRQX1BPU1RfRklMRVNbJ2ZpbGVfdXBs
b2FkJ11bJ3NpemUnXSA+IDApIHsNCisgICAgICAgICAkcnZhbHVlPXZpcnVz
X3NjYW4oJEhUVFBfUE9TVF9GSUxFU1snZmlsZV91cGxvYWQnXVsndG1wX25h
bWUnXSk7DQorICAgICAgICAgaWYgKCFlbXB0eSgkcnZhbHVlKSkgew0KKyAg
ICAgICAgICAgIEhvcmRlOjpyYWlzZU1lc3NhZ2UoJHJ2YWx1ZSwgSE9SREVf
TUVTU0FHRSk7DQorICAgICAgICAgICAgdW5saW5rKCRIVFRQX1BPU1RfRklM
RVNbJ2ZpbGVfdXBsb2FkJ11bJ3RtcF9uYW1lJ10pOw0KKyAgICAgICAgICAg
IGJyZWFrOw0KKyAgICAgICAgIH0NCiAgICAgICAgICAkYXR0YWNobWVudCA9
IEhvcmRlOjpnZXRUZW1wRmlsZSgnaW1wYXR0JywgZmFsc2UpOw0KICAgICAg
ICAgICRIVFRQX1BPU1RfVkFSU1snYXR0YWNobWVudHNfbmFtZSddW10gPSAk
SFRUUF9QT1NUX0ZJTEVTWydmaWxlX3VwbG9hZCddWyduYW1lJ107DQogICAg
ICAgICAgJEhUVFBfUE9TVF9WQVJTWydhdHRhY2htZW50c19zaXplJ11bXSA9
ICRIVFRQX1BPU1RfRklMRVNbJ2ZpbGVfdXBsb2FkJ11bJ3NpemUnXTsNCg==
---------------------- multipart/mixed attachment
JGNvbmZbJ2hvb2tzJ11bJ3ZpcnVzY2hlY2snXSA9ICdpbXBfdmlydXNfc2Nh
bic7DQoNCmlmICghZnVuY3Rpb25fZXhpc3RzKCdpbXBfdmlydXNfc2Nhbicp
KSB7DQogICAgICAgIGZ1bmN0aW9uIGltcF92aXJ1c19zY2FuICgkZmlsZSkg
ew0KICAgICAgICAgICAgICAgIEBleGVjKCIvdXNyL2xvY2FsL2Jpbi91dnNj
YW4gIi4kZmlsZSwgJG91dHB1dCwgJGV4aXRjb2RlKTsNCiAgICAgICAgICAg
ICAgICBpZiAoICRleGl0Y29kZSA9PSAwICkgew0KICAgICAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgICAgICAgICAgfSBlbHNl
IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBhcnJheShpbXBs
b2RlKCIuICIsICRvdXRwdXQpLCAkZXhpdGNvZGUpOw0KICAgICAgICAgICAg
ICAgIH0NCiAgICAgICAgfQ0KfQ0KDQo=
---------------------- multipart/mixed attachment--