prxs
: PRoftpd eXtenSion toolprxs
program is used to build
DSO modules (also known as "shared" modules).
The most current version of prxs
is distributed with the
ProFTPD source code.
Please contact TJ Saunders <tj at castaglia.org> with any questions, concerns, or suggestions regarding this program.
prxs
is a tool for building and installing extension modules for
the ProFTPD FTP server. This is achieved by building a dynamic shared object
(DSO) from one or more source or object
files which then can be loaded into the ProFTPD server at runtime via
the LoadModule
directive from the mod_dso
module.
To use this extension mechanism your platform has to support the DSO feature
and your proftpd
executable has to be built with the
mod_dso
module. The
prxs
tool automatically complains if this is not the case. You
can check this yourself by manually running the command:
$ proftpd -lThe module
mod_dso
should
be part of the displayed list. If these requirements are fulfilled you can
easily extend your ProFTPD server's functionality by installing your own
modules with the DSO mechanism by the help of this prxs
tool.
The DSO
documentation also
describes how prxs
works in more details.
prxs --help
:
usage: prxs <action> <opts> <source files> Actions: -c, --compile Compiles the listed .c source files into a proftpd DSO module. -i, --install Installs a compiled proftpd DSO module into the directory where proftpd expects to find loadable DSO modules. -d, --clean Removes any generated files, returning the build directory to a clean state. Options: -h, --help Displays this message. -n, --name Tells prxs the name of the module being compiled. By default, prxs determines the module name from the list of .c files listed, expecting to see a "mod_$name.c" file. -D key Passes these macros through to the compilation step. -D key=value Note that the space before the key is important. -I includedir Specify additional include file search directories. Note that the space before the directory is important. -L libdir Specify additional library file search directories. Note that the space before the directory is important. -l library Specify additional libraries for linking. Note that the space before the library name is important. At least one of the above actions must be specified when using prxs. More than one action can be specified at the same time. To use prxs all in one step, you could do: prxs -c -i -d mod_custom.c