© www.cellspark.com - All products | Download | Contact

FtoGoServer graphic

Find the software useful? Donate something to keep it updated!
FtpGoServer is a simple, fast and very small (10K) Java FTP server that can be used on your PC, Mac or Linux machine to allow remote FTP access to a selected part of a computer's file system. Features include: The product was primarily designed for access to files from a browser but any FTP client such as FTP-Go can be used to login, download, upload and manipulate file storage.

Links for FtpGoServer :

Operational notes

Further discussion of file referencing

As mentioned, only data in or below the local designated root is available through the server. The product converts any file or directory reference to a fully specified (canonical) unique path for the platform and then checks that the root path prefixes it. Furthermore, before any data access takes place, local file system read/write permissions are checked.

File locking

Simultaneous reads should cause no problems however there is no explicit file locking done when a file is being written to. The underlying platform file system will determine how conflicts are resolved. If a file can't be opened for one operation because it is being used for another purpose by another user then an exception will likely be thrown. This exception will be caught by the server code and the connection attempting the open will be closed.


The only logging of activity that takes place while the server is running is the totals of uploads and downloads (shown in Megabytes). Additionally the Java console, if it's open, will show any error conditions that are occurring and this can aid problem solving.


The server uses the default settings for all Java sockets. The control socket can optionally have a time out set so that after no control channel activity for 20 minutes, a session will be ended by the sever.

Character encodings

Character encoding for reads and writes on the control socket are explicitly set to "US-ASCII".

Garbage collection

A lot of objects, mainly Strings, are created during an FTP session. Garbage collection is requested after a LIST command has been serviced and when an individual login session ends and that thread exits.

Installing Sun's free Java runtime

To run FtpGoServer you will need to install Java 2 which is a free download from Sun. Double click the "FtpGoServer.jar" file to start the software after installing Java or use the command line "java -jar FtpGoServer.jar".

Source code for FtpGoServer

Source code is available for USD550 on an "as is" basis for incorporation into other products and payable by credit card. Purchase is conditional on acceptance of the licensing terms and conditions.