VMS Help  —  TCPIP Services, SMTP
    For exchanging electronic mail (e-mail) with users working on
    internet hosts, the TCP/IP Services product includes Simple Mail
    Transfer Protocol (SMTP), Post Office Protocol (POP) software,
    and Internet Message Access Protocol (IMAP).

    SMTP allows you to use the OpenVMS mail services to send and
    receive messages exchanged with users on other hosts. The POP and
    IMAP software allow you to use your PC mail software to receive
    and send messages. The software stores mail sent to you, even
    when the PC is turned off.

    To use TCP/IP mail services, you need the following:

    o  Knowledge of the OpenVMS Mail utility

    o  User names and host names or IP addresses of the people to
       whom you want to send mail

1  –  Sending Mail

    To send mail to another internet host also running SMTP, simply
    invoke the OpenVMS Mail utility at the DCL prompt, type SEND at
    the MAIL> prompt, and enter the destination. A remote destination
    consists of the destination user name followed by an at sign (@)
    and the destination host (such as user_name@host). If the user is
    on your local host, omit the at sign and host name.

    Specify the destination host as either a host name or an IP
    address.

    The OpenVMS Mail utility automatically detects destination
    addresses that include fully qualified host names (one in
    which the node component includes a period [.], such as
    MALCOLM@PHILOS.BU.EDU) and sends the mail using the SMTP
    protocol, unless your system has been set up to use a different
    Internet protocol (by defining an alternate protocol with the
    MAIL$INTERNET_TRANSPORT logical name).

    However, if you use a destination address that is not fully
    qualified - that is, one in which the node component does not
    include a period (.) - the Mail utility by default assumes
    the address is a DECnet address. For example, if you specified
    MALCOLM@PHILOS as the destination address, the Mail utility
    converts it to DECnet format (PHILOS::MALCOLM).

    You can force the OpenVMS Mail utility to use a specific protocol
    by defining the MAIL$INTERNET_MODE logical name. This is useful
    in cases where a mail address, such as MALCOLM@PHILOS, can be
    valid for either SMTP or DECnet.

    You can assign one of the following values to the MAIL$INTERNET_
    MODE logical name:

    o  SMTP

       OpenVMS Mail always interprets the node component of an
       unqualified address as an Internet address specification.
       (SMTP is the default mode unless you define an alternate
       Internet transport with the MAIL$INTERNET_TRANSPORT logical
       name.)

    o  DECNET

       OpenVMS Mail always interprets the node component of an
       unqualified address as a DECnet node specification.

    o  HYBRID (the default)

       OpenVMS Mail uses an Internet protocol if the node component
       of the address contains a period. If no periods are in the
       node component, Mail uses the DECnet protocol.

    Define the logical name in your LOGIN.COM file. For example, the
    following definition causes the Mail utility to interpret any
    address that does not include a period in the node component of
    the specification as an Internet address:

    $ DEFINE MAIL$INTERNET_MODE SMTP

    Another way to force the OpenVMS Mail utility to use SMTP is to
    include the SMTP% prefix immediately before the destination or
    IP address. Enclose the destination in quotation marks, as in the
    following example:

    $ MAIL
    MAIL> SEND
    To:   SMTP%"malcolm@philos"

    To prevent the OpenVMS Mail utility from automatically converting
    an unqualified Internet host name address to a DECnet format, you
    can do one of the following:

    o  Fully qualify the host name (for example, specify the
       destination address as MALCOLM@PHILOS.BU.EDU instead of
       MALCOLM@PHILOS).

    o  Define the MAIL$INTERNET_MODE logical name as SMTP.

    o  Include the SMTP% prefix before the destination address.

    For more information about the OpenVMS Mail utility and how it
    interprets addresses, see the appropriate OpenVMS documentation.

2  –  Outbound Alias

    SMTP allows you to specify an outbound alias that is applied
    to mail as it is sent and also specifies the network address to
    which a reply is sent.

