$Id: TODO,v 1.2 1999/06/29 18:37:14 he Exp $


Important:

   The server authentication procedure is a port from wu-ftpd.
   Review user authentication procedures for possible security
   hazards. Check 0-Termination of received string parameters.

   Make eftp usable by none-root users. Network interfaces and
   X.25 routes are needed to be set up before the isdn connection
   can be set up, which is currently done by the eftp.sh shell script
   which needs to be run from root. The latter is not acceptable for a
   general purpose release.


Not showstoppers, but should be done before a possible stable release:

	- more casefix testing with new mangeling method
	- selectivly and automatically (for filesystems not supporting
	  symlinks) disallow symlink-based transfer name database
	  lookup   
	- certain disconnect scenarios result in error/warning
          messages which are harmless, but might confuse novice users.
	- improve autoconf readline support (support non-default 
          locations of libreadline and lib[n]curses).
	- integrate source tree to isdn4k-utils CVS repository. 
	- 'make install', with reasonable default config files.
	- make eftp command input working when stdin is a pipe.
	- autoconf is somewhat ugly as several configuration variable
	  are passed to the source files by different channels
	  (config.h, -D option) and name schemes are inconsistent.
	- scan all source files for FIXME/XXX/#if 0 labels and
	  try cleaning this up.
	- improved event logging (with error indications and
	  distinction of successful/failed requests).
	- improved parameter logging within events (handle unset
	  parameters nicer).

   Currently, when requesting establishment of association and access
   regime, the parameters in the corresponding positive response are
   not evaluated properly. This might leed to inconsistencies between
   the peer's and our own idea of those protocol parameter settings.

   To do:  Review and improve those regime establishment (and release)
	   processing.


   Currently, exception and error events are often not dealed with
   or generated properly. Error events are not counted. Thus, this
   implementation might fail if certain error conditions occur.

   To do:  Review and improve error handling


   Currently the CI field of the result/reason parameter of received
   T-response-pos/neg is not allways checked for matching the corresponding
   command CI.

   To do:  Check and implement appropriate exeception actions if
           mismatch is detected.


   Currently the file header is neither analysed nor processed
   (just stripped) when files are received.

   To do:  Analyse file headers and implement appropriate actions.


   Currently, certain ETS 300 075 services (in particular T_Delete, T_Rename,
   T_Read_Restart) are not supported. The supported
   services don't support all (optional) paramaters. Thus, the corresponding
   Eurofile services are not supported, either (in particular no
   deletion nor renaming of files).

   To do:

   Enhance protocol processing.




Not urgent at all, might take care of after the first stable release
if anybody is interested:

   For future portability to non-posix system, consider implementing a
   tdu_stream object which is based on standard C file handles
   instead of unix file-descripters. This might also improve performance
   due to internal buffering.

   The eftp client provided with eftp4linux is a rather primitive
   front end (this is intentinoal) to the eft protocol library's
   client code.

   To Do: write more user friendly client front ends. Or even better,
          add eurofile support to existing user tools (i.e. mozilla,
	  GUI file managers) or write an eft-http gateway by means
          of the eftp4linux core library.

   Support other authentification methods (PAM comes to mind) 


   And the "to do" list is incomplete as well.

   Meta to do: Enhance "to do" list.



Supplement by ms@msdatec.de:

Until nobody complains, in short form and in German:

- ber Konfiguration durch /etc/isdn/eftd.conf nachdenken
- einkommende Dateien schtzen
- Log- von Debug-Infos trennen, Loginfos sollen statistikfhig sein 
- how2 schreiben
- NEWS-File
- "install" in "Makefile" implementieren
- Versionsnummern von Protokollimplementation, eftd und eftp trennen.
- Sollte das pid-file nicht von eftd selbst gesetzt/geloescht werden?
