| Previous | Contents | Index | 
With the exception of the G3 files used by the G3_TO_FAX channel and 
the P1 files found in the inbound and outbound X.400 channels, messages 
queued for delivery are always stored in the same format, described 
below in Section 1.5.2, regardless of the type of channel in which they 
are queued. All messages are stored in subdirectories under the PMDF 
queue directory.7 Each channel has its own subdirectory, 
with the name of the subdirectory being that of the channel. For 
example, messages queued for delivery to Internet destinations are 
typically handled by a tcp_local channel, hence stored in 
PMDF_QUEUE:[tcp_local] on OpenVMS systems, 
/pmdf/queue/tcp_local/ on UNIX systems, and usually 
C:\pmdf\queue\tcp_local\ on NT. A channel subdirectory can 
in turn have multiple subdirectories beneath it, usually purely for 
file system usage reasons,8 but also some channels, such as 
the MAILSERV and PRINTER channels, use a subsidiary spool 
subdirectory for storing temporary file. Each file in a channel 
subdirectory contains a single message.
On OpenVMS, some temporary files are stored in the top level queue directory. The names of these temporary files usually begin with a dollar sign, $. 
     | 
  
All of these directories are protected against access by nonprivileged 
users. The first two characters of each file name are a representation 
of the number of times delivery has been attempted on the file. This 
information is encoded in "complemented base 36". Files are 
initially created having names beginning with 
"ZZ". Upon completion of an unsuccessful 
delivery attempt, a file is renamed, counting down in complemented base 
36. So a name beginning with "ZY" indicates that 
at least one attempt has been made, a name beginning with 
"ZA" indicatees that at least 25 attempts have 
been made, a name beginning with "Z0" indicates 
that at least 35 attempts have been made, a name beginning with 
"YZ" indicates that at least 36 attempts have 
been made, and so on.
The remainder of the file names are pseudo-random strings of 
hexadecimal characters that serve to make the file names unique. The 
file type (extension) is always a pair of letters or digits, usually 
"00". Messages being held have a 
".HELD" as the file type; these messages are not 
eligible for delivery processing and must be renamed to have a 
two-character file type before they will become eligible for 
delivery.9
The actual internal format of the message files is irrelevant. Those who want to write their own PMDF channel programs should access the messages via the documented PMDF API interface. This interface is documented in the PMDF Programmer's Reference Manual. PMDF itself uses the MM subroutine library to enqueue messages and the QU subroutine library to dequeue messages. However, it is sometimes useful for a system manager to examine messages in the queues, so it is nice to note that messages are stored as ASCII text and message files can be typed on a terminal without adverse effects. An overview is provided of message file format below in Section 1.5.2.
      7  
         | 
  
| Previous | Next | Contents | Index |