dgFTP - Server



STATUS: Aktuell in Entwicklung

Neue Programmiersprache, neues Glück.
Jetzt, da ich mittlererweile Purebasic recht gut beherrsche und auch ziemlich viele Befehle ohne die Hilfe nutzen kann, habe ich mich mal an einen FTP-Server rangesetzt.
Der Sourcecode wird auch bald zur Verfügung stehen.
Es wird erstmal ein kleiner, simpler FTP-Server, der die Commands von SmartFTP interpretieren kann und SmartFTP auch ordentliche Antworten übergibt :)
Bisher sind leider schon ca. 83h in das Projekt geflossen :(
Aber es geht gut voran :)

dgFTP soll einmal in ShareOnLAN implementiert sein, sofern ich mal dazu komme dieses Projekt aus der Planungsphase zu entnehmen...

[31.01.2008]




Update [02.02.2008 00:37]:

Jau, ein kleines Update für alle Interessierten:
Die erste Alpha-Version ist fertig.
Es geht hierbei ersteinmal nur darum, überhaupt eine Verbindung mit dem FTP-Client aufnehmen zu können. Das System ist bereits Multi-Userfähig, sodass man mit mehreren Clients gleichzeitig problemlos zugreifen kann.

Außerdem ist das System so geschrieben, um relativ problemlos auch andere Servertypen integrieren zu können - z.B. einen Telnetserver oder einen IRC-Server :)

Somit wäre schonmal ein Grundgerüst für ShareOnLAN geschaffen ;)



Update [02.02.2008 01:28]

Und schon wieder ein Update: Das System funktioniert nun auch stabil, wenn ein Befehl unbekannt ist und ein Client quasi einen "Timeout" erleidet :)
Ein paar Commands mehr wurden implementiert.
Und ein monstermäßiger Bug wurde entfernt. Das System sollte auch mit hunderten gleichzeitigen Clients optimal zurechtkommen.
Weiterhin wurden WinAPIs entfernt und durch Standardbefehle ersetzt - sollte also auch irgendwann unter Linux laufen :)


Update [02.02.2008 21:36]

Und noch ein Update: Jetzt werden beliebig viele User mit zugehörigem Passwort aus der Datei ausgelesen. Es wird auch korrekt überprüft, ob ein Password auch zu einem User gehört :)
Setzt man ein *, so darf jeder auf den FTP zugreifen.
Demnächst kommen dann auch noch Rechte ;)


Hier der Source zum Download
Und hier noch das Configfile