

![[Extensions]](IUPOP3_tab_3.gif)



POP3 extensions
Implementations of POP3 servers can have additional commands starting with
the "XTND" keyword. This commands are not usable from "normal" POP3 clients and
are intended for server configuration and maintenance. They are accessible
by telneting to the server port or through special tools.
IUPOP3 XTND commands
IUPOP3 2.0 supports the following extended commands:
- XTND help    
 - shows a list of supported XTND commands
 - XTND client  
 - notes the client identification
 - XTND info    
 - returns infos about some of the process resources
 - XTND stats   
 - shows the threads statistics
 - XTND netstats
 - shows the network I/O statistics
 - XTND loglevel
 - sets the current logging level
 - XTND options set
 - resets the run-time options from the logical name table
 - XTND options shows
 - shows the run-time options
 - XTND kill    
 - stops the specified thread immediatly
 - XTND restart 
 - restarts the server
 - XTND shutdown
 - stops the server
 
Some of the commands needs special validation from the POP_XTND.DAT file in the
IUPOP3_EXE directory. 
Run-time Configuration Options
The behavior of the IUPOP3 server can be controlled via a set of commandline
switches or OpenVMS logicals. This includes 
mail processing features
(ignore_mail11_headers, default_to_smtp, enable_long_lines, personal_name, 
 purge_mailboxes, use_bottom_headers, iupop3_node_xxx, foreign_folder), 
security issues 
(scan_intrusion, apop_check_duplicate, ignore_expired_passwords, auth_commands), 
performance considerations 
(max_messages, client_timeout, fast_scan, use_mail_folder, purge_reclaim_threshold,
read_direct_threshold, default_sendbuffer_size ) 
and others.
The configuration options are specified as VMS logicals typically stored in the system
logical name table. They are set from the IUPOP3_LOGICALS.COM command file
during startup. If they are changed later, the server has to be notified with the
"XTND options set" command.
Logicals used for Server Configuration:
Mail Processing Options
IUPOP3_IGNORE_MAIL11_HEADERS             (bool)
   This option controls whether or not IUPOP3 will completely ignore the 
   VMS Mail headers (From:, To:, etc.) for non-DECnet mail messages. 
   The "From" line is checked to decide where the mail comes from. 
   For internet mails, the original RFC 822 headers are grabbed from
   the message body and used instead of the mail11 headers. Check the
   configuration of the TCP/IP package to ensure they are stored correctly!
   MIME coded messages are only usable with their original headers.
   For DECNET messages some RFC 822 compliant headers are generated from the
   mail11 headers.
IUPOP3_DEFAULT_TO_SMTP                    (bool)
   Sometimes the "From" isn't informative enough to detect where
   the message comes from. For example it can contain a username only.
   This option controls if such a message is treated as a DECNET or a internet
   message.
IUPOP3_ENABLE_LONG_LINES                  (bool)
   Enables passing of lines longer than 256 bytes to the client
   using undocumented features of the callable mail routines.
   AFAIK only MX creates messages with long lines. 
IUPOP3_PERSONAL_NAME                     (bool)
   This options controls whether or not IUPOP3 will provide your POP3 
   clients with "From:" lines that include the sender's personal name, 
   if one appeared on the original VMS "From:" line.  Below, the first 
   example contains the sender's personal name, and the second does not:
    From: "larry hughes" <hughes@indiana.edu> 
    From: <hughes@indiana.edu> 
   Be warned that some POP3 clients get confused by the presence of 
   personal names when you attempt to reply to a mail message.  Others 
   usually don't mind personal names, but get confused when the name 
   contains commas and other special characters.  If you enable this 
   option, please test very carefully with your POP3 clients.
IUPOP3_PURGE_MAILBOXES                    (bool)
   Enables purging of mailboxes. Mailboxes are only purged if this
   option is set and the user has enabled autopurging in VMS mail. 
   If this option is set to false, deleted messages are only moved 
   to the wastebasket folder but not deleted. 
   The PURGE_RECLAIM_THRESHOLD option is ignored in this case.
IUPOP3_USE_BOTTOM_HEADERS                (bool)
   UCX (or currently: Digital TCP/IP services for OpenVMS) can store the 
   RFC 822 headers at the top or at the bottom of the mail.
   Specify this option *only* 
   
      -  if you have UCX
      
 -  if you have SMTP configured to put the RFC 822 headers at the bottom of the message
      
 -  and you have specified the IGNORE_MAIL11_HEADERS option.
   
 
