# DIGITAL TCP/IP Services for OpenVMS
User's Guide

Previous | Contents

Specify the destination host as either a host name or an IP address. The following example sends mail to user MALCOLM at host PHILOS.BU.EDU:

    $ MAIL
    MAIL> SEND [Return]
    To:     malcolm@philos.bu.edu [Return]
    Subj:   Final Exams[Return]

The following example sends mail to user MALCOLM at the host with IP address 16.20.40.59:

    $ MAIL
    MAIL> SEND [Return]
    To:     malcolm@16.20.40.59 [Return]
    Subj:   Final Exams[Return]

The OpenVMS Mail utility automatically detects destination addresses that include fully qualified host names (where 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 the 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:

- SMTP
  Mail always interprets the node component of an unqualified address as an Internet address specification. (SMTP is the default transport unless you define an alternate Internet transport with the MAIL$INTERNET_TRANSPORT logical name.)
- DECNET
  Mail always interprets the node component of an unqualified address as a DECnet node specification.
- HYBRID (the default)
  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. At the To: prompt, type SMTP% and, with no space, either the destination name or IP address. Enclose the destination in quotation marks, as in the following example:

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

So, if you want to prevent the OpenVMS Mail utility from automatically converting an unqualified Internet host name address to a format for DECnet use, you have three choices:

- Fully qualify the host name (for example, specify MALCOLM@PHILOS.BU.EDU instead of MALCOLM@PHILOS).
- Define the MAIL$INTERNET_MODE logical name as SMTP.
- Include the SMTP% prefix and the destination address in quotation marks (for example, SMTP%"MALCOLM@PHILOS.BU.EDU").

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

# 6.3 Sending Mail to Multiple Users

To send mail to more than one user, use the SEND command as discussed in the previous section, but at the To: prompt type one of the following:

- A list of names (Section 6.3.1)
- The name of an existing distribution list (Section 6.3.2)

## 6.3.1 Typing a List of Names

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

- Separate each name with a comma ( , ).
- If multiple users are on the same remote host, type the full user_name@host combination for each user.
- If a user is on your local host, omit the ampersand (@) and host.

Use the following syntax:

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

where:

- user1 is located at the local OpenVMS system.
- user2 is located at the local OpenVMS system.
- user3 is located at host3.
- user4 is located at host4.

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

In this example, both users are located at remote host5.

The following example sends the same mail to:

- Users NOWAK and BRENT on host CENTRAL.GREEN.ORG
- User MILLER on host BOSTON.GREEN.ORG

    MAIL> SEND MEETINGS.TXT
    To: NOWAK@CENTRAL.GREEN.ORG,BRENT@CENTRAL.GREEN.ORG, MILLER@BOSTON.GREEN.ORG
    Subj:  SCHEDULE AND AGENDAS

## 6.3.2 Distribution Lists

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

- The file with the distribution list can be yours or belong to someone else.
- The file can reside locally or remotely.
- Do not include the names of other distribution lists in the distribution list.

You can use two kinds of distribution lists:

- OpenVMS distribution list
  - Create a .DIS file in your own directory or use an existing one.
  - You can include comment lines (lines preceded by an exclamation mark (!)).
  - You can include both OpenVMS addresses and SMTP addresses. If you want the 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, issue:

        MAIL> SEND
        To: @list_name

- SMTP distribution list
  - Create, or use an existing, .DIS file in SYS$SPECIFIC:[UCX_SMTP] or, if defined on your system, UCX$SMTP_COMMON:.
  - Give the list a unique name that is not the same as a local user name.
  - Specify comment lines with 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, issue the following command:

        MAIL> SEND
        To: list_name@host_where_list_resides

    If the MAIL$INTERNET_MODE logical name is not set to SMTP, specify a fully qualified host name or use the SMTP% prefix with quotation marks enclosing the distribution list/host specification.

The following examples show some 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:[UCX_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
       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

# 6.4 Receiving Mail

To read received mail, follow these steps:

1. At the DCL prompt, type MAIL.
2. At the MAIL> prompt, use the DIRECTORY command to view a list of received messages.
3. Use 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-1997  Just Checking In
    2 GWAY::SMTP%"mays@sfg 11-MAR-1997  Common Bases
    3 CBIRD::SMTP%"seaway 12-MAR-1997  Cruises

    MAIL> 3

# 6.5 OpenVMS Mail Personal Name String

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

- Enclose the string in quotation marks.
- Do not use additional double quotation marks within the string.
- You may use single quotation marks ( ' ' ).
- Do not use 8-bit ASCII characters, for example, ä or öaut;. The eighth bit is truncated. For example, ä becomes d and öaut; becomes v.

The following example shows a user setting a personal name that includes quotation marks:

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

# 6.6 Carbon-Copying Messages

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

- Follow the OpenVMS Mail conventions for copying mail to other people or to yourself.
- For typing the correct address, follow the guidelines listed in Section 6.2.

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

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

In the following example, OpenVMS user BRODIE sends mail to UNIX user owens and copies soltau.

    MAIL> SET CC_PROMPT
    MAIL> SEND
    To:     owens@kezar
    CC:     soltau@fgtoo.bonkers.org
    Subj:   Goals for the Week
    Enter your message below. Press CTRL/Z when complete, or CTRL/C to quit:

    RC: Let's get a jump on the ball this time.
    We'll meet before the conference to organize.
    - J.B.[Ctrl/Z] (not echoed) [Exit]

# 6.7 Forwarding Messages

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

If you move to another system that supports SMTP, SMTP can forward your mail to your new location. When you set this features, type the new address within three sets of quotation marks.

Use the following syntax:

    MAIL> SET FORWARD
    _Address:SMTP%"""new_user_name@forwarding_host"""

To set the forward feature for another user, type the /USER qualifier. Issue:

    MAIL> SET FORWARD/USER=vms_node::name
    _Address:SMTP%"""new_user_name@forwrding_host"""

For example, after reading a message, the FORWARD command forwards it to user SPAN at host MILWAK.

    MAIL> FORWARD
    To: SMTP%"span@milwak"
    CC: SELF
    Subj:    Who's Starting

In the following example, user CYGNET sets automatic SMTP forwarding from host NOW to user ELLIS at host FUTURE:

    MAIL> SET FORWARD /USER=now::cygnet
    _Address: SMTP%"""ellis@future"""

# 6.8 Using Mail from Your PC

With SMTP and the Post Office Protocol (POP) functionality, you can receive and send OpenVMS mail from your PC.

POP is a mail repository that accepts and stores your mail even when the PC is turned off. At your request, the POP server reads mail from your OpenVMS NEWMAIL folder, then moves the mail to your MAIL folder.

To send and receive mail on your PC, make sure the system manager has configured the POP server for use on your PC (the POP client system).

To set up your POP client account, use one of the following methods:

- On networks where maximum security is not required, enter your PC mail application and configure a user name and password into the system.
  The user name and password pair becomes authorization information for the UCX system, not your POP client system. Your PC client sends the password to the POP server unencrypted.
  As an added security measure, POP permits only two user name and password authorization attempts per TCP connection.
- On networks where maximum security is required, enter your PC mail account and configure a user name and shared-secret password into the system.
  This method is called the APOP authorization method where you store a shared-secret password in a one-line file named POP_SECRET.DAT in your default OpenVMS mail directory.
  You can use the DCL command CREATE or your text editor to create the file and specify a password string, then set the file protection to prevent other users from accessing it. For example:

      $ SET DEFAULT USER$DISK:[JONES.MAIL]
      $ CREATE POP_SECRET.DAT
      xyztancreff [Ctrl/Z]
      $ SET FILE/PROT=(s,w,g,o:rwed) POP_SECRET.DAT

  The shared-secret password cannot exceed 500 characters.
  Each time you enter your PC mail application, the shared-secret string is sent from the PC client to the POP server using an encryption process.

For more information about the POP process, including information about how POP builds SMTP-compliant mail headers, see the DIGITAL TCP/IP Services for OpenVMS Management guide.

# 6.9 Using the UNIX-to-UNIX Copy Program

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 (see Section 6.9.1).

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"

## 6.9.1 Dialup Connections

Ask your system manager if you need to specify a gateway host in mail addresses when you work on UNIX-to-UNIX Copy Program (UUCP) dialup lines.

The following example sends mail during a dialup connection by specifying a gateway host:

    MAIL> SEND
    To: gateway_host!crandle!watts
    CC:     billw,jenny,ibis
    Subj:   Events Schedule

# 6.10 UCX Management Commands for Mail

You can use the UCX management commands described in Table 6-1 to help you work with SMTP mail messages currently in a queue. Type these commands at the UCX> prompt.

Table 6-1 UCX Commands for Using SMTP
Command | Function
--- | ---
SHOW MAIL | Displays information about mail
REMOVE MAIL | Deletes mail messages that are in holding state in SMTP queues
SEND MAIL | Releases for delivery a mail message that is in a holding state

The following subsections describe how to use these commands. For full command descriptions, see the DIGITAL TCP/IP Services for OpenVMS Management Command Reference.

## 6.10.1 Displaying SMTP Mail Status Information

Use the UCX SHOW MAIL command to display information about SMTP mail, such as:

- Message (entry) number of the queued mail
- User name of the sender (to display information about other users, you need SYSPRV or BYPASS privileges)
- File name of the queued mail
- Status of a message

The following examples show how to display SMTP mail status information.

1. The following command displays information about message 826 in an SMTP queue. By default, the command returns brief information. Specify /FULL for more detailed information, as in the example that follows.

       $ UCX SHOW MAIL /ENTRY=826

       SMTP Mail Queue Entry   826    User: MARLOW
         File: _PLUTO$DKD0:[MARLOW]970207015114579_MARLOW.UCX_PLUTO;1
         Status: Processing

2. The following command displays detailed information about all your mail. The /RECIPIENT qualifier, used with the /FULL qualifier, displays selected classes of information, depending on the =option value you specify:

   Option | Description
   --- | ---
   ALL | Shows failed, sent, and unsent messages
   FAILED | Shows messages that could not be read for a particular recipient
   SENT | Shows successful deliveries to a particular recipient
   UNSENT | Shows messages that, as yet, are unsent

       $ UCX
       UCX> SHOW MAIL /FULL /RECIPIENT=ALL

       SMTP Mail Queue Entry:    826        User: MARLOW
       File: _PLUTO$DKD0:[MARLOW]970207015114579_MARLOW.UCX_PLUTO;1
       Status: Processing

       Message Destinations:

           Address:  marlow@pluto

       Message Headers:

           Return Path: ???

       SMTP Mail Queue Entry:    828       User: MARLOW
         File: _PLUTO$DKD0:[MARLOW]970207015114580_MARLOW.UCX_PLUTO;1
         Status: Holding

       Message Destinations:

           Address:  marlow@pluto

       Message Headers:

           Return Path: ???

## 6.10.2 Deleting Holding State Mail Messages from SMTP Queues

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

> 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.

1. The following example deletes mail message 828, a message that is holding (the message corresponds to your process's user name, or you have SYSPRV or BYPASS privileges). You are prompted to confirm that you want the message deleted.

       $ UCX REMOVE MAIL /ENTRY=828
       _PLUTO$DKD0:[MARLOW]970207015114580_MARLOW.UCX_PLUTO;1? y

2. This next example removes all messages for your process's user name, or deletes everything in the SMTP queue if you have either SYSPRV or BYPASS privileges. The /NOCONFIRM qualifier prevents UCX from prompting you for confirmation. Before deletion, UCX copies this queued mail to the specified directory.

       $ UCX REMOVE MAIL /NOCONFIRM /COPY=[MARLOW.OLD_MAIL]

## 6.10.3 Releasing Holding State SMTP Mail Messages for Delivery

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

    $ UCX SEND MAIL /ENTRY=828
    _PLUTO$DKD0:[MARLOW]970207015114580_MARLOW.UCX_PLUTO;1? y

# Chapter 7
Printing Files Using LPR/LPD

The Line Printer/Line Printer Daemon (LPR/LPD) of the DIGITAL TCP/IP Services for OpenVMS software supports the DCL PRINT, lpr, LPQ, and LPRM commands for remote printing.

The LPR/LPD service allows you access to print queues on remote hosts and allows users on remote hosts to access print queues on your system.

You can also use FTP to print remote files on your local host and local files on a remote host. To determine the best service to use for your printing needs, see Section 1.1. For more information about FTP, see Chapter 3.

What You Can Do

The following table lists network printing services you can perform and the sections that explain how to use them.

Capability | Section
--- | ---
Send print jobs to a printer connected to a remote internet host | 7.1
Display print queue status | 7.2
Cancel print jobs | 7.3
Receive on local (OpenVMS system) print queues print jobs initiated from a user on a UNIX system | 7.4
Get a "finished" notification through SMTP mail | 7.1.2.2

What You Need

To use the DIGITAL TCP/IP Services for OpenVMS network printer services, you need the following:

- The name of the remote print queue
- DEC Remote Print Server LPD protocol extensions software to issue PRINT /PARAMETERS=options=value

The LPR/LPD software must be configured on your OpenVMS system.

Command Summary

To use the remote printing features, issue the commands summarized in Table 7-1 (for complete command descriptions, see Section 7.6).

Table 7-1 Network Printing Commands: Summary
DCL Command | UNIX Command | Description
--- | --- | ---
PRINT (See the OpenVMS documentation.) | lpr (See the UNIX documentation.) | Prints files
LPQ | lpq | Displays the status of a remote print queue
LPRM | lprm | Removes jobs from a remote print queue

# 7.1 Printing at Remote Print Queues

Your system manager can configure your system with LPR/LPD network services that allow you to use the DCL PRINT command to send print jobs to a print queue on a remote internet host. The remote host can be a UNIX system or another OpenVMS system running LPR/LPD.

You print a local file at a printer on a remote host by specifying the remote queue name defined on your local host (see your system manager for queue names). LPD copies the file to the appropriate remote printer's spool directory. A copy of the file to be printed remains in the spooling queue until the printer is ready to print it.

When you issue the DCL PRINT command to send a print job to a remote print queue, you use the /QUEUE qualifier to specify the queue name plus any of the following qualifiers:

/AFTER | /BACKUP | /BEFORE
/BY_OWNER | /CONFIRM | /COPIES
/CREATED | /DELETE | /EXCLUDE
/EXPIRED | /FORM | /HEADER
/HOLD | /IDENTIFY | /JOB_COUNT
/MODIFIED | /NAME | /NOTE
/OPERATOR | /PARAMETERS | /PASSALL
/PRIORITY | /QUEUE | /SETUP
/SINCE | /USER | /WIDTH

Two of these qualifiers work differently with DIGITAL TCP/IP Services for OpenVMS software than they do in a OpenVMS environment without TCP/IP support. These two qualifiers are:

- /FORM
- /PARAMETERS

The following sections discuss the unique features of these two qualifiers when used for remote printing.

> Note

> DIGITAL TCP/IP Services for OpenVMS software does not support layup definition files for print requests to remote print queues. A layup definition file sets up the layup features: borders, sheet margins, alternating margins, pages per sheet, first page, page order, and page grid.

## 7.1.1 PRINT Command: /FORM Qualifier

The DCL PRINT /FORM command customizes the look of the printed page. This qualifier associates a form other than the default with the print job.

To see which forms are defined for your system, type:

    $ SHOW QUEUE queue /FORM

To find out the currently mounted form or the default form, issue:

    $ SHOW QUEUE queue /FULL

If the FORM associated with a remote LPD queue specifies a /WIDTH value that is not the standard 132, LPD sends a "W" card in the job's control file with the width specified in the form.

## 7.1.2 PRINT Command: /PARAMETERS Qualifier

DIGITAL TCP/IP Services for OpenVMS software supports numerous options for the DCL PRINT /PARAMETERS=(option=value) command. For example, it supports the PAGE_SIZE option as follows:

    $ PRINT/PARAMETERS=(PAGE_SIZE=size) /QUEUE=queue_name filename

When you type PRINT /PARAMETERS=(option=value), enclose the following in quotation marks:

- Blanks
- Non-alphanumeric characters, including spaces and slashes

You can use the following /PARAMETERS options for both local printing (standard DCL PRINT) and remote printing (DCL PRINT with LPR/LPD network services).

DATA_TYPE | NUMBER_UP | PAGE_LIMIT
PAGE_ORIENTATION | PAGE_SIZE | SHEET_COUNT
SHEET_SIZE | SIDES |

For a full description of the options supported for DCL local as well as remote printing, type the following command.

    $ HELP PRINT_PARAMETER

> Note

> This help is available only if the DECprint Supervisor (DCPS) software is installed on your system. See your system manager for more information.

Previous | Next | Contents