Hi All, I get a lot of configuration/installation questions. As a result, I have finally made up an installation guide, mostly stolen from other people's work, that describes how to set up ANU News and what ALL the configuration files and logicals mean. I am posting it here so all of you can take a look and make suggestions about things I might have forgotton to put in. There isn't a whole lot if original work in this, I just put a bunch of things together in one place. Let me know if you find any errors, omissions, etc. -- USmail: Bob Sloane, University of Kansas Computer Center, Lawrence, KS, 66045 E-mail: sloane@kuhub.cc.ukans.edu, sloane@ukanvax.bitnet, AT&T: (913)864-0444 ==============================NEWS_INSTALL.TXT=============================== Installing NEWS The following section describe the necessary steps to install NEWS on a system. Note that where possible these steps should be performed in the order as given in this text. Installing NEWS files Load *.C, *.H, *.HLP, *.CLD, *.OPT and NEWSBUILD.COM files into the directory dev:[dir.NEWS_SRC]. This set of files corresponds to the SRC backup saveset of the distribution. The directory name NEWS_SRC is critical when using the supplied DCL NEWSBUILD.COM routine. Create the directory dev:[dir.NEWS_BUILD]. This is where the NEWSBUILD procedure will put the object files and libraries needed to build NEWS. Create the directory dev:[dir.NEWS_DIST]. Load the DIST backup saveset into this directory. Create the directory dev:[dir.NEWS_DOC]. Load the DOC backup saveset into this directory. Compiling and Linking NEWS One command procedure performs both the compile and link phases of NEWS. The procedure works on the revision date-time of the file to determine whether any files require re-compilation before linking. Execute the NEWSBUILD command procedure: $ SET def dev:[dir.NEWS_BUILD] ! This is critical to NEWSBUILD $ @[-.NEWS_SRC]NEWSBUILD [tcp-transport] [force] [debug] tcp-transport: N [ONE] M [ULTINET] C [MU] W [IN] U [CXSOCKETS] UCXQ [IOS] E [XOS]] force: COMPILE LINK - as required by date/time check debug: DEBUG - compile and link with DEBUG option NODEBUG - compile and link with NODEBUG option - compile and link both versions This procedure creates a new set of .EXE files in the NEWS_DIST directory. which are used in the following installation steps. NEWS Accounts Add an account for a NEWS manager (NEWSMGR if you'd like a username suggestion). This account is used to execute the housekeeping batch jobs (such as NEWSSKIM if you are using it). It is also used as the account for the network feeds to adjacent NEWS sites, and therefore should have proxy entries to adjacent DECnet nodes' NEWS manager accounts if more than one node will be running NEWS on the DECnet. The account normally requires SYSPRV to execute some of the functions associated with the 'housekeeping' batch jobs. The account may also need a reasonable disk quota if you are anticipating a large amount of network news flowing through your system, and you make this account own the news posting directories. For a full feed, you can expect to use about 25,000 VMS blocks per day of NEWS that you keep. Logical Names It is intended that much of the local tailoring of NEWS is performed by logical name translations. For this reason the logical name structure is important when installing NEWS - please read this section carefully. NOTE: It is important that these names be defined before running NEWS for the first time. The distribution set includes the file NEWS_STARTUP.COM_TEMPLATE, which should be modified for use at the local site. Description of names: NEWS_ROOT, NEWS_DEVICE (REQUIRED for server nodes) Both names point to the news files root directory. Both must be defined in EXEC mode. The news data files are placed in a tree descending from this root - i.e. newsgroup `aus.wanted' has text files residing in the area NEWS_DEVICE:[AUS.WANTED]. The Index files and Help file are placed in the NEWS_ROOT directory for server nodes. NEWS_MGR_ID (REQUIRED for server nodes) Translates to the identifier name which must be granted to any users who require the management functions of NEWS (delete newsgroup, create newsgroup, etc). The name must be defined in EXEC mode to stop unauthorized users tinkering with NEWS. NEWS_ADDRESS (REQUIRED) Translates to the internet address of the host node. This is typically of the form node.site.domain. The address is used to generate the Internet-format "From" address in all postings from this node. NEWS_NODE (OPTIONAL) Translates to the local node name. This is made a logical name to allow a cluster to operate as a single logical node, using a cluster alias. All nodes in a cluster should use the same value of NEWS_NODE. This logical name is also used in the "Path:" header as the local node name. NEWS_PATHNAME (OPTIONAL) This is the name of the local node used in the Path header. For uucp sites this is the uucp node name. For other sites it is the node address value. NEWS_ORGANIZATION (or NEWS_ORGANISATION) (OPTIONAL) Translates to the name of the organisation. This is to help in identifying the person posting the message to other users on the net. Users may use a process level logical name to override this system value. NEWS_TIMEZONE (REQUIRED) Translates to the local timezone code. If not defined then NEWS will assume (incorrectly in almost all cases!) that the local timezone is "GMT". NEWS_MANAGER, NEWS_MANAGER_DEV (REQUIRED for server nodes) This is the work directory of the NEWSMGR account. All temporary files used in news maintenance are placed here. NEWS_MANAGER_DEV is the equivalent area, defined as a concealed device. NEWSMAIL, RNEWS (OPTIONAL) These are mail address aliases to allow this node to communicate to adjacent NEWS nodes. They should be defined as the username of the NEWS manager account. An alternative is to use MAIL management utilities to add add an entry for the addresses "NEWSMAIL" and "RNEWS" with a forwarding address to the NEWS manager account (NEWSMGR). USENET (REQUIRED for server nodes) This is a mail alias for the local news manager. As above, this may either be a logical name or a mail forwarding address. NEWS_HELPLIB (OPTIONAL) NEWS will by default search for the online help file, NEWS.HLB, in the areas NEWS_ROOT: and SYS$HELP: (in that order). If you wish to place the NEWS.HLB file in some other area, then use the logical name NEWS_HELPLIB to define the full name of the help file. NEWS_NETPOST, and NEWS_NONETPOST. When either of these logicals is defined, their translation is interpreted as an identifier. Users holding the identifier may (may not) post to network newsgroups. For example, if NEWS_NETPOST is defined as NETPOST, then users must hold the NETPOST identifier to post to network wide groups. If NEWS_NONETPOST is defined as NOPOST, then users holding the NOPOST identifier may not post to network groups. NEWS_NNTP_LOG. If this logical is defined, the NNTP server will log each access to the file specified. For example if NEWS_NNTP_LOG is defined as NEWS_MANAGER:NNTP_SERVER.LOG, then all NNTP accesses would be appended to NEWS_MANAGER:NNTP_SERVER.LOG. NEWS_NNTP_PROTOCOL and NEWS_NNTP_SERVER are used by NEWS in a client only configuration to determine the internet address of the remote NNTP client, and what TCP/IP protocol is to be used. NEWS_STOP. If this logical is defined (/EXEC in the SYSTEM table) then NEWS will shut down. NNTP_DISK_DANGER and NNTP_DISK. If the available disk blocks on the device NNTP_DISK falls below the number of blocks specified by NNTP_DISK_DANGER, then new connections to the nntp server will be rejected. NNTP_SCRATCH. If this logical is defined, then it must point to a directory that will be used by the nntp server for creating temporary files. Global DCL Symbols In the system login command script add a symbol for NEWS: $ NEWS :== $ location:NEWS Install NEWS.EXE Copy NEWS.EXE to the location as specified by the DCL symbol for NEWS with world RE access. Then install the image with SYSPRV: $ COPY NEWS.EXE location:NEWS.EXE/PROT=W:RE $ INSTALL INSTALL> ADD location:NEWS.EXE/OPEN/HEAD/SHARE/PRIV=SYSPRV INSTALL> EXIT SYSPRV is required to ensure that users who post news items end up NOT owning the actual news text files, and also is required to successfully initialize the indexed files on the first-time execution of the program. For most of the time NEWS runs with SYSPRV disabled. Initial Environment If you are configuring NEWS with a local database then: 1. Using AUTHORIZE, create the news management identifier (the value of the logical name NEWS_MGR_ID), and grant the identifier to the user(s) who will be responsible for the management of NEWS. Note that the NEWSMGR (news management) account must be granted this identifier in order to correctly process incoming network news feeds. 2. Create the directories that have been defined by the logical names NEWS_MANAGER and NEWS_ROOT. Ensure that the directories are group and world accessible. Optionally: Add a propagation ACL to the NEWS_ROOT directory to allow those users whom you wish to use news to access the item files. 3. Copy NEWS.HLB to NEWS_ROOT: and allow world read access to this file. Note that for the installation of the NNTP client systems NEWS_ROOT: may not be defined, or in any case you may wish to place this file elsewhere on the system. You may optionally place NEWS.HLB in the system help area, as SYS$HELP:NEWS.HLB, or use the system level logical name NEWS_HELPLIB to point to another location where you have placed NEWS.HLB. If you are configuring NEWS as a diskless NNTP Client then: 1. Copy NEWS.HLB to SYS$HELP:NEWS.HLB and allow world read access to this file. Note that for the installation you may wish to place this file elsewhere on the system. You may optionally use a the system level logical name NEWS_HELPLIB to point to where you have placed NEWS.HLB. i.e. $DEFINE/SYSTEM NEWS_HELPLIB dev:[dir]NEWS.HLB NEWS Control Files There are several control files used by NEWS -- these files should be read, and then edited to match the local site requirements. Each file contains comments as to the function and format of the file. NEWS.SYS Read (and then EDIT) file NEWS.SYS. This file determines which newsgroups you will accept, and which newsgroups your network neighbours will accept. The edited version of NEWS.SYS should be copied to NEWS_MANAGER:. Include the entries "local", "junk", "control" and "to." (where is the value of NEWS_NODE) in the local node's filter set. NEWS.SYSD may be used to define the distributions accepted by the systems defined in NEWS.SYS. The format of this file is: system:dist1,dist2,... system1:dist1,dist2,... NEWS.DISTRIBUTION Read (and then EDIT) the file NEWS.DISTRIBUTION. This file determines how news is distributed through your node. If you are an 'end- node' for NEWS, then this file should be empty, otherwise the file must be defined. The edited version of NEWS.DISTRIBUTION should be copied to NEWS_MANAGER:. NEWS.ALIASES Read (and then EDIT) the file NEWS.ALIASES. This file defines local aliases for newsgroups. If you wish to define local aliases, edit this file and copy the edited version to NEWS_MANAGER: as NEWS.ALIASES. MAILPATHS Read (and then EDIT) the file MAILPATHS. This file defines the internet addresses of ALL moderators for moderated newsgroups. The edited version of MAILPATHS. should be copied to NEWS_MANAGER:. NEWSSKIM.COM Read NEWSSKIM.COM, and modify it to suit your requirements. See comments in the code. Then copy the edited file to news_root. This file is responsible for the collection and distribution of news items to remote sites. NEWS_ADDRESS.CNF Read this file, and also read the file ADD_TRANSFORM.C. If you are using a local PMDF mail handler, then the default action may be suitable. Otherwise you will need to edit this file, and copy it to NEWS_MANAGER: as NEWS_ADDRESS.CNF. NEWS_POST.DEFAULTS Read this file and decide if it is relevant. If so then edit the file and place a copy it to NEWS_MANAGER:. NEWS_POST.CC Read this file, and decide if it is relevant. Where unmoderated newsgroups are fed from a mailing list, then postings into the newsgroup may not be sent back to the central mailing list address. You can place entries into this file to force cross mailings of local postings back to the mailing list address. If necessary, edit this file and copy it to NEWS_MANAGER: as NEWS_POST.CC. If not required then do not copy the file to the NEWS_MANAGER: area. NNTP_ACCESS.NEWS Read this file, and decide if it is relevant. This file determines what systems may access your NNTP server. If necessary, edit this file and copy it to NEWS_ROOT:. (That's NEWS_ROOT:, not NEWS_MANAGER:.) NEWS_POST.DEFAULTS Read this file and decide if you want to use it. This file allows you to specify the default values for some of the article headers based on what newsgroup an article is being posted to. If you want to use this file, edit it and copy it to NEWS_MANAGER:. NEWSRC.TEMPLATE This file will be used as the default NEWSRC file if a user has no NEWSRC file. If you want to use this file, edit it and copy it to NEWS_MANAGER:. NEWS.CLASSES This file may be used for defining site specific classes. The format of the file is: classname group,group,... Classname is the name of the class that all the groups should be entered into. For example: $classes class.* would enter all groups under "class" into the groups $CLASSES. If you decide to use this file, put it under NEWS_MANAGER:. First Time Execution of NEWS Once ALL the above steps have been completed, login to an account which has SYSPRV and has the NEWS_MGR_ID identifier, and run NEWS.EXE. The first time execution will create the files: NEWS_ROOT:NEWS.GROUPS and news_root:news.items, and also create the authority file, news_manager:news.license. Please read the news_manager:news.license file, edit it as instructed, and return it to the address shown in the file. This almost completes the installation of NEWS - the remaining task is the creation of the necessary newsgroups. Use the CREATE/LOCAL command and create the newsgroups "control" and "junk". If you are on the USENET news network, obtain a copy of the most recent "checkgroups" posting relevant to your area of the USENET. Examine the newsgroup names in this posting and add the root names (e.g. "net" from "net.wombats") of the relevant newsgroups to your local acceptance filter in news_manager:news.sys. Once news.sys has been edited, pass this checkgroups posting to NEWS by using the ADD command with the /EXECUTE qualifier. This will automatically load the local NEWS files with the applicable network newsgroups. Upgrading from Previous NEWS Versions V5.9 - V6.0 Upgrade The only change in V6.0 over V5.9 is a change in a previously unused field within the news.groups indexed file as the first used news item number (to speed up the NNTP Server code). When installing NEWS V6.0 install the NEWS program first, and perform a SKIM pass. Then install the NNTP server code following the completion of the SKIM pass. This is optional, and if not done in this order then the NNTP server will lie about the first used news item number in each newsgroup (which is exactly what Unix versions of the NNTP server currently do!). V5.8 - V5.9 Upgrade There were no changes to the NEWS file in this version, so that no particular upgrade actions were required. V5.7 - V5.8 Upgrade The first time NEWS V5.8 is executed on a system which has been running NEWS V5.2 through V5.7, then NEWS will attempt to perform the upgrade to V5.8 automatically. Note that this upgrade phase requires that the local NEWS manager account execute the upgrade, so ensure that this account is the first account to use V5.8. The automatic upgrade converts the file news_root:newsgroups.v50 to a new internal record format, and saves the new format as news_root:news.groups. Similarly the file news_root:newsitems.v50 is converted to news_root:news.items. While this conversion is being performed NEWS will display it's progress on the screen. The conversion phase completes with the display of the advice to delete the .v50 files. Following this the upgrade is complete. If you were running NEWS V5.4 or NEWS V5.6 then delete the file news_root:history.dat. Installing NNTP Servers There are three node types with respect to NEWS NNTP: Server nodes, where the node acts as a server for remote clients, Client-only nodes, which access one or more server nodes over NNTP, and Server/Client nodes, where some newsgroups are served from remote NNTP servers, and this node also acts as an NNTP server for remote client nodes. NNTP Access File For NNTP servers you may wish to set up an access permission file. By default any remote system is allowed to connect to the NNTP service. Access can be restricted using an access permission file. The access file is news_root:nntp_access.news. If this file exists, the NNTP server will consult this file before accepting a remote client connection request. The format of this access file is one entry per line (with the comment delimiter character as '#'). Each line contains up to four fields, delimited by blanks: a - remote host name (or "default") b - read / transfer permission field read # read and transfer permission xfr # no read - transfer only permission noread # no read, no transfer permission (the minimum abbreviation is 1 character) c - post permission field post # post access nopost # no post access [default] (the minimum abbreviation is 1 character) d - newsgroup access list This is a comma separated list. Access is granted only to those newsgroups listed in the entry. Wildcard characters '*' and '%' and '?' are supported in the list, and specific negation, using the '!' character prefix, is also supported. There is an implicit inclusion of sub-newsgroups within each entry. For example the entry "wombat" will match against "wombat" and also "wombat.singles", "wombat.hairy.wild", and so on. For example: alpha read nopost * # read access, all groups beta read post *,!alpha # read and post to all but alpha groups gamma xfr post * # read, transfer, post to all groups default read nopost * The relevant line in the permissions file is selected using the remote host name. The NNTP driver code has support for identification of the remote host name and remote user; o For the DECNET single channel driver, the remote user is retrieved using the logical name translations of SYS$REM_NODE and SYS$REM_ID. o For the DECNET multi channel driver the remote host name is set to the value "DECNET", and the remote user to "NNTP". I have yet to check that the NCP connection block holds the correct remote task identification. o For the CMU-TEK , Multinet and WIN TCP drivers the remote host is correctly passed to the server, but the remote user is passed as the constant value "NNTP" As well as the permissions, the NEWS access.news individual newsgroup access lists are now supported by the NNTP server process. The remote user and host names are used to look up the access.news file before allowing the NNTP server access to a restricted newsgroup. This behaviour is consistent with the NEWS definition of a restricted newsgroup. 13.2 NNTP Installation To install the NNTP NEWS servers, then follow the steps as shown for the network types below. You can check the operation of the NNTP server by running the NNTP_CLIENT program (this program implements an interactive interface to a remote NNTP server). Running NNTP_CLIENT and specifying the remote node name and transport protocol should initiate an interactive session with the remote NNTP server. The welcome message should appear, and you should then obtain a reasonable response to the "HELP" command. The "QUIT" command will exit from the remote server. Once NNTP is installed on the server and client newsgroups can then be set as NNTP-served newsgroups (see the documentation on the SET command for details). 13.2.1 Common Logical Name Environment NEWS_GMT_OFFSET NNTP uses the value of this logical name to convert from local time to the equivalent GMT time. The format of the number is a signed timestring in VMS delta time format. For example, Canberra, Australia, is 10 hours ahead of GMT. The following logical name definitions are equivalent: $ DEFINE/SYSTEM NEWS_GMT_OFFSET "+10:00:00" $ DEFINE/SYSTEM NEWS_GMT_OFFSET "10:00:00" $ DEFINE/SYSTEM NEWS_GMT_OFFSET "10:00" $ DEFINE/SYSTEM NEWS_GMT_OFFSET "10" [Note that you'll need to change the value of the logical name for daylight saving.] 13.2.3 DECNET Server and Client Nodes 1. Copy NNTP_DEC.EXE to a location accessible to the DECNET account (or define a new account used for running NNTP in a manner analogous to the VMS V5 network applications accounts). 2. Use the INSTALL utility to install NNTP_DEC.EXE with SYSPRV. 3. In the DECNET (or special purpose) account, create the file NNTP.COM with the following contents: $ ! NNTP.COM - executed in response to an incoming connect $ ! to "TASK=NNTP" $ RUN device:[directory]NNTP_DEC There is a variant of NNTP_DEC, called NNTP_DECM. This program is configured to accept multiple incoming DECNet connections to the NNTP object, and service all such connections from a single NNTP process. The installation instructions are the same as the NNTP_DEC instructions, except that the executable referred to in the INSTALL and NNTP.COM is NNTP_DECM.EXE. Also to create a permanent DECnet object, NNTP_DECM.EXE must be installed with SYSPRV and SYSNAM. Note that these installation instructions allow remote systems to connect to the NNTP using the task specification: "TASK=NNTP". This is compatible with the task specification of the NNTP process supported under Ultrix. You can connect the NNTP executable to a known object number and name if desired using object definition within DECnet's NCP utility (this process is not documented here), to allow incoming connection task specification strings of the form "NNTP=" and so on. If the remote system is an ANU NEWS VMS system, then the logical name NEWS_decnet-server-name_TASK can be used to specify the required task connection string on the remote system. 13.2.4 CMU TCP NNTP Server and Server/Client Nodes 1. Copy nntp_tcpcmu.exe to a location accessible to the SYSTEM account (this example uses tcp$system). 2. In sys$manager:internet.config insert the following lines: ; Define the well-known ports we support and their servers ; WKS:port:procname:imagename:status:privs:priority:queuelimit ; WKS:119:NEWSRV:TCP$NEWSRV:NETWRK:NETMBX,TMPMBX,SYSPRV,PHY_IO:4:5 3. In sys$manager:ip_startup.com insert the following line: $ define/system tcp$newsrv tcp$system:nntp_tcpcmu.exe 13.2.5 WIN TCP NNTP Server and Server/Client Nodes 1. Copy nntp_tcpwin.exe to twg$tcp:[netdist.serv] 2. Add the following block to twg$tcp:[netdist.etc]servers.dat # NNTP service-name NNTP program TWG$TCP:[NETDIST.SERV]:nntp_tcpwin socket-type SOCK_STREAM socket-options SO_ACCEPTCONN | SO_KEEPALIVE socket-address AF_INET , 119 working-set 200 maxservers 5 INIT TCP_Init LISTEN TCP_Listen CONNECTED TCP_Connected SERVICE Run_Program 3. Add the following line to twg$tcp:[netdist.etc]services. NNTP 119/tcp #NNTP NEWS Server 4. Stop/Id on the INET_SERVERS process and restart it by running @twg$tcp:[netdist.misc]inetserv 13.2.6 Multinet TCP NNTP Server and Server/Client Nodes 1. Copy nntp_tcpwinmultinet.exe to multinet:nntp_server.exe 2. Invoke the Multinet services configure program: $ MULTINET CONFIG/SERVER Config> ADD SERVICE NEWS network Transfers This section describes some hints as to how to feed new postings from a VMS NEWS site to an adjacent non-VMS system (commonly a Unix system). There are two basic approaches: Using the NNTP network protocol and TCP/IP on VMS, or using a VMS/Unix mailer. NNTP-based NEWS feeds The NNTP approach uses the "ihave/sendme" protocol described in the NNTP standard. The following changes have to be applied: o Modify NEWS.SYS on the VMS system: unixnode:world,inet,arp,anu,canb,comp,sci,rec,news,misc,soc,talk,aus,alt:N:\ NEWS_MANAGER_DEV/[IHAVE_UNIXNODE]COLLECT.IDS The relevant entry now specifies that the VMS system will append the message identifiers to the specified file, rather than placing the entire message text into the posting area (the 'N' flag in the SYS entry specifies message identifier transmission). o In the Skim command procedure on VMS, the following commands may used to invoke NNTP: $ Distribute: $ write sys$output "Copy items to other sites" $ set on $ nntp_xmit :== $ news_manager:nntp_xmit $Search_1: $ nodedir = f$search("news_manager:ihave_*.dir",2) $ If nodedir .eqs. "" Then goto abort $ node = f$parse(nodedir,,,"NAME","SYNTAX_ONLY") - "IHAVE_" $ senddir = "news_manager_dev:[ihave_" + node + "];" $ savedfiles = senddir - ";" + "*.*;*" $ node = node + "::;" $Search_2: $ file = f$search(savedfiles,3) $ If file .eqs. "" Then goto search_1 $ on error Then goto no_copy_2 $ nntp_xmit 'node tcp 'file $ delete 'file $No_copy_2: $ goto search_2 o If the VMS system does not feed to additional systems then no further changes are necessary (i.e. the VMS system is a logical end-node in the news network topology). However if the VMS system does relay network batches (i.e. a routing node with respect to the NEWS network), then you will need to modify the configuration file NEWS_MANAGER:NEWS.DISTRIBUTION to ensure that news batches are forwarded correctly through this VMS node to all adjacent nodes. Mail-based NEWS feeds The second approach is based on the existence on a mail link between the two systems. o On the VMS system you will need to define two mail destinations: newsmail and rnews. These mail destinations are used by the Unix system as the default mail destination of forwarded news batches. If the news manager username is NEWSMGR then the following logical names need to be defined on the VMS system: $ DEFINE/SYSTEM NEWSMAIL NEWSMGR $ DEFINE/SYSTEM RNEWS NEWSMGR o The VMS NEWS.SYS file requires the entry: unixnode:world,inet,arp,anu,canb,comp,sci,rec,news,\ misc,soc,talk,aus,alt:BN:\ NEWS_MANAGER_DEV/[POST_UNIXNODE]NEWS.BATCH The 'B' flag indicates the news item texts are to be stored in the post area, and the 'N' transmission flags indicate that the the mail format uses leading 'N' characters in the mail body to delineate the news batch from the mail headers. o In the Skim command procedure on VMS, the following commands need to be inserted: $Distribute: $ write sys$output "Copy items to other sites" $ set on $Search_1: $ nodedir = f$search("news_manager:post_*.dir",1) $ If nodedir .eqs. "" Then goto Exitlabel $ node = f$parse(nodedir,,,"NAME","SYNTAX_ONLY") - "POST_" $ senddir = "news_manager_dev:[post_" + node + "];" $ savedfiles = senddir - ";" + "*.*;*" $ node = node + "::;" $Search_2: $ file = f$search(savedfiles,2) $ If file .eqs. "" Then goto Search_1 $ on error then goto No_copy_2 $ mail 'file' in%"""rnews@"node'""" $ delete 'file $No_copy_2: $ goto search_2 o On the Unix system an entry needs to be inserted in the aliases file: rnews: "|/usr/lib/news/uurec" Variants of these approaches are possible, such a mailing the 'ihave' list of message-ids to the unix site, and then having the Unix site respond with 'sendme' control messages back to the VMS system using mail (or any other means of message transfer) as the message transport. The comments in the distributed version of NEWS.SYS contain additional information on how to set up such distribution mechanisms.