IcqLib

Kp^^

Der Authserver macht bei mir eigentlich keine Probleme. Lediglich das Login auf dem Server dannach läuft seit letztens oft nicht ganz sauber. Also nen timeout beim connecten. Ich brauche dann immer mehrere versuche.
 
Dann sind wir ja schon zu zweit ;)


Was meinst du mit Authserver?

Das ist echt abnormal. Egal was ich mache, es wird immer schlimmer. Mittlerweile bekomm ich den Timeout schon bei der ersten Stufe. (Nebenbei hab ich das Timeoutlimit uaf 90 erhöht.)
Wobei mir Ethereal sagt, dass die Daten schon längst an mich gesendet wurden. Da scheint PHP irgendwas nicht zu passen.

EDIT:
Lasse ich die while-Schleife mit dem feof() wieder weg, geht es, jedoch fehlt mir auch etwas Code. (Bei der Service Liste)
Ich erhalte:
Code:
2a025f0200240001000300008d8d3eef0001000200030004000600080009000a
Bekommen sollte ich:
Code:
2a025f0200240001000300008d8d3eef0001000200030004000600080009000a000b000c001300150022

Es fehlen also die letzten 10 Bytes. :suspekt:
Beim ersten (Cookie erhalten), bekomme ich alles, auch ohne Schleife.

Allmählich geht mir dieses PHP echt auf den S*** (siehe Avatar von mir) ;)
 
Zuletzt bearbeitet:
feof() darfst du nicht benutzen, da die Datei im Prinzip nie zu Ende ist. Du musst genau nachrechnen wieviele Bytes kommen und dann entsprechend parsen.
 
Also so wie ich mal gelesen habe, soll man erst die ersten 6 Bytes auslesen (z.B. 2a0123ef0024)
Aus diesem 0024 weis man dann, dass noch 36 Bytes folgen. Aber da ist schon das Problem. Ich kann nicht genau nachrechen. Bei mir setzt es bei den ersten 2 Senden/Empfangen Schritten immer noch ein 2a0124de000400000001 davor. Weiß jetzt nicht, ob das normal ist. ich könnte natürlich einfach 10 Bytes mehr auslesen. Aber wenn diese dann mal nicht davor stehen, hab ich keine Ahnung, was er draus macht.

EDIT:
Hier habe ich noch eine Funktion gefunden, die nützlich sein könnte.
socket_get_status();
Diese Funktion erstellt ein kleines Infoarray.
Sobald man die ersten Bytes (egal wieviele) ausgelesen hat, werden in dem Array auch die restlichen Bytes angezeigt, die noch zum auslesen da sind.
PHP:
socket_get_status($this->serverconnection);
print_r($status);
 
Zuletzt bearbeitet:
Ich weiß zwar nicht warum du dir Arbeit machst, die ich schon längst erledigt habe, aber, wenn es dir Spaß macht dann mache ruhig weiter.
 
Mach ich auch :)

Dann kann ich später wenigstens mal behaupten, dass ich das Prinzip verstanden habe und ich das alleine auf die Beine gestellt hab.
 
Zuletzt bearbeitet:
Könnte mir mal einer sagen, warum ich vom Server keine Antwort auf den SNAC(01,17) erhalte? Der Server sendet mir einfach nicht den seine unterstützten Serviceversionen zu (SNAC(01,18)).
Ich erhalte auch keinen Fehler. Es passiert einfach nichts.
 
Das habe ich auch schon gefunden, hilft mir aber in dem Fall auch nicht weiter. Mein Code sieht genauso aus, wie er bei beiden beschrieben ist.
 
Keine Hilfe mehr? Dann muss ich wohl selbst dahinterkommen. Such ich mir halt andersweitig Hilfe.

EDIT:
Problem gelöst. War was ganz leichtsinniges, was ich übersehen hatte. Es lag an der Reihenfolge der Sequenznummern.
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück