Procmail - pozor na bastleni
Ondrej Sury
sury.ondrej na globe.cz
Pondělí Říjen 14 11:01:24 CEST 2002
Lubos Kaspar <kaspar na cnb.cz> writes:
Pokud si upravite nasledujici skriptik, aby posilal jenom udaje z hlavicek,
tak se myslim da pouzit toto. (Obcas skript nezvladne zparsovat nektere
emaily, ktere nejsou korektni, ale mam za to, ze to jsou spamy, takze to
neresim.)
O.
#!/usr/bin/env python2.2
import email
import os
import email.Message as _msg
import string
msg = email.message_from_file(os.fdopen(0));
nmsg = _msg.Message()
recipient = os.getenv("RECIPIENT",msg['delivered-to'])
for label in ('From','To','Date','Subject'):
value = msg[label]
if value == 'None':
value = 'empty'
nmsg[label] = value;
for part in msg.walk():
if part.get_main_type('text').lower() == 'text':
for label in ('Content-Transfer-Encoding','Content-Type'):
if part[label] != None:
nmsg[label] = part[label]
payload = part.get_payload()
if payload == None:
payload = 'prazdne telo/empty body'
nmsg.add_payload('T:'+recipient+'-'+payload)
break
print nmsg.as_string()
>> From: "Martin Chocholous" <chocholous na astarta.sk>
>> To: sendmail na linux.cz
>> Date: Mon, 14 Oct 2002 10:33:47 +0200
>> Subject: Re: Procmail
>>
>> pozri moj dnesny mail () len vymen head za grep:
>>
>> SHELL=/bin/sh
>>
>> :0
>>
>> {
>> :0c: normal.lock
>> /var/spool/mail/a_test
>>
>> :0: forward.lock
>> | grep Subject \
>> | sendmail -oi chocholous na astarta.sk
>> }
>>
>> Mozno ma byt pred Subject strieska ("^")
>
> Vazeni pratele,
>
> jen bych rad upozornil, ze pri podobnych hratkach je zahodno
> mit na pameti strukturu zpravy podle RFC 2822 (resp. rozsireni
> MIME podle RFC 2045 az 2049 a dodatku). Konkretne tedy napr. to, ze
> smysluplne hledani subjektu je pouze v oblasti hlavicek, tj. pred
> 1. prazdnym radkem, klicove slovo musi by na zacatku radku a
> koncit dvojteckou, muze byt libovolne slozeno z malych a velkych
> pismen, obsah hlavicky muze byt i na vice radcich, muze byt
> kodovany podle RFC 2047 (narodni abeceda - tu je asi treba pri
> preposilani do SMS konvertovat na anglickou) atd. atd. Jednoducha
> udelatka podobna vyse uvedenemu nemuseji tedy zdaleka vest ke
> kyzenym vysledkum a v nadseni pro ne je asi na miste jista
> zdrzenlivost.
> --
> Lubos Kaspar
>
>
--
Ondrej Sury - CIO Globe Internet s.r.o. http://globe.cz/
Tel: +420(2)35365000 Fax: +420(2)35365009 Planickova 1, 162 00 Praha 6
Další informace o konferenci Sendmail