Zaloguj się

Jog Jajcusia

xmpp:jajcus@jajcus.net

Czyżby libxml2 to był zły wybór?

Zaczynam wątpić w to że użycie libxml2 w PyXMPP to był naprawdę dobry wybór. I to nie z tego powodu, że ta biblioteka, wraz z modułem pythonowym jest dość trudno dostępna dla użytkownika końcowego. Chodzi raczej o podejście developerów libxml2. A może po prostu ja byłem głupi zakładając że interfejs SAX, czyli strumieniowy, będzie mnie informował o zdarzeniach na bieżąco. Czyli że np. informację o początku elementu dostaję zaraz po przeczytaniu całego taga początkowego, a nie po rozpoczęciu kolejnego elementu. W każdym razie po uaktualnieniu (zresztą podyktowanym względami bezpieczeństwa) libxml2 do wersji 2.6.7 PyXMPP i wszystko co z niego korzysta (a więc CJC i JJIGW) przestaje działać. I nie będzie działać, póki autorzy libxml2 nie cofną tego feature'a, albo ja nie przygotuję obejścia (ręcznego wstępnego parsowania strumienia XML przed przekazaniem go do parsera XML).

Routerek 3Coma nadal działa, ale zdążył nas zaskoczyć. Konfiguracja firewalla, która miała zablokować dostęp po TCP i UDP do routera, zablokowała cały ruch TCP i UDP przechodzący przez router. Okazało się że w ACLach w tym routerze maski adresów IP mają odwrotne znaczenie niż gdzie indziej (chociaż może w innych routerach jest tak samo) i adres z maską 255.255.255.255 oznacza dowolny adres, a jak chcę złapać ten jeden konkretny, to muszę użyć maski 0.0.0.0. Dziwne, ale teraz działa.

Postawiłem i wczoraj w końcu skonfigurowałem zgodnie z życzeniami użytkowników serwerek Quake3 na firmowym serwerze games.bnet.pl. Gostki przez dwa tygodnie za mną chodzili w tej sprawie. Podziwiam ich cierpliwość. :-)

A'propos gier. Doszedłem to tego, czemu mi się komp przy OpenGL wywalał - nie miałem modułu via-agp załadowanego, a obsługa DRI na Rage128 w trybie PCI najwyraźniej się sypie. A samo agpgart już nie wystarcza. Obejrzałem sobie UFO: Alien Invasion - może z tego być niezła gierka.

3 komentarze do wpisu „Czyżby libxml2 to był zły wybór?”


Zrobiłem to

Wydałem jabber-gg-transport 2.0.8. Trzeba było wreszcie to zrobić, bo 2.0.7 wykrzaczało się że aż wstyd. W CVS już dawno leżały odpowiednie poprawki (dziękuję wszystkim którzy je przygotowali albo pomogli mi je przygotować), ale dopiero dzisiaj zrobiłem „release”. Oto lista najważniejszych zmian:

  • Wyłączony import kontaktów z serwera GG. Po zmianie protokołu i tak nie działał, a powodował wykrzaczanie się całego transportu.
  • Poprawki pozwalające użyć transport z serwerem jabberd 2.0.
  • Poprawiony błąd powodujący zwis przy ponownej rejestracji w transporcie.
  • Poprawiony błąd powodujący wykrzaczanie się transportu po odebraniu <presence> z pustym <priority>.
  • Poprawiona rejestracja transportu w rosterze użytkownika - już nie powinien on się pojawiać w rosterze dwa razy.
  • Poprawiona funkcja licząca skrót SHA tak, aby działała poprawnie na architekturach 64-bitowych (w tym na moich Opteronach).
  • Oraz parę mniej istotnych poprawek.

A teraz z innej beczki. Zainstalowałem na serwerach pocztowych amavisd+ClamAV. Działają ślicznie, ale otrzymywałem skargi że niektóre wiadomości nie dochodzą. Okazało się, że chodziło o majle które zostały odrzucone za 8-bitowe znaki w nagłówkach (zabronione przez RFC 2822). Odrzucanie źle sformatowanych wiadomości ma duży sens, bo nigdy nie wiadomo czy Outlook tak samo zinterpretuje jej zawartość jak antywirus i po prostu wirus mógłby umknąć. Na takim bugtraqu są zgodne opinie że „be liberal in what you receive” w przypadku poczty i antywirusów powoduje tylko problemy. A więc nie mam zamiaru przyjmować wiadomości łamiących podstawowe standardy (userom dałem wybór - mogą sobie to wyłączyć).

W logach sprawdziłem co to za wiadomości są odrzucane. Ta wiadomość o której było tyle krzyku to najwyraźniej z jakiegoś walniętego albo źle skonfigurowanego Outlooka, z niezakodowanym „Środkowoeuropejski” w polu „Date: ”. Ale takich było wśród odrzuconych niewiele. Większość to majle słane automatem z różnych serwisów WWW (w większości w PHP). Jakoś mnie to nie dziwi. Zawsze uważałem że olewanie (a raczej ignorancja w tej dziedzinie) standardów jest podobna do użytkowników PHP. Ale pewnie jestem uprzedzony...

Na koniec jeden link: Head over Heels. Wkleiłem już go do komentarza na blogu Zgody, ale uznałem że na głównej stronie też powinien się pojawić. Bardzo sympatyczna gierka. Nie poświęcam wiele czasu na granie (mam go zawsze mało, szkoda mi go na takie przyjemności), ale 19% udało już mi się zrobić. :-)

4 komentarze do wpisu „Zrobiłem to”



Jesteście obserwowani...