META: Co s MIME v konferenci

Jan Kasprzak kas na informatics.muni.cz
Pátek Září 7 11:18:34 CEST 2001


	Zdravim,

	dneska jsem se konecne procetl svym mailboxem v linux na linux.cz
za posledni cca mesic a protoze me dost veci zaujalo (diskuse o dynamickych
knihovnach), rozhodl jsem se, ze zase pro konferenci neco malo udelam :-)
Jde o problem s filtrovanim MIME casti, priloh, prekodovanim, atd. V prvni
fazi mi jde o vas nazor na to, jak do budoucna tohl resit.

	Nejprve k tomu, jak cely problem vznikl: za starych casu,
kdy temer zadny MUA nepodporoval diakritiku nebo MIME, byly zpravy
s diakritikou a/nebo v Quoted-Printable pro mnoho lidi necitelne
(zvlaste u znakovych terminalu). Navic hodne MUA posilalo diky podivne
implicitni konfiguraci do konference spoustu smeti (multipart/alternative
text/plain a text/html, vizitky ms-tnef, a tak podobne). Dalsi vec byla
ta, ze mnozi MUA neposilaji ceske texty v ISO-8859-2, ale ve Windows-1250.
Toto kodovani je sice take registrovano u IANA, nicmene nepatri mezi
sadu doporucenych kodovani, ktere by meli MUA podporovat (na rozdil
od ISO 8859-2). Navic nekteri MUA poslou text s diakritikou chybne oznaceny
jako ISO 8859-1.

	Nyni popis stavajiciho stavu: problem je resen dvema smery. Prvnim
z nich je MIME parser. Ten je postaveny na perlovych modulech MIME::*
a Cz::Cstocs a dela zhruba nasledujici:

- rozparsuje MIME zpravu do stromu
- pro kazdou cast udela:
	- z casti multipart/alternative necha jen prvni cast (podle MIME by
	  toto mela byt nejjednodussi cast, tedy obvykle text/plain
	- odstrani casti tech typu, ktere nechceme do konference vpoustet
	  (momentalne implementovano jako cokoli, co ma v nazvu jako podretezec
	  nektere z nasledujicich slov: text/html application/ms-tnef
	  word octet-stream).
	- pokud nyni nejaka multipart/* cast obsahuje jen jednu cast,
	  namisto multipart/* je ponechana opravdu jen tato jedna cast.
	- je-li cast typu text/plain, provadi se navic nasledujici:
		- zmeni se Content-Transfer-Encoding na 8bit.
		- je-li charset neuveden, nastavi se us-ascii.
		- je-li charset neco jineho nez us-ascii nebo iso-8859-2,
		  provede se prekodovani do iso-8859-2.

Do mailu se pridaji hlavicky X-MIME2LATIN2, ktere poskytuji udaje o provedene
transformaci. Takto transofrmovany MIME strom (je-li neprazdny) se posle do
konference.

	Druhym smerem reseni je sublist linux-ascii, ktery v podstate
funguje uplne stejne, jen prekodovani dela do us-ascii misto iso-8859-2.

	A ted jake jsou s tim problemy:
- vyse popsane transformace modifikuji zpravu, cili PGP/MIME a S/MIME
	signatury jsou jimi zneplatneny.
- obcas chce nekdo do konference prece jen poslat nejaky ten obrazek
	nebo HTML soubor
- obcas nekdo potrebuje i jine znaky, nez v ISO-8859-2

	Myslim, ze duvody ktere vedly k zavedeni tohoto
filtrovaciho systemu alespon zcasti trvaji. Za posledni dobu k nim pribyl
jeste jeden duvod, a to ten, ze temito filtry se vyrazne redukuje
mnozstvi spamu v konferenci (spam byva velmi casto posilan jako text/html)
a zamezi sireni viru pro legacy operacni systemy pres konferenci.

	Co by se mohlo zmenit:

- povolit image/* casti (asi bych je ale omezil velikosti). Sam ale tomuto
	kroku nejsem prilis naklonen. Obrazky si kdokoli muze vystavit
	nekde na webu.
- mozna mene agresivneji provadet prekodovani; napriklad jen
	Windows-1250 -> ISO 8859-2, ostatni nechat tak, jak to je.

Problem s kryptografickymi podpisy povazuji za okrajovy a neresil bych ho.

	Jake jsou vase nazory na tuto problematiku a pripadne moznosti
reseni? Prosim nechte puvodni Subject, at mohou ti kdo se o problem
nezajimaji smazat cely thread.

-Yenya

-- 
| Jan "Yenya" Kasprzak  <kas at {fi.muni.cz - work | yenya.net - private}> |
| GPG: ID 1024/D3498839      Fingerprint 0D99A7FB206605D7 8B35FCDE05B18A5E |
| http://www.fi.muni.cz/~kas/   Czech Linux Homepage: http://www.linux.cz/ |
|\    Do not meddle in the affairs of sysadmins, for they are quick to    /|
|\\   anger and have not need for subtlety.    (stolen from some /.er)   //|


Další informace o konferenci Linux