IUPOP3_FOREIGN_FOLDER                      (string)
  IUPOP3 ignores delete operations on foreign mails because they
  can only be handled locally, only an informational message is send
  to the client. With this logical defined IUPOP3 moves the foreign
  mail to the specified folder instead of ignoring the delete 
  operation. This logical is checked when a foreign mail is to be
  deleted.
  Example:
  $DEFINE/SYSTEM IUPOP3_FOREIGN_FOLDER "FOREIGN-MAIL"
IUPOP3_NODE_xxx                            (string)
  Maps decnet node xxx to specified domain.
  This is very useful for building meaningful reply addresses.
  
Example:
  Mapping without this logical defined:
        nodename::username   --->  username@nodename
  Mapping with this logical defined:
  define /system IUPOP3_NODE_nodename  "node.sub.top"
        nodename::username   --->  username@node.sub.top
  
  This logical is checked for each message.
Security Options
IUPOP3_SCAN_INTRUSION                    (bool)
   If enabled the security server is asked via the $SCAN_INTRUSION
   system service to check for beakin attempts.
   After a single password error the output of DCL's SHOW INTRUSION  command 
   may look like
   
   NETWORK      SUSPECT       2    7-AUG-1997 20:07:54.15  IUPOP3::127.0.0.1:stenns
   
   The last field contains the source of the suspect intrusion.
   At least OpenVMS/VAX 6.1 or OpenVMS/Alpha 6.2 is required. 
   The IUPOP3 process requires the security privilege.
IUPOP3_APOP_CHECK_DUPLICATE               (bool)
   Rejects access if APOP's shared secret and the interactive password is identical.
   The APOP shared secred is known as clear text both to
   client and server. On the OpenVMS site it is stored in the POP_SECRET.DAT file in
   the user's mail directory. It should never be the same as the user's login
   password!
IUPOP3_IGNORE_EXPIRED_PASSWORDS          (bool)
   With this option enabled the maildrop access is granted even
   if the specified password has been expired. Many network services
   ignores password expiration.
IUPOP3_AUTH_COMMANDS                       (string)
  RFC 1939 makes the user/pass and apop authorization commands optional.
  A value of "user" means only the user/pass combination is allowed,
  "apop" means only the apop command is recognized, and any other value
  means both commands are allowed (this is the default).
Performance Options
IUPOP3_MAX_MESSAGES                       (numerical)
   Sets the maximum number of messages a user can download during
   a single session. Same as the -maxmsg commandline switch.
IUPOP3_CLIENT_TIMEOUT                      (numerical)
   Defines the client timeout in minutes. RFC 1939 recommends a
   minimum value of 10 minutes.
IUPOP3_FAST_SCAN                         (bool)
   With this option enabled selection of a maildrop is significant faster.
   The size of each message reported to the client is estimated from the number of 
   records (available from the callable mail api) rather than checking
   the size of each mail file. Mail directories might be quite large and 
   checking the size of a large number of files may be rather slow. 
IUPOP3_USE_MAIL_FOLDER                   (bool)
   Normally only the NEWMAIL folder is shown and the messages are moved 
   to the MAIL folder after read. This makes it impossible to download 
   a message previously read with VMS Mail or to receive messages
   with more than one POP client.
   With this option set to TRUE the MAIL folder is shown instead. All messages
   from the NEWMAIL folder is moved to the MAIL folder before opening.
   If enabled, the IUPOP3_MAX_MESSAGES environment variable should be set to
   a high value and the FAST_SCAN option should be enabled, too.
IUPOP3_PURGE_RECLAIM_THRESHOLD            (numerical)
   Defines the number of deleted message bytes required for a 
   purge/reclaim operation. During normal purge external message
   files are deleted, but some data within mail.mai remains 
   unavailable. Purge/reclaim requires mail.mai be locked, so no mail
   can be received during this operation. The default value is
   32176 if the -purge_reclaim commandline option is set. A value
   of 0 disables purge/reclaim.
IUPOP3_READ_DIRECT_THRESHOLD           
   Defines the max. file size in bytes where the callable mail
   routines are used to process the file. Larger files are read
   with ANSI-C functions. Default is zero, which means no threshold.
   The callable mail routines read the whole file into memory, 
   even if it contains a lot of megabytes of stuff.
IUPOP3_DEFAULT_SENDBUFFER_SIZE          
   Defines the default buffer size in bytes which is allocated for
   each active thread. Use a value between 1 kb and 
   128 kb (defined in iupop3_general.h). Default is 4 kb.
   On sending large messages the send buffer is filled and queued to
   the network driver. While the driver sends the buffer content, 
   another thread can be processed.
   Up to 64 kb are queued in a single I/O to the network driver.
Miscellaneous Options
SYS$TIMEZONE_DIFFERENTIAL                            (numerical)
  Contains the actual time offset to GMT in seconds. This logical is already part of newer
  OpenVMS versions (>6.x at least). Remark: US sites have negative values.