zrywanie połączeń z serwerem GG #30

Closed
civic9 opened this Issue Oct 10, 2013 · 18 comments

Comments

Projects
None yet
3 participants
@civic9

civic9 commented Oct 10, 2013

Cześć,

Od kilku dni przestał mi działać transport, działalo kilka lat, nic nie zmieniałem i teraz w ogóle nie chce.
Używałem co prawda starszej wersji - 2.2.4+libgadu 1.9.0,
ale przekompilowałem teraz libgadu 1.11.2 + jggtrans aktualny kod z gita i bez zmian.
Pod tcpdumpem widzę, że się łączy do serwera, wymana kilku pakietów i koniec połączenia.

Log z -d 10 -D 10:

2013-10-10 10:43:47 Debug: Zmiana statusu gg na 32770
** gg_change_status(0x1e91590, 32770);
** gg_send_packet(0x1e91590, 0x38, ...);
2013-10-10 10:43:47 Debug: gg_notify_ex(0x1e91590,0x1e916f0,0x1e9a600,45)
** gg_notify_ex(0x1e91590, 0x1e916f0, 0x1e9a600, 45);
** gg_send_packet(0x1e91590, 0x10, ...);
2013-10-10 10:43:47 Debug: OUT:
** gg_event_free(0x1e9a750);
2013-10-10 10:43:47 Debug: io handler kończy...
2013-10-10 10:43:47 Debug: Sprawdzanie warunków błedów...
2013-10-10 10:43:47 Debug: obserwowanie fd (gg_debug_level=10)...
** gg_watch_fd(0x1e91590);
** gg_recv_packet(0x1e91590);
2013-10-10 10:43:47 Uwaga: Connection broken. Session of user@jabber......pl/Pandion ,[GGnumber: ....]

Jakieś pomysły? U mnie się coś popsuło, czy GG zaczęło coś wykrywać i blokować?
Może przynajmniej ktoś da znać, że u niego nadal działa to będę wiedział, żeby kombinować u siebie (choć na razie pomysłów mi brak).

Dzięki.

@mky

This comment has been minimized.

Show comment
Hide comment
@mky

mky Oct 10, 2013

Potwierdzam, że mam to samo. Ze swojej strony, zaktualizowałem najpierw paczki. Konfiguracja mojego systemu jest następująca:

OS: FreeBSD 8.3-RELEASE-p11
Pakiety:

  • ejabberd-2.1.13
  • jggtrans-2.2.5
  • expat-2.1.0
  • glib-2.36.3
  • libidn-1.28_1
  • pl-libgadu-1.11.2,1

jggtrans jest skonfigurowany by brał listę serwerów z hub-a (bez SSL) + lista serwerów ze strony http://www.kadu.im/monitor/

Mimo aktualizacji, problem nie ustąpił. Połączenie są po chwili zrywane.

Z ciekawości sprawdziłem czy z tego samego IP da się podłączyć do serwerów GG innym programem. Do testów wziąłem ekg, skompilowane z tą samą biblioteką libgadu i udało się połączyć (odpaliłem dwie sesje na raz i pracowały).
U mnie problem pojawił się w nocy z wtorku na środę (8/9.10.2013).

Załączam wklejkę z pracy jggtrans z debug 5:

http://pastebin.com/raw.php?i=56xNWRLM

mky commented Oct 10, 2013

Potwierdzam, że mam to samo. Ze swojej strony, zaktualizowałem najpierw paczki. Konfiguracja mojego systemu jest następująca:

OS: FreeBSD 8.3-RELEASE-p11
Pakiety:

  • ejabberd-2.1.13
  • jggtrans-2.2.5
  • expat-2.1.0
  • glib-2.36.3
  • libidn-1.28_1
  • pl-libgadu-1.11.2,1

jggtrans jest skonfigurowany by brał listę serwerów z hub-a (bez SSL) + lista serwerów ze strony http://www.kadu.im/monitor/

Mimo aktualizacji, problem nie ustąpił. Połączenie są po chwili zrywane.

Z ciekawości sprawdziłem czy z tego samego IP da się podłączyć do serwerów GG innym programem. Do testów wziąłem ekg, skompilowane z tą samą biblioteką libgadu i udało się połączyć (odpaliłem dwie sesje na raz i pracowały).
U mnie problem pojawił się w nocy z wtorku na środę (8/9.10.2013).

Załączam wklejkę z pracy jggtrans z debug 5:

http://pastebin.com/raw.php?i=56xNWRLM

@ghost

This comment has been minimized.

Show comment
Hide comment
@ghost

ghost Oct 10, 2013

Niestety mam to samo ;/
Kombinowałem z najnowszym libgadu itd. Nic to nie dało.
Wydaje mi się, ze po stronie gadu-gadu nastąpiły jakieś zmiany.
Problem wystąpił u mnie również w środę.

