Debug facilities in F4A (Developers only)
- at compile time
- at runtime (ftpd)
- at runtime (ftps)
Debug at compile Time
run the configure script with the argument gdb or debug.
This will create
different Makefiles, which generate more debug info (compiler option -g),
output all warnings (compiler option -Wall) and do not strip the debug info
from the binaries. The difference between debug and gdb is, that debug also
creates a debug file (ftp4all.debug) at runtime and logs all F4ADP calls in
there.
Runtime ftps
The command SITE DUMP has been modified to output internal data areas of
ftps (command SITE DUMP of v2.x was obsolete anyway). SITE DUMP takes the
arguments:
- cdpath - dump cdpath data
- check - dump archive check data
- config - dump various config data
- dcheck - dump dupe check data
- dshortcut - dump directory shortcuts
Invoked with one of these arguments, SITE DUMP outputs appropriate information
Runtime ftpd
To trace all system library calls, run ftpd in the foreground with the -f
switch (e.g. strace ftpd -f)
Several commands have been added to the F4ADP to dump various data areas. To
use this commands, telnet to the admin port and login using the command
ULP <ident> root <password> (You need superuser privileges). Then issue one of
the following commands:
- DMP_CH - dump child data (info about all active ftps)
- DMP_HA - dump connection handler data
- DMP_LIM - dump limit data (indicating active rule)
- DMP_WA - dump watcher data
To log out, use the command QUIT. (All commands uppercase !).