Mail::SpamAssassin::Util(3pm)
NAME
Mail::SpamAssassin::Util - utility functions
DESCRIPTION
A general class for utility functions. Please use this for functions
that stand alone, without requiring a $self object, Portability functions especially.
NOTE: The functions in this module are to be considered private. Their
API may change at any point, and it's expected that they'll only be
used by other Mail::SpamAssassin modules. (TODO: we should probably
revisit this if it's useful for plugin development.)
- $module = first_available_module (@module_list)
- Return the name of the first module that can be successfully loaded with "require" from the list. Returns "undef" if none are available.
- This is used instead of "AnyDBM_File" as follows:
my $module = Mail::SpamAssassin::Util::first_available_module(qw(DB_File GDBM_File NDBM_File SDBM_File));tie %hash, $module, $path, [... args]; - Note that "SDBM_File" is guaranteed to be present, since it comes
with Perl. - my ($filepath, $filehandle) = secure_tmpfile();
- Generates a filename for a temporary file, opens it exclusively and
securely, and returns a filehandle to the open file (opened
O_RDWR). - If it cannot open a file after 20 tries, it returns "undef".
- my ($dirpath) = secure_tmpdir();
- Generates a directory for temporary files. Creates it securely and returns the path to the directory.
- If it cannot create a directory after 20 tries, it returns "undef".