Cześć, chcę zaimplementować obsługę proxy dla gadu-gadu w Pidginie. Problem w tym, że: - ustawienia proxy w libgadu są globalne dla wszystkich połączeń - libgadu nie obsługuje (przynajmniej wg. dokumentacji) wszystkich rodzajów proxy, które obsługuje Pidgin
Najlepiej by było, jakby libgadu udostępniało możliwość rejestracji własnej funkcji nawiązującej połączenia, tak jak to jest zrobione z zapytaniami DNS (gg_global_set_custom_resolver). Można by to było łatwo zrobić, modyfikując funkcję gg_connect (dlaczego właściwie to jest deprecated?), ale ona nie otrzymuje informacji o sesji, w ramach której ma zostać użyta. Prosiłbym o podpowiedź, co mogę zrobić w tym kierunku. Chętnie zaimplementuję obsługę wspomnianych ficzerów, moja propozycja: - nowa funkcja gg_connect2 lub gg_connect_proxy, nawiązująca połączenie TCP (niezależnie, czy przez proxy czy nie, po prostu nawiązuje) z takimi samymi parametrami co gg_connect + wskaźnik na strukturę sesji - przeniesienie gg_connect do obsolete, implementacja poprzez wywołanie gg_connect_proxy z parametrem struktury sesji równym NULL - poprawienie wszystkich miejsc, w których jest używane gg_connect tak, żeby przekazywały też strukturę sesji Rozwiązało by to chyba też problem opisany w dokumentacji, że serwer pośredniczący nie jest wykorzystywany dla połączeń bezpośrednich. A może jest inne, prostsze rozwiązanie? Pozdrawiam, Tomek _______________________________________________ libgadu-devel mailing list libgadu-devel@lists.ziew.org http://lists.ziew.org/mailman/listinfo/libgadu-devel