• Liebe User, bitte beachtet folgendes Thema: Was im Forum passiert, bleibt im Forum! Danke!
  • Hallo Gemeinde! Das Problem leidet zurzeit unter technischen Problemen. Wir sind da dran, aber das Zeitkontingent ist begrenzt. In der Zwischenzeit dürfte den meisten aufgefallen sein, dass das Erstellen von Posts funktioniert, auch wenn das Forum erstmal eine Fehlermeldung wirft. Um unseren Löschaufwand zu minimieren, bitten wir euch darum, nicht mehrmals auf 'Post Reply' zu klicken, da das zur Mehrfachposts führt. Grußworte.

Was auf nen UNIX FTP über Sockets hochladen..STOR/PORT Problem :(

MesH

Guest
Hio

Hab mir für mIRC son blödes kleines Statsprogramm für meine HP ma irgendwann gebastelt, un ich hätte jetz gern dass dieses Programm (erstellt ne .html) die Stats auch gleich auf meinen Server hochlädt. Also hab ich mich an mIRC Sockets gehängt...

Ich sende folgendes zum Server:

USER p8385753
PASS xxx
PORT $replace($ip,$chr(46),$chr(44)) $+ ,4,21
STOR /hannes/ircstats.html
QUIT

[das $replace($ip,$chr(46),$chr(44)) $+ ,4,21 ergibt dann meine IP mit Kommas statt Punkten und ,4,21 direkt dran, also zB 80,137,56,173,4,21]

So, nu mein Problem. Der PORT Befehl klappt noch (wobei die "4" und die "21" die da grad sind nochmal ne Sache für sich sind, siehe später), aber sobald er zu dem STOR kommt klappt GAR nix mehr..die Connection bleibt einfach stehen....dasselbe passiert wenn die selben Befehle über MSDOS Eingabeaufforderung laufen lasse. Der "put" Befehl über die MSDOS-E klappt aber..

Auf dem Server wird dann ne ircstats.html erstellt, Größe aber 0 Byte, sprich die wird net mit Daten "gefüllt". o_O

Ich denk mal der PORT Befehl is so noch nich richtig, hab da auch mal bisschen rumgespielt um zu gucken was so geht bei den letzten beiden Werten, hab aber kein System rausfinden können -_- Online Hilfen (google und so auch bemüht) und Freunde konnten mir auch net weiterhelfen.. :( Passive Mode hatte ich auch probiert, hat aber nix gebracht und ich wüsste auch net wie ich mIRC beibringen soll das zu verwenden

Könnte mir da evtl. jemand aushelfen ? Ich hab übrigens nen Router...kann gern Ports aufmachen und sowas, wenn ich mal wüsste welche..hab momentan 20 UDP und TCP auf weil das doch der Standardport für FTP Datentransfer is dachte ich..
 

MesH

Guest
Danke schonmal ViperDK, aber was mussich denn dann nu an meinem PORT Befehl da einstellen ? 1024 bis 65xxx is schon n ganzes Stück, ich hab ja auch einige zwischendrin offen, aber was zum Teufel mussich da denn nu angeben damit der auch die geöffneten benutzt -_-
 

Myxomat

Guest
Öhm, der Stor Befehl ist schon richtig. Er erstellt ja auch die entsprechende Datei auf dem Server. DU MUSST DIE DATEI DANACH ABER AUCH NOCH SENDEN!
Mirc kann ja keine Gedanken lesen, und weiss deshalb auch nicht, dass es nach dem Stor-Befehl die Datei hochladen soll. LOL.

(Ums nochmal anders auszudrücken: Der Stor-Befehl sagt dem FTP-Server lediglich, dass du ihm gleich ein File mit dem entsprechenden Namen senden wirst. Das alleine reicht aber noch nicht, das File muss anschliessend von dir auch noch gesendet werden.)
 

MesH

Guest
mh yap das fiel mir irgendwie auch auf -_- versuche grad die Datei zu senden, hab mir auch mal durchgelesen wie son Kerl das gemacht hat..wie bring ich dem FTP Server denn bei dass das was da jetzt reinkommt KEINE Kontrollanweisungen sondern Dateiinhalte sin ? o_O
 

MesH

Guest
Hm okay also ich hab mich mal durch son FTP Script für mIRC durchgearbeitet (herrje) un bin jetz n Stück weitergekommen..

Ich hab jetz PORT $replace($ip $+ . $+ 4.25,.,$chr(44))

4.25 entspricht Port 1049. Auf dem warte ich (über socklisten) auf ne Connection, welche mir dann mitteilen würde zu welchem Port ich die Daten aus der .html schicken müsste...aber genau diese Connection kommt nich =( aber ich raff net warum..

Hab auch mal probiert über PASV die Ports auf denen der Server dann auf Connection wartet rauszufinden (klappte) und dann über UDPsend die Daten rüberzuschicken, ging aber auch nix (kam einfach nix). :(
 

MesH

Guest
Sorry fürs 3e Post jetz..naja hier mal das was ich grad jetz so habe - habs nämlich mal mit LIST statt gleich senden probiert, da kommt dann:
425 Unable to build data connection: Cannot assign requested address
whatever.. :(

Das hier schickich grad so:

USER p8385753
PASS $pass
socklisten listen 1049 // warte auf eingehende Verbindungen bei Port 1049
PORT $replace($ip $+ . $+ $gettok($longip($sock(listen).port),3-4,46),.,$chr(44)) // gibt zB jetzt 80,137,23,226,4,25 aus, sprich 80.137.23.226:1049
STOR /hannes/ircstats.html // mitteilung an Server: Achtung,gleich kommt was

***

on 1:socklisten:listen:{ // wenn was kommt...
sockaccept incoming // ...nimm's an!
bread ircstats.html 0 $file(ircstats.html).size &upload // füll die &upload mit dem Inhalt von ircstats.html
sockwrite incoming &upload // und schick das ganze durch die angenommene Verbindung rüber
}

und genau bei den *** bleibter stehen...es kommt einfach nix vom Server :( aber meine Routereinstellungen und so stimmen..
http://www.thedonkeynetwork.com/connection_test?port=1049 sacht nämlich:
connection was accepted on ip 80.137.23.226

naja hab keine Ahnung was ich noch machen soll :(
 
Oben