FSP SUITE TO DO LIST BY RADIM KOLAR /* maintained by hsn -at- netmag * cz */ Radim Kolar's personal wishlist from 1997 *-high priority-* - show loosers online (finfo command) and server statz * l o w * - password change command TESTSUITE NEEDED: Write a simple FSP protocol testing tool Write a test suite using testing tool test for remote buffer overflows Test if >2GB files but <4GB works correctly with and without --disable-largefile SECURITY BUGS: symlink to FILE can escape from FSP root directory. OLD known problem. symlink support must be reworked before final release. PROTOCOL-RELATED BUGS: none PORTING Sven's Slowaris 8 compile problem Sven's AIX compile problem not builds on freebsd 4 and FreeBSD 5 - non intel platforms? NEEDS IMPROVMENT: Client LIBRARY :high: we should retune retry algoritm for better support lines with higher packed loss. On common internet lines current one works okay. add more detailed stats from retry alg. :low: fver and others add support new syntax fsp://host:port/file add sem locking method, possible? flscmd should not to do stat before directory listing. directory listing should not need to get 0 sized block. Needs total code rewrite. better support for persistent keys - do not send cc_bye ? this should be probably configurable :long-term goals: :better to write a new code instead of fixing 10 yo crap. =convert to multi threaded= make setup from env a separate function do not use global variables CLIENTS :high: normalize return error codes of all clients write new clients for new commands - fpasswd finfo :low: add support for more sane fsplist file format (as used by warez ppl) to fhostcmd it looks like #FSP Sites list genie.lut.ac.uk 21 genie / # small UK site clients do not freeing memory allocated from glob() FUTURE FEATURES FOR SERVER: :high: required for 2.8.2 final can be run multiple times on the same port, how to check? drop reuse flag from socket bind? Currently looks fine with flag on bsd. Fails on lin-suck. report number of clients connected, size of hostable in new command CC_INFO command special defence against rapid/double fire clients (burst command in fspclient) Native Supports for symbolic links (needed for mirroring Debian) new LSTAT COMMAND write FSP_CHANGE_PASSWORD command :midle:may not be in 2.8.2 improve RENAME FSP command * cross directory renames are unsuported for now * server can send error reply even to denied per directory clients - minor security flaw :low:this will sure go after 2.8.2: hashed passwords. Do we really needs them? add switch for directory vs global ACL overide hard code acl into server configuration, do not use .FSP_ filez. support for user directory namespace ~hsn / public_html, check links to outside! use ntons a podobne funkce v iprange.c ipv6 socket support privileged Hosts, excluded from Byte transfer Limit (hard to do) new toy FSP Proxy repeater - look at old code. PERFORMANCE: host hashtable shrinking sometimes stat cache pro FSP_STAT a ostatni staty chage O(N) fifo cache to some more sane lru hashtable code. background time() alarm() caller Current performance 1925648B/s MAN: finish sgml FAQ separate manpage for 7 fsp (protocol definition) == write FSP RFC libraries and support for FSP protocol ====================================== DONE: FSP library for Java DONE: FSP over HTTP FSP plugin for Netscape/MSIE. Not possible to write protocol plugins with Netscape 3 SDK we have fsproxy now. WIP: new small,light fsplib for C. FSP backend for APT Transfer HTTP over fsp transport FSP support to lftp,wget,curl,gftp AVFS plugin http://sourceforge.net/projects/avf LARGEFILES64 how to turn them on: Cygwin: #define __LARGE64_FILES fopen64,ftello64,fseeko64 _off64_t glibc 2.3: #define _LARGEFILE64_SOURCE off64_t native: _FILE_OFFSETS_BITS = 32 / 64 then use off_t FreeBSD: in 5.X always enabled, in 4.X not supported.