From: MERC::"uunet!VM1.NODAK.EDU!owner-anu-news" 29-APR-1993 05:54:19.00 To: Multiple recipients of list ANU-NEWS CC: Subj: Re: Mail command in 6.1b7 extensions In article <1993Apr27.140735.2354@galaxy.gov.bc.ca>, ewilts@galaxy.gov.bc.ca (Ed Wilts) writes: >The MAIL command appeared to have been broken in that /EDIT is no longer the >default. Worse than that is that /EDIT placed explicitely on the command line >is ignored and that the message is mailed /NOEDIT. > >/EDIT probably doesn't make much sense if you're mailing multiple messages, but >it certainly does for a single message. Thanks for pointing out this problem.... A "small" mistake on my side. Following is a new NEWSFORWARD.DIFF which is correct in this issue. Greetings, Martin Winter $$! ------------------ CUT HERE ----------------------- $ v='f$verify(f$trnlnm("SHARE_UNPACK_VERIFY"))' $! $! This archive created by VMS_SHARE Version 8.1 $! On 28-APR-1993 14:49:56.94 By user WINTER $! $! The VMS_SHARE software that created this archive $! was written by Andy Harper, Kings College London UK $! -- September 1992 $! $! Credit is due to these people for their original ideas: $! James Gray, Michael Bednarek $! $! TO UNPACK THIS SHARE FILE, CONCATENATE ALL PARTS IN ORDER $! AND EXECUTE AS A COMMAND PROCEDURE ( @name ) $! $! THE FOLLOWING FILE(S) WILL BE CREATED AFTER UNPACKING: $! 1. NEWSFORWARD.DIFF;2 $! $set="set" $set symbol/scope=(nolocal,noglobal) $f=f$parse("SHARE_UNPACK_TEMP","SYS$SCRATCH:."+f$getjpi("","PID")) $e="write sys$error ""%UNPACK"", " $w="write sys$output ""%UNPACK"", " $ if .not. f$trnlnm("SHARE_UNPACK_LOG") then $ w = "!" $ ve=f$getsyi("version") $ if ve-f$extract(0,1,ve) .ges. "4.4" then $ goto start $ e "-E-OLDVER, Must run at least VMS 4.4" $ v=f$verify(v) $ exit 44 $unpack: subroutine ! P1=filename, P2=checksum, P3=attributes $ if f$search(P1) .eqs. "" then $ goto file_absent $ e "-W-EXISTS, File ''P1' exists. Skipped." $ delete 'f'* $ exit $file_absent: $ if f$parse(P1) .nes. "" then $ goto dirok $ dn=f$parse(P1,,,"DIRECTORY") $ w "-I-CREDIR, Creating directory ''dn'" $ create/dir 'dn' $ if $status then $ goto dirok $ e "-E-CREDIRFAIL, Unable to create ''dn' File skipped." $ delete 'f'* $ exit $dirok: $ w "-I-UNPACK, Unpacking file ''P1'" $ n=P1 $ if P3 .nes. "" then $ n=f $ if .not. f$verify() then $ define/user sys$output nl: $ EDIT/TPU/NOSEC/NODIS/COM=SYS$INPUT 'f'/OUT='n' PROCEDURE GetHex LOCAL x1,x2;x1:=INDEX(t,ERASE_CHARACTER(1))-1;x2:=INDEX(t, ERASE_CHARACTER(1))-1;RETURN 16*x1+x2;ENDPROCEDURE; PROCEDURE SkipPartsep LOOP EXITIF INDEX(ERASE_LINE,"-+-+-+-+-+-+-+-+")=1; ENDLOOP;ENDPROCEDURE; PROCEDURE ExpandChar CASE CURRENT_CHARACTER FROM ' ' TO 'z' ["`"] :ERASE_CHARACTER(1);COPY_TEXT(ASCII(GetHex));[" "]:ERASE_CHARACTER(1);[ OUTRANGE,INRANGE]:MOVE_HORIZONTAL(1);ENDCASE;ENDPROCEDURE; PROCEDURE ProcessLine s:=ERASE_CHARACTER(1);LOOP EXITIF CURRENT_OFFSET>=LENGTH( CURRENT_LINE);ExpandChar;ENDLOOP;IF s="V" THEN APPEND_LINE;ENDIF;ENDPROCEDURE; PROCEDURE AdvanceLine MOVE_HORIZONTAL(-CURRENT_OFFSET);MOVE_VERTICAL(1); ENDPROCEDURE;PROCEDURE Decode POSITION(BEGINNING_OF(b));LOOP EXITIF MARK(NONE)= END_OF(b);IF INDEX(CURRENT_LINE,"+-+-+-+-+-+-+-+-")=1 THEN SkipPartSep; ELSE ProcessLine;AdvanceLine;ENDIF;ENDLOOP;ENDPROCEDURE;SET(FACILITY_NAME, "UNPACK");SET(SUCCESS,OFF);SET(INFORMATIONAL,OFF);t:="0123456789ABCDEF";f:= GET_INFO(COMMAND_LINE,"file_name");b:=CREATE_BUFFER(f,f);Decode;WRITE_FILE(b, GET_INFO(COMMAND_LINE,"output_file"));QUIT; $ if p3 .eqs. "" then $ goto dl $ open/write fdl &f $ write fdl "RECORD" $ write fdl P3 $ close fdl $ w "-I-CONVRFM, Converting record format to ", P3 $ convert/fdl=&f &f-1 &P1 $dl: delete 'f'* $ if P2 .eqs. "" then $ goto ckskip $ checksum 'P1' $ if checksum$checksum .nes. P2 then $ - e "-E-CHKSMFAIL, Checksum of ''P1' failed." $ exit $ckskip: e "-W-CHKSUMSKIP, checksum validation unavailable for ''P1'" $ endsubroutine $start: $! $ create 'f' X***`20newsforward.c;-1 X---`20newsforward.c X************** X***`2037,42 X`20`20**`09`20`20`20`20When`20a`20message`20is`20being`20"REPLIED"`20to,`20cha Vnge`20the`20default`20subject X`20`20**`09`20`20`20`20line`20to`20be`20"Re:`20"`20as`20lo Vng`20as`20the`20original`20subject X`20`20**`09`20`20`20`20didn't`20already`20start`20with`20"Re:" X`20`20**-- X`20`20**/ X`20`20`0C X---`2037,46`20----- X`20`20**`09`20`20`20`20When`20a`20message`20is`20being`20"REPLIED"`20to,`20cha Vnge`20the`20default`20subject X`20`20**`09`20`20`20`20line`20to`20be`20"Re:`20"`20as`20lo Vng`20as`20the`20original`20subject X`20`20**`09`20`20`20`20didn't`20already`20start`20with`20"Re:" X+`20**`20`20`20`20`20`20V6.1`20`20`20`20`2026-Apr-1993`20`20`20`20winter@visio Vn.rs.ch X+`20**`20`20`20`20`20`20`20`20`20`20changed`20MAIL`20and`20FORWARD`20to`20allo Vw`20multiple`20items`20in`20a`20single X+`20**`20`20`20`20`20`20`20`20`20`20message.`20Added`20/MARK,`20/ALL`20and`20i Vtemrange`20to`20MAIL`20and`20FORWARD X+`20**`20`20`20`20`20`20`20`20`20`20to`20provide`20this`20functionality X`20`20**-- X`20`20**/ X`20`20`0C X************** X***`2050,55 X`20`20#include`20"newsextern.h" X`20`20#include`20"newsmail.h" X`20`20 X`20`20/* X`20`20`20*`20`20do_mail X`20`20`20* X---`2054,61`20----- X`20`20#include`20"newsextern.h" X`20`20#include`20"newsmail.h" X`20`20 X+`20 X+`20`0C X`20`20/* X`20`20`20*`20`20do_mail X`20`20`20* X************** X***`20117,123 X`20`20`20`20`20`20`20`20`20`20if`20((!forward)`20`26`26`20(!reply_to))`20`7B X`20`20`20`20`20`20`20`20`20`20`20`20cp`20=`20`26xfrbuf`5B5`5D; X`20`20`09`20`20if`20((sa`20=`20strchr(cp,'<'))`20!=`200)`20`7B X!`20`20`20`20`20`20`20`20`20`20`20`20`20strcpy(address,++sa); X`20`20`09`20`20`20`20chop_str(address,'>'); X`20`20`09`20`20`20`20chop_str(address,'\n'); X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D X---`20123,129`20----- X`20`20`20`20`20`20`20`20`20`20if`20((!forward)`20`26`26`20(!reply_to))`20`7B X`20`20`20`20`20`20`20`20`20`20`20`20cp`20=`20`26xfrbuf`5B5`5D; X`20`20`09`20`20if`20((sa`20=`20strchr(cp,'<'))`20!=`200)`20`7B X!`20`20`20`20`20`20`20`20`20`20`20`20`20strcpy(address,++sa);`20`20 X`20`20`09`20`20`20`20chop_str(address,'>'); X`20`20`09`20`20`20`20chop_str(address,'\n'); X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D X************** X***`20262,268 X`20`20`7D X`20`20`0C X`20`20/* X!`20`20*`20`20do_forward X`20`20`20* X`20`20`20*`20`20Forward`20a`20mail`20item`20via`20VMS`20MAIL X`20`20`20*/ X---`20268,274`20----- X`20`20`7D X`20`20`0C X`20`20/* X!`20`20*`20`20forward_additm X`20`20`20* X`20`20`20*`20`20Adds`20a`20message`20to`20the`20mailfile`20for`20forwarding. X`20`20`20*/ X************** X***`20264,269 X`20`20/* X`20`20`20*`20`20do_forward X`20`20`20* X`20`20`20*`20`20Forward`20a`20mail`20item`20via`20VMS`20MAIL X`20`20`20*/ X`20`20 X---`20270,352`20----- X`20`20/* X`20`20`20*`20`20forward_additm X`20`20`20* X+`20`20*`20`20Adds`20a`20message`20to`20the`20mailfile`20for`20forwarding. X+`20`20*/ X+`20 X+`20static`20int`20forward_additm(g,`20m,`20fpw,`20incl_header,`20multiple, V`20subj) X+`20`20`20int`20g,`20m,`20incl_header,`20*multiple; X+`20`20`20char`20*subj; X+`20`20`20FILE`20**fpw; X+`20`7B X+`20`20`20int`20header; X+`20`20`20char`20xfrbuf`5B512`5D,`20address`5B512`5D,`20id`5B256`5D,`20from V`5B256`5D,`20idate`5B256`5D,`20fpad`5B3`5D; X+`20`20`20FILE`20*fpr; X+`20 X+`20`20`20if`20((m`20=`20scan_filter(g,m))`20==`200)`20`20`20`20`20 X+`20`20`20`20`20return(0); X+`20`20 X+`20`20`20if`20(!(fpr`20=`20do_open_item(g,m,"r",fp_open)))`20`7B X+`20`20`20`20`20err_line("Error:`20Mailer`20-`20cannot`20read`20item"); X+`20`20`20`20`20return(0); X+`20`20`20`20`20`7D X+`20 X+`20`20`20if`20(*multiple`20>`200) X+`20`20`20`20`20fprintf(*fpw,"\n\f\n"); X+`20`20`20(*multiple)++; X+`20`20`20fprintf(*fpw,"X-News:`20%s`20%s:%d\n",news_node,ga`5Bg`5D->grp_name, Vga`5Bg`5D->grp_ia`5Bm`5D.itm_num); X+`20 X+`20`20`20*id`20=`20*from`20=`20*subj`20=`20*idate`20=`20*fpad`20=`20'\0'; X+`20 X+`20`20`20header`20=`201; X+`20`20`20while`20(fgets(xfrbuf,510,fpr))`20`7B X+`20`20`20`20`20if`20((*xfrbuf`20==`20'\n')`20`26`26`20(header))`20`7B X+`20`20`20`20`20`20`20if`20(incl_header)`20fprintf(*fpw,"%s%s",fpad,xfrbuf); X+`20`20`20`20`20`20`20else`20`7B X+`20`20`20`20`20`20`20`20`20fprintf(*fpw,"%sFrom:`20%s\n%sSubject:%s\n%s%s",fp Vad,from,fpad,subj,fpad,idate); X+`20`20`20`20`20`20`20`20`20fprintf(*fpw,"%s%s",fpad,"Message-ID:"); X+`20`20`20`20`20`20`20`20`20if`20(*id)`20fprintf(*fpw,"%s\n\n",id); X+`20`20`20`20`20`20`20`20`20else`20fprintf(*fpw,"<%s`20%s:%d>\n\n",news_node,g Va`5Bg`5D->grp_name,ga`5Bg`5D->grp_ia`5Bm`5D.itm_num); X+`20`20`20`20`20`20`20`20`20`7D X+`20`20`20`20`20`20`20header`20=`200; X+`20`20`20`20`20`20`20continue; X+`20`20`20`20`20`20`20`7D X+`20`20`20`20`20else`20if`20(header)`20`7B X+`20`20`20`20`20`20`20if`20(!strncmp(xfrbuf,"From:",5))`20`7B X+`20`20`20`20`20`20`20`20`20strcpy(from,`26xfrbuf`5B6`5D); X+`20`09chop_str(from,'\n'); X+`20`20`20`20`20`20`20`20`20`7D X+`20`20`20`20`20`20`20else`20if`20(!strncmp(xfrbuf,"Message-ID:",11))`20`7B X+`20`20`20`20`20`20`20`20`20strcpy(id,`26xfrbuf`5B12`5D); X+`20`09chop_str(id,'\n'); X+`20`20`20`20`20`20`20`20`20`7D X+`20`20`20`20`20`20`20else`20if`20(!strncmp(xfrbuf,"Subject:",8))`20`7B X+`20`20`20`20`20`20`20`20`20strcpy(subj,`26xfrbuf`5B9`5D); X+`20`09chop_str(subj,'\n'); X+`20`20`20`20`20`20`20`20`20`7D X+`20`20`20`20`20`20`20else`20if`20(!strncmp(xfrbuf,"Date:",5))`20`7B X+`20`20`20`20`20`20`20`20`20strcpy(idate,xfrbuf); X+`20`20`20`20`20`20`20`20`20`7D X+`20`20`20`20`20`20`20`7D X+`20`20`20`20`20if`20((!header)`20`7C`7C`20((incl_header)`20`26`26`20(header)) V)`20`7B X+`20`20`20`20`20`20`20if`20((*xfrbuf`20==`20'>')`20`26`26`20*fpad)`20fprintf(* Vfpw,">%s",xfrbuf); X+`20`20`20`20`20`20`20else`20fprintf(*fpw,"%s%s",fpad,xfrbuf); X+`20`20`20`20`20`20`20`7D X+`20`20`20`20`20`7D X+`20`20`20fclose(fpr); X+`20`20`20if`20(*fp_open`20>`201)`20delete_file_versions(fp_open); X+`20`20`20*fp_open`20=`20'\0'; X+`20`20`20if`20(`20(fpr`20=`20profile_sigfile(0))`20!=`200`20)`20`7B X+`20`20`20`20`20fputs("--`20\n",*fpw); X+`20`20`20`20`20fputs("Forwarded-By:\n",*fpw); X+`20`20`20`20`20while`20(fgets(xfrbuf,512,fpr))`20fputs(xfrbuf,*fpw); X+`20`20`20`20`20fclose(fpr); X+`20`20`20`20`20`7D X+`20`20`20return(0); X+`20`7D X+`20`0C X+`20/* X+`20`20*`20`20do_forward X+`20`20* X`20`20`20*`20`20Forward`20a`20mail`20item`20via`20VMS`20MAIL X`20`20`20*/ X`20`20 X************** X***`20270,276 X`20`20static`20int X`20`20dfwd() X`20`20`7B X!`20`20`20do_mail(1,(cli$present(c$dsc("HEADERS"))`20`26`201)); X`20`20`20`20return(0); X`20`20`7D X`20`20 X---`20353,474`20----- X`20`20static`20int X`20`20dfwd() X`20`20`7B X!`20`20`20int`20di,`20fi,`20li,`20i,`20header,`20reply_to`20=`200,`20multiple V`20=`200; X!`20`20`20char`20xfrbuf`5B512`5D,`20subj`5B256`5D,`20ngroup`5B132`5D,`20subjli Vne`5B132`5D,`20fpad`5B3`5D; X!`20`20`20FILE`20*fpw; X!`20`20`20unsigned`20short`20ngroup_len; X!`20`20`20$DESCRIPTOR(ngroup_dsc,ngroup); X!`20`20`20struct`20stat`20sbuffer; X!`20 X!`20`09/*`20Next`20line`20stops`20MAIL/FORW/REPLY`20commands`20working`20for V`20NEWS/CAPTIVE`20*/ X!`20`20`20if`20(news_captive)`20return(0); X!`20 X!`20`20`20if`20(!getnoterange())`20`7B`20 X!`20`20`20`20`20err_line("Error:`20Mailer`20-`20No`20items`20located`20to`20ma Vil"); X!`20`20`20`20`20return(0); X!`20`20`20`20`20`7D X!`20 X!`20`20`20if`20(!(fpw`20=`20fopen(Mail_file,"w","rat=cr","rfm=var")))`20`7B X!`20`20`20`20`20err_line("Error:`20Mailer`20-`20cannot`20open`20tmp`20output V`20file"); X!`20`20`20`20`20return(0); X!`20`20`20`20`20`7D X!`20 X!`20`20`20for`20(di`20=`200;`20(li`20=`20d_itm`5Bdi`5D.litm),`20(fi`20=`20d_it Vm`5Bdi`5D.fitm);`20++di)`20`7B X!`20`20`20`20`20if`20((fi`20>`200)`20`26`26`20!li)`20 X!`20`20`20`20`20`20`20forward_additm(d_itm`5Bdi`5D.ngrp,`20fi,`20`26fpw,`20 X!`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20(cli$present(c$ds Vc("HEADERS"))`20`26`201),`20`26multiple,`20subj); X!`20`20`20`20`20else`20if`20(fi`20<`200)`20`7B X!`20`20`20`20`20`20`20for`20(i`20=`201;`20i`20<=`20ga`5Bd_itm`5Bdi`5D.ngrp`5D- V>grp_count;`20++i) X!`20`20`20`20`20`20`20`20`20forward_additm(d_itm`5Bdi`5D.ngrp,`20ga`5Bd_itm V`5Bdi`5D.ngrp`5D->grp_ia`5Bi`5D.itm_num,`20 X!`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`26fpw,`20(cli$present(c$dsc("HE VADERS"))`20`26`201),`20`26multiple,`20subj); X!`20`20`20`20`20`20`20`7D X!`20`20`20`20`20else`20`7B X!`20`20`20`20`20`20`20for`20(i`20=`20fi;`20i`20<=`20li;`20++i) X!`20`20`20`20`20`20`20`20`20forward_additm(d_itm`5Bdi`5D.ngrp,`20i,`20`26fpw, V`20 X!`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20(cli$presen Vt(c$dsc("HEADERS"))`20`26`201),`20`26multiple,`20subj); X!`20`20`20`20`20`7D X!`20`20`20`7D X!`20 X!`20`20`20fclose(fpw); X!`20 X!`20`20`20set_mail_self_flag(1); X!`20 X!`20`20`20*xfrbuf`20=`20'\0'; X!`20`20`20if`20(cli$get_value(c$dsc("TO"),`26ngroup_dsc,`26ngroup_len)`20`26 V`201)`20`7B X!`20`20`20`20`20do`20`7B X!`20`20`20`20`20`20`20ngroup`5Bngroup_len`5D`20=`20'\0'; X!`20`20`20`20`20`20`20sprintf(`26xfrbuf`5Bstrlen(xfrbuf)`5D,"%s,",add_transfor Vm(ngroup)); X!`20`20`20`20`20`20`20`7D`20while`20(cli$get_value(c$dsc("TO"),`26ngroup_dsc, V`26ngroup_len)`20`26`201); X!`20`20`20`20`20`7D X!`20`20`20else`20`7B X!`20`20`20`20`20char`20*comma_pointer,`20*address_field; X!`20 X!`20`20`20`20`20status`20=`20get_input(`26ngroup_dsc,c$dsc("To:`20"),`26ngroup V_len); X!`20`20`20`20`20if`20((status`20==`20RMS$_EOF)`20`7C`7C`20(status`20==`20SMG$_ VEOF))`20`7B X!`20`20`20`20`20`20`20delete_file_versions(Mail_file); X!`20`20`20`20`20`20`20mail_self_flag`20=`200; X!`20`20`20`20`20`20`20return(0); X!`20`20`20`20`20`20`20`7D X!`20`20`20`20`20ngroup`5Bngroup_len`5D`20=`20'\0'; X!`20`20`20`20`20address_field`20=`20ngroup; X!`20`20`20`20`20do`20`7B X!`20`20`20`20`20`20`20comma_pointer`20=`20chop_str_plus(address_field,','); X!`20`20`20`20`20`20`20sprintf(`26xfrbuf`5Bstrlen(xfrbuf)`5D,"%s,",add_transfor Vm(address_field)); X!`20`20`20`20`20`20`20address_field`20=`20comma_pointer; X!`20`20`20`20`20`20`20`7D`20while`20(address_field); X!`20`20`20`20`20`7D X!`20`20`20xfrbuf`5Bstrlen(xfrbuf)`20-`201`5D`20=`20'\0'; X!`20 X!`20`20`20if`20(cli$get_value(c$dsc("SUBJECT"),`26ngroup_dsc,`26ngroup_len) X!`20`20`20`20`20`20`20==`20CLI$_ABSENT)`20`7B X!`20`20`20`20`20if`20(multiple`20>`201) X!`20`20`20`20`20`20`20subjline`5B0`5D`20=`20'\0'; X!`20`20`20`20`20else X!`20`20`20`20`20`20`20strcpy(subjline,subj); X!`20`20`20`20`20status`20=`20get_input_dflt(`26ngroup_dsc,c$dsc("Subject:`20") V,`26ngroup_len,c$dsc(subjline),0); X!`20`20`20`20`20if`20((status`20==`20RMS$_EOF)`20`7C`7C`20(status`20==`20SMG$_ VEOF))`20`7B X!`20`20`20`20`20`20`20delete_file_versions(Mail_file); X!`20`20`20`20`20`20`20return(0); X!`20`20`20`20`20`20`20`7D X!`20`20`20`20`20`7D X!`20`20`20ngroup`5Bngroup_len`5D`20=`20'\0'; X!`20`20`20strcpy(subj,ngroup); X!`20 X!`20`20`20if`20(cli$present(c$dsc("EDIT"))`20`26`201)`20`7B X!`20`20`20`20`20if`20((status`20=`20call_edit(Mail_file))`20==`202)`20`7B X!`20`20`20`20`20`20`20mail_self_flag`20=`200; X!`20`20`20`20`20`20`20return(0); X!`20`20`20`20`20`20`20`7D X!`20`20`20`20`20if`20(!status)`20`7B X!`20`20`20`20`20`20`20sprintf(err_oline,"Mail`20<%s>?`20`5By`5D:",xfrbuf); X!`20`20`20`20`20`20`20status`20=`20get_input(`26cmd_dsc,c$dscl(`26err_oline_d) V,`26cmd_len); X!`20`20`20`20`20`20`20if`20((status`20==`20RMS$_EOF)`20`7C`7C`20(status`20== V`20SMG$_EOF))`20`7B X!`20`20`20`20`20`20`20`20`20delete_file_versions(Mail_file); X!`20`20`20`20`20`20`20`20`20mail_self_flag`20=`200; X!`20`20`20`20`20`20`20`20`20return(0); X!`20`20`20`20`20`20`20`20`20`7D X!`20`20`20`20`20`20`20`7D X!`20`20`20`20`20else`20cmd_len`20=`200; X!`20`20`20`20`20if`20(!((status`20`26`201)`20`26`26`20((!cmd_len)`20`7C`7C`20( V(cmd_len)`20`26`26`20(toupper(*cmd)`20==`20'Y')))))`20`7B X!`20`20`20`20`20`20`20delete_file_versions(Mail_file); X!`20`20`20`20`20`20`20mail_self_flag`20=`200; X!`20`20`20`20`20`20`20return(0); X!`20`20`20`20`20`20`20`7D X!`20`20`20`20`20`7D X!`20`20`20if`20(stat(Mail_file,`26sbuffer))`20`7B X!`20`20`20`20`20err_line("Error:`20Mail`20-`20extracted`20file`20not`20found") V; X!`20`20`20`20`20mail_self_flag`20=`200; X!`20`20`20`20`20return(0); X!`20`20`20`20`20`7D X!`20`20`20if`20(!sbuffer.st_size)`20`7B X!`20`20`20`20`20err_line("Error:`20Mail`20-`20extracted`20file`20is`20empty"); V X!`20`20`20`20`20delete_file_versions(Mail_file); X!`20`20`20`20`20mail_self_flag`20=`200; X!`20`20`20`20`20return(0); X!`20`20`20`20`20`7D X!`20`20`20call_mail(Mail_file,subj,xfrbuf,"Invoking`20mailer..."); X!`20`20`20mail_self_flag`20=`200; X!`20`20`20delete_file_versions(Mail_file); X`20`20`20`20return(0); X`20`20`7D X`20`20 $ call unpack NEWSFORWARD.DIFF;2 1165599969 "FORMAT STREAM_LF" $ v=f$verify(v) $ exit ---------------------------------------------------------------------------- Radio Suisse Ltd, Internet: winter@vision.rs.ch Laupenstrasse 18a postmaster@rs.ch 3008 Bern PSI-Mail: +22846431062::WINTER (public X.25) Switzerland X.400: C=CH; A=ARCOM; P=RS; O=DM; S=WINTER, G=MARTIN ----------------------------------------------------------------------------