3  –  Defining the Outbound Alias

    To specify an outbound alias, define the TCPIP$SMTP_FROM logical
    to the text you want your From: header to be.

    For example, you might define the logical as follows:

    $ DEFINE TCPIP$SMTP_FROM "bill.smith@xxx.com"

    This command sets the outbound alias to the following:

    From: bill.smith@xxx.com

    Define the TCPIP$SMTP_FROM logical before invoking OpenVMS Mail.

    If you always want the header to be sent with the outbound alias,
    define the logical in your login command procedure (LOGIN.COM).

    The outbound alias must be a valid address to which recipients
    can reply. If it is not valid, recipients cannot reply to you,
    and bounced mail messages are not returned to you.

    If you do not define the TCPIP$SMTP_FROM logical, the From:
    address on your mail messages is the same one that you have
    always had.

    Use only simple 7-bit ASCII characters in the value you assign to
    the TCPIP$SMTP_FROM logical. Do not use control characters.

    The address you use to define TCPIP$SMTP_FROM must be an RFC 822
    legal SMTP address; that is, user@domain. If the address is not
    interpreted correctly, the SMTP mailer ignores it and uses the
    From: address that it has constructed for you.

4  –  Personal Name String

    If you have defined an OpenVMS Mail personal name, the SMTP
    mailer appends that string to the outbound alias.

    For example, a personal name might look like the following:

    Bill L. Smith Phone: 123-456-8000

    The TCPIP$SMTP_FROM logical is defined as follows:

    $ DEFINE TCPIP$SMTP_FROM "bill.smith@xxx.com"

    The following example shows the resulting From: header:

    From: bill.smith@xxx.com (Bill L. Smith Phone: 123-456-8000)

    The personal name is appended to the From: address only if both
    of the following conditions are met:

    o  The value you give for the TCPIP$SMTP_FROM logical does not
       contain parenthetical phrases (text within parentheses).

    o  The From: address contains the SMTP domain string (the @domain
       portion of the address).

    To use a different personal name than the one defined in your
    OpenVMS Mail personal name, define the personal name string as
    part of the TCPIP$SMTP_FROM logical in a parenthetical phrase
    after the user@domain address. Separate the address from the
    parenthetical phrase with a space. Do not use double quotation
    marks (" ") in the personal name.

    For example, you can define the outbound alias logical as
    follows:

    $ DEFINE TCPIP$SMTP_FROM -
    _$ "bill.smith@xxx.com (Phone: 123-456-8000 FAX: 123-456-9000)"

    Note the following restrictions:

    o  The SMTP mailer does not allow you to define the TCPIP$SMTP_
       FROM logical using the following syntax:

       "personal-name" <user@host>

    o  Do not specify the logical as follows:

       $ DEFINE TCPIP$SMTP_FROM """personal-name"" <bill.smith@xxx.com>"

       Instead, define the logical as follows:

       $ DEFINE TCPIP$SMTP_FROM "bill.smith@xxx.com (personal-name)"

5  –  Substitute Domain String

    If you define TCPIP$SMTP_FROM without an SMTP domain string (the
    @domain portion of the address), SMTP appends the substitute
    domain name to the text you define. If you do not define a
    substitute domain name, the host name is used.

    For example, the host is configured with a substitute domain name
    of x.com, and the TCPIP$SMTP_FROM logical is defined as follows:

    $ DEFINE TCPIP$SMTP_FROM "bill.smith"

    In this case, the resulting address is as follows:

    From: bill.smith@x.com

    However, if the host is not configured with a substitute domain
    and the host name is host.x.com, SMTP_FROM is defined as follows:

    $ DEFINE TCPIP$SMTP_FROM "bill smith"

    In this case, the resulting address is as follows:

    From: bill.smith@host.x.com

6  –  Disabling Modifications

    To disable the modifications that TCPIP SMTP makes to the value
    you assign to TCPIP$SMTP_FROM (such as appending the OpenVMS
    personal name and @domain to a value with no @domain), include
    the string [VERBATIM].

    For example:

    $ DEFINE TCPIP$SMTP_FROM "[VERBATIM] bill.smith@xxx.com"

    The resulting address is as follows:

    From: bill.smith@xxx.com

7  –  Return-Path Header

    The address you define is used for the Return-Path: mail header.
    The Return-Path: header is used to bounce undeliverable mail.
    Note that the version of the text used for the Return-Path:
    header is stripped of comments (such as the personal name string)
    and always has a domain string.

8  –  From: Header

    When the TCPIP$SMTP_FROM logical is used to set the From: header,
    the text that would normally have been used for the From: header
    is added to the headers as an X-VMS-True-From: header.

9  –  Disabling Outbound Alias

    To disable outbound alias processing and use of the TCPIP$SMTP_
    FROM logical, define the following system logical:

    $ DEFINE/SYSTEM TCPIP$SMTP_PROHIBIT_USER_HEADERS 1

10  –  Multiple Recipients

    To send mail to more than one user, use the SEND command, but at
    the To: prompt, type a list of names or the name of an existing
    distribution list.

    When you type a list of names, use the following guidelines:

    o  Separate the names with a comma ( , ).

    o  If multiple users are on the same remote host, type the full
       user_name@host combination for each user.

    o  If a user is on your local host, omit the at sign (@) and host
       name.

    For example:

    MAIL>  SEND
    To: user1,user2,user3@host3,user4@host4

    In the preceding example, user1 and user2 are located on the
    local OpenVMS system; user3 is located on host3; and user4 is
    located on host4.

    MAIL> SEND
    To: user1@host5,user2@host5

    In the preceding example, both user1 and user2 are located on
    remote host host5.

    To send mail to multiple users by entering the name of a
    distribution list, follow these guidelines:

    o  The file with the distribution list can be yours or belong to
       someone else.

    o  The file can reside locally or remotely.

    o  Do not include the names of other distribution lists in the
       distribution list.

    You can use two kinds of distribution lists: OpenVMS distribution
    lists and SMTP distribution lists.

10.1  –  OpenVMS list

    Generate an OpenVMS distribution list as follows:

    -  Create a .DIS file in your own directory or use an existing
       one.

    -  You can include comment lines (lines preceded by an
       exclamation mark [!]) in the .DIS list file.

    -  You can include both OpenVMS addresses and SMTP addresses.
       If you want the OpenVMS Mail utility to use SMTP for all
       SMTP addresses, qualified and unqualified, either set the
       MAIL$INTERNET_MODE logical name to SMTP, specify fully
       qualified SMTP addresses only, or use the SMTP% prefix with
       the destination enclosed in quotation marks.

    -  To send mail to the people on your distribution list, enter
       the following command:

       MAIL>  SEND
       To:  @list_name

10.2  –  SMTP list

    Generate an SMTP distribution list as follows:

    -  Use an existing .DIS file or create a .DIS file in
       SYS$SPECIFIC:[TCPIP$SMTP] or, if defined on your system,
       TCPIP$SMTP_COMMON:.

    -  Give the list a unique name that is not the same as a local
       user name.

    -  To specify comment lines, use an exclamation mark (!) in the
       first column.

    -  Include only SMTP addresses.

    -  Use one address per line.

    -  To send mail to the people on this distribution list, enter
       the following command:

       MAIL>  SEND
       To:  list_name@host_where_list_resides

       If the MAIL$INTERNET_MODE logical name is not set to SMTP,
       either specify a fully qualified host name or use the SMTP%
       prefix.

10.3  –  Examples

    The following examples show different methods of using
    distribution lists.

    1. This example sends mail to users whose names are on the local
       OpenVMS distribution list AGENCIES.DIS. The distribution list
       file is displayed in this example. The MAIL$INTERNET_MODE
       logical name is not set, so by default unqualified Internet
       addresses would be sent over DECnet; therefore, the AUDUBON@NY
       address is included with the SMTP% prefix and quotation marks.

       $ TYPE AGENCIES.DIS

       !
       ! This is an OpenVMS distribution file named AGENCIES.DIS.
       !
       SMTP%"audubon@ny"
       WILLIAMS@BELTWAY.ORG
       WILDLIFE@DALLAS.ORG
       jmuir@19.8.7.6
       SEC@GP.INTER8.ORG
       BATES::SCOPE
       !
       $ MAIL
       MAIL> SEND
       To:  @AGENCIES.DIS
       Subj: NEWS TO WATCH FOR

    2. This example sends mail to users whose names are on the
       local SMTP distribution list SYS$SPECIFIC:[TCPIP$SMTP]NATL_
       INTEREST.DIS. The distribution list file is displayed in this
       example.

       $  TYPE NATL_INTEREST.DIS

       green@19.8.7.6
       wlf@19.7.6.5
       arlo@19.4.3.2
       free::monicaL
       wendell@biolo.ne.edu
       $ MAIL
       MAIL>  SEND
       To:  natl_interest@main_office.org
       Subj:  News Items

    3. This example sends mail to the users on SMTP distribution list
       FINANCE_CENTERS.DIS, which is maintained on remote mail server
       host HOLBROOK.

       $  TYPE FINANCE_CENTERS.DIS

       ny_accts@23.9.7.4
       sf_stocks@23.7.11.2
       dallas_pfs@23.1.5.1
       denver_accts@holbrook
       $  MAIL
       MAIL>  SEND
       To:  finance_centers@holbrook
       Subj: Portfolio Activity

11  –  Reading Mail

    To read received mail, follow these steps:

    1. At the DCL prompt, type MAIL.

    2. At the MAIL> prompt, enter the DIRECTORY command to view a
       list of received messages.

    3. Enter the READ command or indicate the message number you want
       to view in exactly the same way as you would for OpenVMS mail.

    In the following example, a user views the directory of unread
    new mail and selects message 3 to read.

    $  MAIL

    You have 3 new messages.

    MAIL> DIRECTORY
    NEWMAIL

    # From                 Date         Subject

    1 GWAY::SMTP%"helenm@bhc 10-MAR-2001  Just Checking In
    2 GWAY::SMTP%"mays@sfg 11-MAR-2001  Common Bases
    3 CBIRD::SMTP%"seaway 12-MAR-2001  Cruises

    MAIL> 3

12  –  Name String

    You can define a personal name string that is included at the
    top of the mail messages you send. To create a personal name with
    SMTP mail, use the SET PERSONAL_NAME command. Note the following
    restrictions:

    o  Enclose the string in double quotation marks.

    o  Do not use additional double quotation marks within the
       string.

    o  You can use single quotation marks ( ' ' ) within the personal
       name.

    o  Do not use 8-bit ASCII characters (for example, ä or ö).
       The eighth bit is truncated. For example, ä becomes d and ö
       becomes v.

    The following commmand sets a personal name that includes
    quotation marks:

    $ MAIL
    MAIL> SET PERSONAL_NAME "'Wealth' is in the mind"

13  –  Carbon-Copies

    You can enable carbon copying by using the SET CC-PROMPT command.
    Follow these guidelines when you specify destinations for the CC:
    prompt:

    o  Follow the OpenVMS Mail conventions for copying mail to other
       people or to yourself.

    o  For entering the correct address, follow the guidelines listed
       in the Sending Mail section.

    The following example sends mail to user AL and copies to users
    ROLLINS, BOND, and RICH:

    MAIL>  SEND
    To:  al@airways
    CC:  rollins,bond,rich@flight_central.com
    Subj: Directions for Night Flight

14  –  Forwarding Messages

    You can forward any mail you receive to any internet host. Follow
    the OpenVMS Mail conventions for forwarding mail.

15  –  Routing Mail Using UUCP

    The UNIX-to-UNIX Copy Program (UUCP) lets a system copy files to
    and from other systems running UUCP. UUCP is usually used to copy
    files over a dialup connection.

    To route mail using UUCP, ask your system manager to define the
    general gateway in the SMTP configuration.

    To use SMTP to route mail to a system running UUCP, address the
    mail as follows:

    MAIL> SEND
    To: SMTP%"user_name!uucp_host"

    The following example sends mail to geoffrey at host haldir:

    $ MAIL
    MAIL> SEND
    To:  SMTP%"geoffrey!haldir.of.com"

    Ask your system manager whether you need to specify a gateway
    host in mail addresses when you work on UUCP dialup lines.

16  –  Management Commands

    The following table lists the management commands that can help
    you work with SMTP mail currently in a queue. Type them at the
    TCPIP> prompt.

    Table 1 Commands for Using SMTP

    Command          Function

    SHOW MAIL        Displays information about mail messages queued
                     to your process' user name.
    REMOVE MAIL      Deletes mail messages that are in a holding
                     state in SMTP queues.
    SEND MAIL        Releases for delivery a mail message that is in
                     a holding state.

17  –  Displaying Mail Status

    Use the SHOW MAIL command to display the following information
    about SMTP mail:

    o  Message (entry) number of the queued mail

    o  User name of the sender (to display information about other
       users, you need SYSPRV or BYPASS privilege)

    o  File name of the queued mail

    o  Status of a message

18  –  Deleting Queued Mail

    The following examples show how to delete mail messages from
    SMTP queues using the TCP/IP command REMOVE (similar to the DCL
    command DELETE/ENTRY).

                                   NOTE

       Use this command only to release mail messages that are
       being held; do not use this command to delete mail messages
       in the processing state.

19  –  Releasing Queued Mail

    The following example shows how to requeue an SMTP mail message
    that is currently holding, using the TCP/IP command SEND MAIL
    (similar to the DCL command ENTRY/RELEASE). You are prompted to
    confirm that you want the mail message requeued.

    $ TCPIP SEND MAIL /ENTRY=828
    _PLUTO$DKD0:[MARLOW]970207015114580_MARLOW.TCPIP_PLUTO;1? y
Close Help