Oberon || Library || Module Index || Search Engine || Definition || Module

Ulm's Oberon Library:


FTPLoggers - interface for FTP loggers


TYPE Event = POINTER TO EventRec;
TYPE EventRec =
         request: FTPRequests.Request;
         response: FTPResponses.Response;
         errors: RelatedEvents.Object;

PROCEDURE Log(session: FTPSessions.Session; request: FTPRequests.Request; response: FTPResponses.Response);

PROCEDURE GetEventType(session: FTPSessions.Session; VAR eventType: Events.EventType);


FTPLoggers provides an interface between a FTP command processing unit and all parties that are interested in logging all requests (see FTPRequests) together with their responses (see FTPResponses) and possible error events in their context.

FTP command processing units are expected to call Log for session after returning response on request. All error events found related to session (see RelatedEvents) will be removed.

GetEventType returns an event type for session that is used by Log to distribute logging events to all interested parties.


Error events that result from FTP operations should not be leaked to the FTP client but, if necessary, converted into a general error code. They should be logged instead to allow problems to be analyzed by the administrator of a FTP server.

Note, however, that not all error events indicate real error situations as error events may result from harmless tests. FTPUnixFileSystems, for example, checks a given filename for existance and for being a symbolic link (see FTPUnixPaths) before opening it for writing. This causes most STOR operations to be logged together with an error event while a success indication might have returned to the FTP client.


standard handler of FTP logging events that prints all requests and responses to a given stream

Edited by: borchert, last change: 2001/05/08, revision: 1.2, converted to HTML: 2001/05/08

Oberon || Library || Module Index || Search Engine || Definition || Module