Rycochet Software

RC-FTPd3 Design and WIP

RC-FTPd3
 
 Home
 · Contact
 Meets
 · 29th August 2004
 · 30th May 2004
 · 9th November 2003
 · Bath Show 2003
 · 3rd August 2003
 RC-FTPd
 · RC-FTPd Main
 · RC-FTPd CPU
 · RC-FTPd Locale
 · RC-FTPd3 Design
 AmIRC
 · DccSend.AmIPlug
 · Login.AmIPlug
 · NetInfo.AmIPlug
 · RexxFake.AmIPlug
 · Tabs.AmIPlug
 · Tellme.AmIPlug
 · Text.AmIPlug
 · Trigger.AmIPlug
 · Typo.AmIPlug
 · Wallchop.AmIPlug
 DOpus Magellan
 · clipboard.module
 · parent.module
 · version.module
 Other
 · Bump
 · StackAttack2
 · YamNews
 
 Recent Changes 
 

Valid HTML 4.01!

 

RC-FTPd3 is being coded on again (for the third time I've had to start from scratch), but there are some major differences to the old rc-ftpd 2.x series. Since losing the source for rc-ftpd 2.74 a lot of people have thought that was the end, but the only part of that source that was going to get used and has been lost was the layout code for the Drag'n'Drop of the main GUI - everything else was being rewritten from scratch anyway, so apart from the lack of time on my part, there aren't any problems with doing it!

RC-FTPd3 is being designed differently to before, among other things it will be multi-platform. Starting on Classic Amiga, it'll then get compiled to be AmigaOS4 and MorphOS native with hopefully very few changes needed (the code itself will be done to be easily maintainable). After that will come a *nix version, then I will try to do a windoze version. Only the Amiga versions will be guaranteed to have GUIs, though there will be remote admin.

The GUI itself will be going external to the main program, as will the Prefs. There is a new plugin API which allows things such as the GUI, Prefs, ARexx and remote admin (plus any other extensions) to be on the server only when needed. It will also be able to talk to other rc-ftpd servers to allow transparent file-sharing networks, with either rsync style (ie, every server has the same contents updated regularly), or networked storage style (ie, every server has it's own set of files, but the client doesn't need to connect to any specific server to get them).

Registration will also be changing, with different levels of registration. A lot of people use it unregistered, but only occasionally, so I will keep it useable for them, at the same time making it more attractive for business use.

UnregisteredUnlimited LAN use, NET use gets a per-user command "lag" - so the more users connected the longer each command takes to react (note: xfer speeds won't be affected, only time taken)
Single UserRun on one machine on one public IP, no lag added
Small BusinessRun on multiple machines on a LAN (one public IP) - they talk to each other to share resources, such as what machines carry what files - so you don't need to add network traffic via SAMBA etc for serving files.
CorporateMultiple machines on multiple IP's - as above, but will also let the send/recv IP's be public IP's - and not just send the same IP, this way you can have ie local mirrors transparent to the client.

Plugins are planned for Compress (ie, "RECV file.Z" - this will also be an example plugin for source), MD5 checksum generation/checking, security (SSH etc), remote admin (web based, on a non-standard port, using SSL), usage stats, per-user/group transfer limits, ARexx, and hopefully anything else useful enough, that shouldn't be part of the main server (for security etc).

The remote admin and MUI prefs will both be a kind of script supporting idea - they will basically get information from the server on *what* to display, but it will be up to them how they actually display it. It sounds complicated, but what it means is that whenever a new feature or plugin is added, the prefs support it immediately, with no recompiling needed unless it's a new type of data to be displayed that can't be made from previous types.

There will be per-ip access (built into the user+group code), so you can limit people to set users, or users to set ips (or ranges). There will also be a banlist to prevent individuals or ip ranges from accessing the ftp. With multi-server setups they will keep in sync properly (that counts for all config changes - it'll automatically propagate). There will be built-in asynchronous DNS lookups, and even the option for reverse-dns lookups, so you can anything needing an IP, and have IP, hostname, IP-range (or subnet mask), or even hostmask.

There is no beta version as of yet - and when ready it will probably be announced on here, so please don't ask me when it'll be ready - I've got a young family, a job, and a whole bunch of commitments, so it'll be ready when I've had enough time ;-)

 
©2003-2004 Rycochet Software, All Rights Reserved