File: TODO

package info (click to toggle)
fsp 2.81.b24-2
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 1,900 kB
  • ctags: 1,423
  • sloc: ansic: 9,215; sh: 3,710; makefile: 212; lex: 130; csh: 77; python: 22
file content (112 lines) | stat: -rw-r--r-- 3,415 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
FSP SUITE TO DO LIST
====================

/* maintained by hsn -at- netmag * cz */

Radim Kolar's personal wishlist from 1997
*-high priority-*
 - show loosers online (finfo command) and server statz

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:
we should add real,portable error codes support to CC_ERR extended data area.

PORTING
Sven's Slowaris 8 compile problem
still do not builds on freebsd 4 and FreeBSD 5 - non intel platforms?

NEEDS IMPROVMENT:

Client LIBRARY
:low:
fver and others add support new syntax fsp://host:port/file

:long-term goals:
drop this library and use libfsp instead

LOCKING

CLIENTS 
:high: 
some client commands should exit with nonzero rc on failure

:low:
clients do not freeing memory allocated from glob()

FUTURE FEATURES FOR SERVER:
:high: required for 2.8.2 final
report number of clients connected, size of hostable in new command
 CC_INFO command
possible? special defence against rapid/double fire clients (burst command in fspclient)
Native Supports for symbolic links (needed for mirroring Debian)
new LSTAT COMMAND, new MAKELINK command

SERVER DIR LISTINGS
Server should save .FSP_CONTENT using 1k size directory blocks
Server should support sending different sized directory blocks

:midle:may not be in 2.8.2
write FSP_CHANGE_PASSWORD command
improve RENAME FSP command
  * cross directory renames are unsuported for now

: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)


PERFORMANCE:
do host hashtable shrinking/clearing sometimes
stat cache for FSP_STAT a other stat() calls
chage O(N) fifo cache to some more sane lru hashtable code.
background time() alarm() caller 
Current performance 1925648B/s

MAN:
separate manpage for 7 fsp (protocol definition) == write FSP RFC
Register udp/21 for FSP in http://www.iana.org/ FSP RFC needed!
manual page for fsetup.1

POSSIBLE NEW PROJECTS
FSP Proxy repeater - take a look at old code, but we have NAT and fspproxy
  today.
Experimental transfer HTTP over fsp transport

libraries and support for FSP protocol
======================================

DONE: FSP library for Java
DONE: FSP over HTTP
DONE: new small,light fsplib for C.
DONE: fsp backend in gftp

FSP plugin for Netscape/MSIE. 
  Not possible to write protocol plugins with Netscape 3 SDK,
  not sure about MSIE or Mozilla 
  we have fsproxy now.
FSP backend for APT
FSP support in major ftp programs: lftp,wget,curl
Gnome vfs2 plugin
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.