Commit Graph

7 Commits

Author SHA1 Message Date
Joel Sherrill
a8c3326863 2001-04-20 Jake Janovetz <janovetz@uiuc.edu>
* rtems_servers/ftpd.c: Correct argument so hooks work again.
2001-04-20 19:17:08 +00:00
Joel Sherrill
07fbfcedf0 2001-01-31 Sergei Organov <osv@javad.ru>
* rtems_servers/ftp.d: Following changes:
	  - Hacks with current dir and root dir removed in favor of new libio
	    support for task-local current and root directories.
	  - Bug in `close_data_socket()' introduced by previous change fixed.
	  - `command_pasv()' changed to set timeout on socket we are listening
	    on and code fixed to don't close socket twice on error.
	  - `serr()' changed to clear `errno'.
	  - `data_socket()' changed to clear `errno' before `bind()'.
	  - `session()' changed to clear `errno' before processing session.
	  - `close_data_socket()' fixed to close both active and passive sockets
	  - Initialize info->data_socket to -1 in `daemon()'
	  - Initialize `fname' to empty string  in `exec_command()'
2001-03-05 23:01:43 +00:00
Joel Sherrill
38371dbebb 2001-01-24 Sergei Organov <osv@javad.ru>
* rtems_servers/ftpd.c, rtems_servers/ftpd.h: Major enhancements
	as listed below:
	  - Timeouts on sockets implemented. 'idle' field added to
	    configuration. No timeout by default to keep backward compatibility.
	    Note: SITE IDLE command not implemented yet.
	  - Basic global access control implemented. 'access' field added to
	    configuration. No access limitations by default to keep backward
	    compatibility.
	  - Anchor data socket for active mode (using self IP and port 20.)
	  - Fixed default data port support (still not tested).
	  - Don't allow IP address different from originating host in
	    PORT command to improve security.
	  - Fixed bug in MDTM command.
	  - Check for correctness of parsing of argument in command_port().
	  - Fixed squeeze_path() to don't allow names like 'NAME/smth' where
	    'NAME' is not a directory.
	  - Command parsing a little bit improved: command names are now
	    converted to upper-case to be more compatible with RFC (command
	    names are not case-sensitive.)
	  - Reformat comments so that they have RTEMS look-and-feel.
	  - Fixed DELE, SITE CHMOD, RMD, MKD broken by previous changes
	  - True ASCII mode implemented (doesn't work for hooks and /dev/null)
	  - Passive mode implemented, PASV command added.
	  - Default port for data connection could be used (untested, can't find
	    ftp client that doesn't send PORT command)
	  - SYST reply changed to UNIX, as former RTEMS isn't registered name.
	  - Reply codes reviewed and fixed.
2001-01-24 19:20:24 +00:00
Joel Sherrill
3f777d0edf 2001-01-12 Sergei Organov <osv@javad.ru>
* rtems_servers/ftpd.c, rtems_servers/ftpd.h: Major enhancements
	as listed below:
	    - use pool of pre-created threads to handle sessions instead of
  	      creating/deleting threads on the fly
	    - LIST output is now similar to what "/bin/ls -al" would output,
	      thus FTP clients such Netscape are happy with it.
	    - LIST NAME now works (both for files and directories)
	    - added support for NLST, CDUP, and MDTM FTP commands to make
	      more FTP clients happy
	    - keep track of CWD for every session separately
	    - ability to specify root directory name for FTPD in configuration
	      table. FTPD will then create illusion for FTP clients that this
	      is actually root directory.
	    - ignore options sent in commands, thus LIST -al FILE works and
	      doesn't try to list "-al" directory.
	    - buffers are allocated on stack instead of heap where possible to
	      eliminate malloc/free calls (avoid possible heap fragmentation
	      troubles).
	    - drop using of task notepad to pass parameters - use function
	      arguments instead
	    - use snprintf() instead of sprintf() as the latter is unsafe
	    - use of PF_INET in socket() instead of AF_INET

	    Here are ftp clients I've tried new FTPD with (all of them
	    running on Debian GNU/Linux 2.2):

	         Lftp 2.1.10
	         NcFTP 2.4.3
	         Netscape 4.75
	         ftp
	         mc 4.5.49
2001-01-12 13:51:56 +00:00
Joel Sherrill
df49c60c96 Merged from 4.5.0-beta3a 2000-06-12 15:00:15 +00:00
Joel Sherrill
85e24a3237 Patch from Emmanuel Rauget (raguet@crf.canon.fr) to add a htons on the
sin_port.
1999-04-02 14:39:19 +00:00
Joel Sherrill
6d0e13c3bd Added ftpd server from Jake Janovetz <janovetz@tempest.ece.uiuc.edu>. 1999-03-16 01:51:53 +00:00