Studium Szaleństwa

na granicy potępienia

UnrealIRCd 3.2 – kanaly a unicode.

09 cze 2009 21:08   ~samaelszafran   : IRC, Linux/Unix

To dzisiaj na moim blogu osoby niezainteresowane tematyką informatyczną się ponudzą.

Dzisiaj, drogie dzieci (tjaaa…) opowiem wam o zjawisku kanałów zawierających znaki unicode w swoich nazwach. Ale o co chodzi?

‘Znaczki’ o które mi chodzi to różne specjalne znaki, typu:  €, ث, ©, ñ, á. Oczywiście na serwerach opartych o unreala można dołączyć na kanały zawierające takie znaki w nazwach, nawet je rejestrować w serwisach. Nie powinno tak być.

Dlaczego?

Kodowanie. Każdy może mieć inne kodowanie, przez co nie wszystkie znaki wyświetlane są poprawnie. Przykładowo:

użytkownik dołączył do kanału #€, jego zestaw znaków to unicode UTF-8. Ja, korzystając z ISO-8859-2 widzę to jako #EUR. Próbując dołączyć do tego kanału, dołączam na #EUR, nie na #€.

Nawet jeśli mam UTF-8, ktoś może użyć innego kodowania, przez co nie będe w stanie prawidłowo dołączyć na ten kanał.

Zakładając że tworzy się tam jakiś ddosnet, dochodzi do łamania prawa, lub łamania regulaminu sieci, nie jestem w stanie jako administrator tego sprawdzić (no bo jak mogę kontrolować kanał nie mogąc do niego dołączyć?).

Dodatkowo, niektóre znaki unicode w nazwach kanałów powodują błędne działanie IRCd. Znikające okna, kanały-duchy… No ale jak temu zapobiec?

Kolega Tril, na potrzeby naszej sieci,  napisał mały moduł który uniemożliwia dołączanie do kanałów posiadających inne znaki niż [A-Za-z0-9-_.]. Moduł pobrać można z >tego linku<

Jeszcze mała instrukcja jak zainstalować moduł:

cd /home/samaelszafran/Unreal3.2/src/modules
wget http://blog.samaelszafran.pl/download/m_chanchar.c
cd ../..
make custommodule MODULEFILE=m_chanchar
make install #tylko jesli zainstalowalismy Unreala w innej sciezce.

Następnie dodajemy w configu następującą linijkę:

loadmodule "src/modules/m_chanchar.so";

No. To na tyle. Dobranoc Państwu ;)

Zostaw komentarz

aby udowodnić że nie jesteś botem, przepisz kod z obrazka.
Anti-Spam Image

Subscribe to Studium Szaleństwa