ghost commented Oct 10, 2013

Niestety mam to samo ;/
Kombinowałem z najnowszym libgadu itd. Nic to nie dało.
Wydaje mi się, ze po stronie gadu-gadu nastąpiły jakieś zmiany.
Problem wystąpił u mnie również w środę.

@ghost

This comment has been minimized.

Show comment
Hide comment
@ghost

ghost Oct 10, 2013

jggtrans zaczął działać .

ghost commented Oct 10, 2013

jggtrans zaczął działać .

@mky

This comment has been minimized.

Show comment
Hide comment
@mky

mky Oct 10, 2013

Nie potwierdzam. U mnie nadal nie działa.

mky commented Oct 10, 2013

Nie potwierdzam. U mnie nadal nie działa.

@civic9

This comment has been minimized.

Show comment
Hide comment
@civic9

civic9 Oct 10, 2013

u mnie też nie działa :(

civic9 commented Oct 10, 2013

u mnie też nie działa :(

@ghost ghost assigned Jajcus Oct 11, 2013

@Jajcus

This comment has been minimized.

Show comment
Hide comment
@Jajcus

Jajcus Oct 11, 2013

Owner

Niestety, u mnie też nie działa i aktualnie nie bardzo mam możliwość się w to wgryźć.
Jeśli EKG działa, a jggtrans z tym samym libgadu nie, to jest to do poprawienia – trzeba by porównać opcje połączeń jakich używa EKG i jakich używa libgadu. A może zmieniło się coś ostatnio w libgadu i EKG zostało odpowiednio uaktualnione, a JGGTrans nie?

Nie sądzę żeby GG zaczęło coś „wykrywać” i specjalnie blokować – teraz użytkowników Jabbera i transportu jest tak niewiele, że nie sądzę, żeby ktokolwiek się tym przejmował.

Owner

Jajcus commented Oct 11, 2013

Niestety, u mnie też nie działa i aktualnie nie bardzo mam możliwość się w to wgryźć.
Jeśli EKG działa, a jggtrans z tym samym libgadu nie, to jest to do poprawienia – trzeba by porównać opcje połączeń jakich używa EKG i jakich używa libgadu. A może zmieniło się coś ostatnio w libgadu i EKG zostało odpowiednio uaktualnione, a JGGTrans nie?

Nie sądzę żeby GG zaczęło coś „wykrywać” i specjalnie blokować – teraz użytkowników Jabbera i transportu jest tak niewiele, że nie sądzę, żeby ktokolwiek się tym przejmował.

@ghost

This comment has been minimized.

Show comment
Hide comment
@ghost

ghost Oct 11, 2013

Obecnie mam wersje Jabber GaduGadu Transport 2.2.4+xk1 - modyfikacja xio
Kompilowane z libgadu 1.9.0-rc3 .
Po odpaleniu takiej kombinacji zaczęło mi działać, chociaż nie od razu.

ghost commented Oct 11, 2013

Obecnie mam wersje Jabber GaduGadu Transport 2.2.4+xk1 - modyfikacja xio
Kompilowane z libgadu 1.9.0-rc3 .
Po odpaleniu takiej kombinacji zaczęło mi działać, chociaż nie od razu.

@Jajcus

This comment has been minimized.

Show comment
Hide comment
@Jajcus

Jajcus Oct 14, 2013

Owner

@bajtek skąd masz tą 'modyfikację xio'?

Owner

Jajcus commented Oct 14, 2013

@bajtek skąd masz tą 'modyfikację xio'?

@ghost

This comment has been minimized.

Show comment
Hide comment

ghost commented Oct 14, 2013

z https://github.com/jabberd2/transports to są modyfikacje smokku.

@Jajcus

This comment has been minimized.

Show comment
Hide comment
@Jajcus

Jajcus Oct 14, 2013

Owner

Hmmm… teraz widzę, że jeden użytkownik mojego serwera łączy się z GG poprawnie, reszta traci połączenie zaraz po zalogowaniu… ciekawe czemu tak…

Owner

Jajcus commented Oct 14, 2013

Hmmm… teraz widzę, że jeden użytkownik mojego serwera łączy się z GG poprawnie, reszta traci połączenie zaraz po zalogowaniu… ciekawe czemu tak…

@ghost

This comment has been minimized.

Show comment
Hide comment
@ghost

ghost Oct 14, 2013

Ja muszę wykonać serię logowań, aż "zaskoczy" . Jednak łączy z różnymi adresami IP.

ghost commented Oct 14, 2013

Ja muszę wykonać serię logowań, aż "zaskoczy" . Jednak łączy z różnymi adresami IP.

@Jajcus

This comment has been minimized.

Show comment
Hide comment
@Jajcus

Jajcus Oct 16, 2013

Owner

Udało mi się stwierdzić, że problem jest związany z operacjami na liście kontaktów GG. Wyłączyłem wszystkie wywołania gg_*notify_ex() i się nie rozłącza… ale to jeszcze nie rozwiązanie…

Owner

Jajcus commented Oct 16, 2013

Udało mi się stwierdzić, że problem jest związany z operacjami na liście kontaktów GG. Wyłączyłem wszystkie wywołania gg_*notify_ex() i się nie rozłącza… ale to jeszcze nie rozwiązanie…

Jajcus added a commit that referenced this issue Oct 16, 2013

Extra debugging code added
For troubleshooting issue #30

Jajcus added a commit that referenced this issue Oct 16, 2013

Use only OFFLINE, NORMAL and BLOCKED notify types
GaduGadu servers now reject anything else by dropping the connection.

fixes issue #30
@Jajcus

This comment has been minimized.

Show comment
Hide comment
@Jajcus

Jajcus Oct 16, 2013

Owner

Chyba naprawione. Jak potwierdzicie, to wydam nową wersję.

Sorry, że wcześniej nie byłem w stanie się za to porządnie zabrać.

Owner

Jajcus commented Oct 16, 2013

Chyba naprawione. Jak potwierdzicie, to wydam nową wersję.

Sorry, że wcześniej nie byłem w stanie się za to porządnie zabrać.

@Jajcus Jajcus closed this Oct 16, 2013

@mky

This comment has been minimized.

Show comment
Hide comment
@mky

mky Oct 16, 2013

Przekompilowałem i zaczął się łączyć. Jak na razie podłączyłem dwie sesje po transporcie które działają. Na więcej userów będę musiał poczekać, ale wydaje mi się problem usunięty :)

mky commented Oct 16, 2013

Przekompilowałem i zaczął się łączyć. Jak na razie podłączyłem dwie sesje po transporcie które działają. Na więcej userów będę musiał poczekać, ale wydaje mi się problem usunięty :)

