kdavis@lamc.UUCP (Ken Davis) (09/28/87)
We have a VAX750 running Wollongong TCP-IP. When sending mail to the internet you do the following: mailer!<somebody@somewhere.arpa> What is want to know is how to set forward using the Wollongong mailer. I have tried all kinds of quoting but it still dosen't work. Anyone familiar with the Wollongong implementation of TCP-IP please send me email. Thanks. -- Ken Davis - Letterman Army Medical Center - San Francisco, CA {ptsfa,well,hoptoad}!lamc!kdavis kdavis@optimis-pent.arpa
mende@aramis.rutgers.edu (Bob Mende) (09/28/87)
In article <345@lamc.UUCP> kdavis@lamc.UUCP (Ken Davis) writes: > We have a VAX750 running Wollongong TCP-IP. When sending mail to > the internet you do the following: > mailer!<somebody@somewhere.arpa> > What is want to know is how to set forward using the Wollongong > mailer. I have tried all kinds of quoting but it still dosen't > work. I tried for over a year to get forwarding to work with the wollongong mailer. I had *no* luck with it. I am 99.999% sure that it can not be done with that software. What I suggest is for you to get (or have you sysadmin get) the pmdf mailer. pmdf infomation can be gotten from ned@ymir.bitnet. It is a good program and you can set forwarding without much problem. I even forward from DECnet nodes which dont have tcp/ip on them via DECnet mail. with pmdf the format to set a forwarding is MAIL> set forward node_where_pmdf_runs::in%"""user@host""" /Bob -- mende@rutgers.edu {...}!rutgers!mende mende@zodiac.bitnet
kang%robax.DECnet@VENUS.YCC.YALE.EDU.UUCP (09/28/87)
> We have a VAX750 running Wollongong TCP-IP. When sending mail to > the internet you do the following: > > mailer!<somebody@somewhere.arpa> > > What is want to know is how to set forward using the Wollongong > mailer. I have tried all kinds of quoting but it still dosen't > work. > > Anyone familiar with the Wollongong implementation of TCP-IP > please send me email. Thanks. As far as I know, it is not possible to set forward for such an address, because the "!" introduces a comment in VMS. Not only that, you can not use logicals, nor the distribution list. I have written a command procedure that accepts logicals. I am posting it here for those who are interested. To run it, extract the command procedure LMAIL.COM and first run it by @LMAIL ?. I hope the built-in HELP is conprehensive enough. You can define all your logicals in a file SYS$LOGIN:LMAIL.INI, here is a sample $! LMAIL.INI $! $ DEFINE SK1 "KANG%ROBAX.DECNET@VENUS.YCC.YALE.EDU" ! A sample internet add $ DEFINE SK2 "SUN@YALEVMS.BITNET" ! BITNET add $ DEFINE SK3 "SEISMO!YALE!SUN-KANG" ! UUCP address $ DEFINE CJ "CHEN@VAX1.OXFORD.AU.UK" ! JANET address $ DEFINE SK4 "ROBAX::KANG" ! Local DECNET address $ EXIT Another thing you need to do is to change the GATEWAY definitions to your local ones. these are GATEWAY, BITGATE, UUCPGATE, JANGATE, CDNGATE etc. ------------------------------ cut here ----------------------------------- $! LMAIL.COM $! For Logical Mail $! Send mail to Internet. YCC recently provided a way of sending mails $! to internet hosts from DECnet host. The syntax is VENUS::MAILER!<...>. $! However, for some reason, the VMS comment mark '!' can not be carried $! on in logicals and in distribution list. This file is writen in hope $! that one can send mails using logicals as address. $! RELEASE: 1.0 $! $! Author's Info $! $! --- Kang Sun $! $! US Mail : Kang Sun $! Yale University $! Becton Center, P.O.Box 2157 $! New Haven, CT 06520 $! $! Internet: kang%robax.decnet@venus.ycc.yale.edu (prefered) $! sun@venus.ycc.yale.edu (if the above doesn't work) $! sun-kang@yale.edu $! Bitnet: kang%robax.decnet%venus@yalecs.bitnet (prefered) $! sun-kang@yalecs.bitnet (if the above doesn't work) $! sun@yalevms.bitnet (for file transfer over JNET) $! $! Record of changing $! 08/16/87 Release 1.0 $! First created from RMAIL.COM $! 08/19/87 BITNET mails to <@yale.edu:user@host.bitnet> $! DECNET addresses identified by symbol "::" $! 08/22/87 In order to prevent the txt lose due to link failure, save $! the message to be sent in file sys$login:lmail.txt $! 08/26/87 Venus is now also serving as a gateway to bitnet. The new gateway $! is therefore <user%site.bitnet@venus.ycc.yale.edu>. $! UUCP mails still go through yale.edu. $! 08/30/87 Add in the ability to handle the case of sending multiple files. $! In case the file name is presented, ask if want to edit. $! 09/17/87 Add qualifiers and help at the end. $! 09/28/87 Change UUCP Gateway to UUNET.UU.NET $! Post to INFO-VAX $! $!********************************************************************* $! $ GATEWAY = "VENUS::" ! The DECNET node through which mails are delivered $ ! to internet etc. If this program is run on such a $ ! node, let GATEWAY = "". $ ! The following gateway nodes has to be set to your local $ ! gateways. In this command procedure, the gateway will be $ ! appand to the given address. For example, if the given address $ ! is node2!node1!user, then the finally formed address will $ ! be VENUS::MAILER!<node2!node1!user@UUNET.UU.NET>. $ BITGATE = "@YALE.EDU" ! BITNET gateway $ CDNGATE = "%UBC.CSNET@RELAY.CS.NET" ! CDNnet gateway $ JANGATE = "@CS.UCL.AC.UK" ! JANET gateway $ UUCPGATE = "@UUNET.UU.NET" ! UUCP gateway $ MSGNO = "00000000" ! This initialization is vital, for if quit while $ ! MSGNO is empty, the DELETE command at the end will $ ! delete file in the default directory. $ ON CONTROL_Y THEN GOTO PANIC $ ON CONTROL_C THEN GOTO PANIC $ IF F$LOGICAL("LMAIL$INI") .NES. "" THEN GOTO LMAILINI_DEFINED $ IF F$SEARCH("SYS$LOGIN:LMAIL.INI") .NES. "" THEN GOTO RUN_LMAILINI $ WRITE SYS$OUTPUT "Cannot find file LMAIL.INI in directory SYS$LOGIN." $ GOTO LMAILINI_DEFINED $RUN_LMAILINI: $ @SYS$LOGIN:LMAIL.INI ! define the logical equivalent. $ DEFINE LMAIL$INI "TRUE" ! mark that logicals have been defined $LMAILINI_DEFINED: $ IF P1 .EQS. "?" THEN GOTO HELP $ ! parse the parameters for qualifiers $ STRING = " ''P1' ''P2' ''P3' ''P4' ''P5' ''P6' ''P7' ''P8'" $ P1 = "" ! file name $ P2 = "" ! recipients $ P3 = "" ! subject $ P4 = "" $ P5 = "" $ P6 = "" $ P7 = "" $ P8 = "" $ STRING = F$EDIT(STRING,"COMPRESS") $ SSTRING = F$EDIT(STRING,"UPCASE") $ STRLN = F$LENGTH(STRING) $ EDITING = "N" ! By default, EDITOR is not invoked. $ IF F$LOCATE("-E",SSTRING) .NE. STRLN THEN EDITING = "Y" $ CONFIRMING = "N" ! By default, no confirm. $ IF F$LOCATE("-C",SSTRING) .NE. STRLN THEN CONFIRMNG = "Y" $ FILING = "N" ! By default, sending no file $ IF F$LOCATE("-F",SSTRING) .NE. STRLN THEN FILING = "Y" $ SUBJECTING = "N" ! Do not prompt for subject if sending file $ ! Superseed by FILING and EDITING $ IF F$LOCATE("-S",SSTRING) .NE. STRLN THEN SUBJECTING = "Y" $ IF FILING .AND. EDITING THEN SUBJECTING = "Y" $ IF .NOT. FILING THEN SUBJECTING = "Y" $ ! Remove the qualifiers and assign the rest $ ! to P1, ....., P8. $ STRING = STRING - """" ! Remove the possible '"' for subject $ STRING = STRING - """" $ STRING = F$EDIT(STRING,"COMPRESS") $ ! Extract the parameters $ ! P1 file name $ ! P2 address $ ! p3 subject $ N = 0 $ NN = 2 ! if no -F then P1 = "" $ IF FILING THEN NN = 1 $PLOOP: $ N = N+1 $ KEY = F$ELEMENT(N," ",STRING) ! extract an element. $ IF KEY .EQS. " " THEN GOTO NOPS ! No more if key is " ". $ IF F$LOCATE("-",KEY) .EQ. 0 THEN GOTO PLOOP ! ingnore qualifiers $ P'NN' = KEY $ NN = NN+1 $ IF NN .NE. 9 THEN GOTO PLOOP $NOPS: ! No more quals or paras. $ P3 = "''P3' ''P4' ''P5' ''P6' ''P7' ''P8'" ! P3 is the subject. $ IF F$EDIT(P3,"COMPRESS,COLLAPSE,TRIM") .EQS. "" THEN P3 = "" $ ! $ IF .NOT. FILING THEN GOTO FILE_FOUND $ENTER_FILENAME: ! Enter file name(s) to be sent $ FILESPEC = """""" ! also an important initialization. $ IF P1 .EQS. "" THEN READ SYS$COMMAND P1/PROMPT="File(s) to send: " $ IF P1 .EQS. "" THEN GOTO ENTER_FILENAME $ P1 = F$PARSE(P1,"*.*;*") ! Create directory wildcard specification $ FILESPEC = F$SEARCH(P1,1) ! See if the file exist. $ IF FILESPEC .NES. "" THEN GOTO FILE_FOUND $ WRITE SYS$COMMAND "File ''P1' doesnot exist, enter again." $ P1 = "" $ GOTO ENTER_FILENAME $FILE_FOUND: $ ! Enter recipent address(es) $ IF P2 .EQS. "" THEN READ SYS$COMMAND P2/PROMPT="Receiver's Address: " $ IF P2 .EQS. "" THEN GOTO ADDRESSES ! No recipents $ ! Initialization, generate the messagge file names $ MSGNO = f$time() ! take hour,minute,seconds part $ MSGNO = f$edit(MSGNO,"TRIM") ! of the current time $ MSGNO = f$element(1," ",MSGNO) $ MSGNO = MSGNO-":" ! remove delimiters between hour, $ MSGNO = MSGNO-":" ! minutes and seconds $ MSGNO = f$extract(0,6,MSGNO) ! save the first six digits $ MSGJOB = "SYS$LOGIN:MSGNO" + ".JOB" ! file that to be executed as a job $ MSGNOPLUS = "''MSGNO'0" ! for multiple files, sequetial number $ open/write job 'MSGJOB' ! open job control file $ write job "$ mail" $ $ ! File_loop were executed for each file $FILE_LOOP: $ ADDR = f$edit(p2,"COLLAPSE,TRIM,LOWERCASE") $ ! Enter Subject $ IF .NOT. FILING THEN GOTO ENTER_SUBJECT $ IF .NOT. CONFIRMING THEN GOTO ENTER_SUBJECT $ INQUIRE Y "Send file ''FILESPEC' to ''P2' ? (Y/N) " $ IF .NOT. Y THEN GOTO ENDMAIN $ENTER_SUBJECT: $ IF P3 .EQS. "" .AND. SUBJECTING THEN READ SYS$COMMAND P3/PROMPT="Subject: " $ IF P3 .EQS. "" .AND. FILING THEN - P3 = F$ELEMENT(1,"]",F$PARSE(FILESPEC)) ! file name for default. $ SUBJECT = " ''P3'" $ P3 = "" ! Clear up P3 for next iteration $ ! generate message number $ MSGMSG = "SYS$LOGIN:''MSGNOPLUS'.MSG" ! file that contains the message $ ! prepare the message body $ IF .NOT. FILING THEN GOTO ENTER_MESSAGE ! Send no file $ IF .NOT. EDITING THEN GOTO SKIP_EDIT $ENTER_MESSAGE: $ IF EDITING .AND. F$LOGICAL("mail$edit") .NES. "" THEN GOTO INVOKE_MAILEDIT $ ! MAIL$EDIT is not defined or no EDITING $ WRITE SYS$OUTPUT - "Enter your nessage. To send it, type Control-Z, or to quit, Control-C" $ WRITE SYS$OUTPUT - "****************************** Message Body *************************" $ CONVERT/WRITE SYS$COMMAND: 'MSGMSG' $ GOTO SEND_MESSAGE $INVOKE_MAILEDIT: $ @MAIL$EDIT 'FILESPEC' 'MSGMSG' ! invoke the default MAIL editor $ GOTO SEND_MESSAGE $SKIP_EDIT: $ COPY 'FILESPEC' 'MSGMSG' $SEND_MESSAGE: $ ! check if the file 'MSGMSG' exists, if not, goto PANIC $! IF P1 .NES. "" THEN GOTO NOCHECKING !The next SEARCH will $ IF F$SEARCH("''msgmsg'",2) .EQS. "" THEN GOTO PANIC ! discontinue the $ COPY 'msgmsg' SYS$LOGIN:LMAIL.TXT $NOCHECKING: ! search for files $! $ CLEAR $ $! the following loop is executed for each name in ADDR $ NEXT = 0 $MAINLOOP: $! extract a name $ NAME = f$element(NEXT,",",ADDR) $ if NAME .eqs. "," then goto ENDMAIN ! no more names $RETRY: $ LENGTH = f$length(NAME) $ if f$locate("@",NAME) .nes. LENGTH .or.- ! INTERNET address f$locate("!",NAME) .nes. LENGTH .or.- ! UUCP address f$locate("::",NAME) .nes. LENGTH then goto NOTRANS ! local DECNET address $ NNAME = "" $ NNAME = f$logical("''NAME'") $ if NNAME .eqs. "" then goto done1 $ ADDR = ADDR + "," + NNAME $ NEXT = NEXT + 1 $ goto MAINLOOP $! $done1: ! the nick name is not found $ IF F$LOGICAL("LMAIL$INI") .EQS. "" THEN - WRITE SYS$OUTPUT "File SYS$LOGIN:LMAIL.INI does not exist" $ read sys$output NAME/prompt="Nick name ''NAME' is not defined, enter again " $ if NAME .eqs. "" then goto MAINLOOP $ goto RETRY $! $NOTRANS: $! $! form the address suitable GATEWAY mailer $ GATE = "''GATEWAY'MAILER!<''NAME'>" ! for mails to internet $ LENGTH = f$length(NAME) $! for bitnet $ if f$locate(".bitnet",NAME) .NES. LENGTH then - GATE ="''GATEWAY'MAILER!<" + f$element(0,"@",NAME) + "%" - + f$element(1,"@",NAME) + "''BITGATE'>" $ if f$locate(".cdn",NAME) .NES. LENGTH then - GATE ="''GATEWAY'MAILER!<" + f$element(0,"@",NAME) + "%" - + f$element(1,"@",NAME) + "''CDNGATE'>" $! for janet $ if f$locate(".ac.uk",NAME) .NES. LENGTH then - GATE ="''GATEWAY'MAILER!<" + f$element(0,"@",NAME) + "%" - + f$element(1,"@",NAME) + "''JANGATE'>" $! for uucp $ if f$locate("!",NAME) .nes. LENGTH then - GATE ="''GATEWAY'MAILER!<''NAME'" + "''UUCPGATE'>" $! for DECNET $ if f$locate("::",NAME) .nes. LENGTH then GATE = NAME $ write sys$output " Sending messages to ''GATE', wait ... " $ write job "send/noself ''MSGMSG' " $ write job "''GATE'" $ write job "''SUBJECT'" $next: $ NEXT = NEXT + 1 $ goto MAINLOOP $ENDMAIN: $ IF P1 .EQS. "" THEN GOTO NO_MORE $ TMPSPEC = FILESPEC ! $ FILESPEC = F$SEARCH(P1,1) $ IF F$ELEMENT(0,";",TMPSPEC) .EQS. F$ELEMENT(0,";",FILESPEC) THEN GOTO ENDMAIN $ ! if the two files differ only by version number $ MSGNOPLUS = MSGNOPLUS + 1 ! for multiple files, sequetial number $ IF FILESPEC .EQS. TMPSPEC THEN GOTO NO_MORE ! Two files are exactly the same. $ IF FILESPEC .NES. "" THEN GOTO FILE_LOOP ! See if the file exist. $NO_MORE: $ write job "exit" $ write job "$ exit" $ close job $ $ @'MSGJOB' $! $ goto END $panic: $ write sys$output "Quit without sending message." $ if f$logical("out") .nes. "" then close out $END: $ if f$search("''MSGNO'*.*;*") .nes. "" then delete/noconfirm 'MSGNO'*.*;* $ exit $ $HELP: $ CLEAR $ typeh sys$input LMAIL A program for sending mail to a remote node over networks ARPA, CSnet, UUCP, BITnet or local DECnet. Syntax: LMAIL [-cefs] [filename] [addresses] [subject] More information available on Qualifiers(-cefs) ADDRESSES FILENAME Nicknames SUBJECT Example $ $TOPIC: $ INQUIRE TOPIC "LMAIL Subtopic" $ Y = F$EDIT(F$EXTRACT(0,1,TOPIC),"UPCASE") $ IF Y .EQS. "A" THEN GOTO ADDRESSES $ IF Y .EQS. "E" THEN GOTO EXAMPLES $ IF Y .EQS. "F" THEN GOTO FILENAME $ IF Y .EQS. "N" THEN GOTO NICKNAMES $ IF Y .EQS. "Q" THEN GOTO QUALIFIERS $ IF Y .EQS. "S" THEN GOTO SUBJECT $ IF Y .EQS. "?" THEN GOTO HELP $ IF Y .EQS. "" THEN EXIT $ GOTO HELP $ADDRESSES: $ CLEAR $ TYPEH SYS$INPUT LMAIL ADDRESSES One or more of the followings separated by commas: node::user (DECNET) user@node.BITNET (BITNET) user@node.CDN (CDNnet) user@domains (Internet) ...!node2!node1!user (UUCP) user@node1.node2.AC.UK (JANET) nickname Where a nick name is an alias of addresses defined in LMAIL.INI. $ GOTO TOPIC $EXAMPLES: $ CLEAR $ TYPEH SYS$INPUT LMAIL Examples EX 1. LMAIL SK,SUNKANA@YALEVM.BITNET "Hello" Here, SK, a nickname, together with SUNKANGA... forms the address; "Hello" is the subject. EX 2. LMAIL -F TMP.TXT SK,SUNKANA@YALEVM.BITNET Qualifer -File indicate that the first parameter is a file name. W/o qualifers -Edit or -Subject, Subject is default to filename. Ex 3. LMAIL -E SK Hello morning Qualifier -Edit invokes the MAIL$EDIT to edit the outgong message. The Subject "Hello morning" does not need quotation marks. Ex 4. LMAIL -F-C-S *.* SK Qualifier -Confirm confirms before sending each file matching *.*. Subjects will be prompted for each comfirmed file. $ GOTO TOPIC $FILENAME: $ CLEAR $ TYPEH SYS$INPUT LMAIL FILENAME Any VMS file specification, including wildcard. $ GOTO TOPIC $NICKNAMES: $ CLEAR $ TYPEH SYS$INPUT LMAIL Nicknames LMAIL allows you to define nicknames in a file SYS$LOGIN:LMAIL.INI with DCL Commands line $DEFINE nickname "addresses" for each nickname. $ GOTO TOPIC $QUALIFIERS: $ CLEAR $ TYPEH SYS$INPUT LMAIL Qualifiers -Confirm Valid only if -F is used as well. Prompt user to confirm if he realy want to send the file. Useful when wildcards are used in the file specification. -Edit Invoke the EDITOR defined in logical MAIL$EDIT to edit the outgoing mail message. -File Send an existing file. When used, the first parameter is interpreted as file name instead as addresses. -Subject Valid only if -F is used as well. When used, user are prompts for subject for each file sent. Otherwise, the file names are used as subjects. $ GOTO TOPIC $SUBJECT: $ CLEAR $ TYPEH SYS$INPUT LMAIL SUBJECT Subject of the mail. $ GOTO TOPIC ------
leichter@VENUS.YCC.YALE.EDU ("Jerry Leichter") (09/28/87)
We have a VAX750 running Wollongong TCP-IP. When sending mail to the internet you do the following: mailer!<somebody@somewhere.arpa> What is want to know is how to set forward using the Wollongong mailer. I have tried all kinds of quoting but it still dosen't work.... There is no way to do this. The interface Wollongong uses is a hack, and it only goes so far. Neither forwarding nor logical name expansion can produce a Wollongong-style Internet address, nor can such an address be included in a distribution list. You might want to pick up a copy of PMDF. It provides an alternate interface to the Wollongong software that allows all these things to work - and much more besides. The cost is nominal (something like $200). As best I can recall, PMDF is available from Ned Freed, but I'm afraid I don't know the net address you can write to. If you have a CSNET contact, you should be able to get the details there. -- Jerry ------
A.Eric@GSB-WHY.STANFORD.EDU.UUCP (09/29/87)
The Wollangong Group is now available on the network. You might try sending your query to Jerry Scott at JERRY@TWG.ARPA (I'd like to hear the answer, since I've heard many other people claim that it's difficult to get mail forwarding to work using WIN/VX. We ended up going with SRI's Multinet Plus, in large part because we liked the mail system better.) -------
dave@rosesun.Rosemount.COM.UUCP (10/01/87)
In article <8709291627.AA19896@ucbvax.Berkeley.EDU> "Jerry Leichter" <leichter@venus.ycc.yale.edu> writes: >You might want to pick up a copy of PMDF. It provides an alternate interface >to the Wollongong software that allows all these things to work - and much >more besides. The cost is nominal (something like $200). Actually the last time I bought it (V2.3 -- it's at V2.4 now), it was $50. >As best I can recall, PMDF is available from Ned Freed, but I'm afraid I don't >know the net address you can write to. If you have a CSNET contact, you >should be able to get the details there. Here's what the "System Manager's Guide to PMDF-822 V2.3" (by Ned Freed and Mark Vasoll) says about availability: PMDF-822 is distributed by CSNET to its members. Organizations who are not members of CSNET can obtain copies of PMDF-822 for the cost of distribution from: Ned Freed (ned@ymir.bitnet) The PMDF Project Computing Services Harvey Mudd College Claremont, CA 91711 (714) 621-8006 I strongly recommend PMDF. We've been running with V2.3 for several months, and it allows us to do forwarding, deals with domain-style addresses, and much more. Dave