/*++ /* NAME /* mail_queue 3 /* SUMMARY /* mail queue file access /* SYNOPSIS /* #include <mail_queue.h> /* /* VSTREAM *mail_queue_enter(queue_name, mode, tp) /* const char *queue_name; /* mode_t mode; /* struct timeval *tp; /* /* VSTREAM *mail_queue_open(queue_name, queue_id, flags, mode) /* const char *queue_name; /* const char *queue_id; /* int flags; /* mode_t mode; /* /* char *mail_queue_dir(buf, queue_name, queue_id) /* VSTRING *buf; /* const char *queue_name; /* const char *queue_id; /* /* char *mail_queue_path(buf, queue_name, queue_id) /* VSTRING *buf; /* const char *queue_name; /* const char *queue_id; /* /* int mail_queue_mkdirs(path) /* const char *path; /* /* int mail_queue_rename(queue_id, old_queue, new_queue) /* const char *queue_id; /* const char *old_queue; /* const char *new_queue; /* /* int mail_queue_remove(queue_name, queue_id) /* const char *queue_name; /* const char *queue_id; /* /* int mail_queue_name_ok(queue_name) /* const char *queue_name; /* /* int mail_queue_id_ok(queue_id) /* const char *queue_id; /* DESCRIPTION /* This module encapsulates access to the mail queue hierarchy. /* Unlike most other modules, this one does not abort the program /* in case of file access problems. But it does abort when the /* application attempts to use a malformed queue name or queue id. /* /* mail_queue_enter() creates an entry in the named queue. The queue /* id is the file base name, see VSTREAM_PATH(). Queue ids are /* relatively short strings and are recycled in the course of time. /* The only guarantee given is that on a given machine, no two queue /* entries will have the same queue ID at the same time. The tp /* argument, if not a null pointer, receives the time stamp that /* corresponds with the queue ID. /* /* mail_queue_open() opens the named queue file. The \fIflags\fR /* and \fImode\fR arguments are as with open(2). The result is a /* null pointer in case of problems. /* /* mail_queue_dir() returns the directory name of the specified queue /* file. When a null result buffer pointer is provided, the result is /* written to a private buffer that may be overwritten upon the next /* call. /* /* mail_queue_path() returns the pathname of the specified queue /* file. When a null result buffer pointer is provided, the result /* is written to a private buffer that may be overwritten upon the /* next call. /* /* mail_queue_mkdirs() creates missing parent directories /* for the file named in \fBpath\fR. A non-zero result means /* that the operation failed. /* /* mail_queue_rename() renames a queue file. A non-zero result /* means the operation failed. /* /* mail_queue_remove() removes the named queue file. A non-zero result /* means the operation failed. /* /* mail_queue_name_ok() validates a mail queue name and returns /* non-zero (true) if the name contains no nasty characters. /* /* mail_queue_id_ok() does the same thing for mail queue ID names. /* DIAGNOSTICS /* Panic: invalid queue name or id given to mail_queue_path(), /* mail_queue_rename(), or mail_queue_remove(). /* Fatal error: out of memory. /* LICENSE /* .ad /* .fi /* The Secure Mailer license must be distributed with this software. /* AUTHOR(S) /* Wietse Venema /* IBM T.J. Watson Research /* P.O. Box 704 /* Yorktown Heights, NY 10598, USA
/*--*/
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.18Bemerkung:
(vorverarbeitet am 2026-08-08)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.