@ghost

This comment has been minimized.

Show comment
Hide comment
@ghost

ghost Oct 16, 2013

Wielkie dzięki. Po przekompilowaniu łączy jak należy ;) Dlaczego ten problem wystąpił akurat teraz ?

ghost commented Oct 16, 2013

Wielkie dzięki. Po przekompilowaniu łączy jak należy ;) Dlaczego ten problem wystąpił akurat teraz ?

@Jajcus

This comment has been minimized.

Show comment
Hide comment
@Jajcus

Jajcus Oct 16, 2013

Owner

Coś zmienili na serwerach i serwery zaczęły rozłączać sesję jak dostały niezrozumiałą wartość 'notify_type' w danych kontaktu. Że oficjalnej dokumentacji do tego nigdzie nie było, to ja nie wiedziałem jak interpretować te wartości (potraktowałem jako pola bitowe) i wysłałem co innego niż to czego serwery się spodziewały.

Możliwe, że jakieś spamerskie oprogramowanie wysyłało podobne nieprawidłowe wartości i dlatego postanowili to rozłączać, albo wyszło to przy okazji jakichś innych zmian w protokole (może są jakieś nowe prawidłowe wartości wykorzystywane przez nowe oryginalne klienty).

Owner

Jajcus commented Oct 16, 2013

Coś zmienili na serwerach i serwery zaczęły rozłączać sesję jak dostały niezrozumiałą wartość 'notify_type' w danych kontaktu. Że oficjalnej dokumentacji do tego nigdzie nie było, to ja nie wiedziałem jak interpretować te wartości (potraktowałem jako pola bitowe) i wysłałem co innego niż to czego serwery się spodziewały.

Możliwe, że jakieś spamerskie oprogramowanie wysyłało podobne nieprawidłowe wartości i dlatego postanowili to rozłączać, albo wyszło to przy okazji jakichś innych zmian w protokole (może są jakieś nowe prawidłowe wartości wykorzystywane przez nowe oryginalne klienty).

@civic9

This comment has been minimized.

Show comment
Hide comment
@civic9

civic9 Oct 17, 2013

U mnie też działa, dzięki.

civic9 commented Oct 17, 2013

U mnie też działa, dzięki.

@mky

This comment has been minimized.

Show comment
Hide comment
@mky

mky Oct 17, 2013

Od wczoraj się u mnie kilka sesji zapięło, logi nie pokazują problemów. Jak dla mnie działa bez problemów. Dzięki!

mky commented Oct 17, 2013

Od wczoraj się u mnie kilka sesji zapięło, logi nie pokazują problemów. Jak dla mnie działa bez problemów. Dzięki!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment