gih900@csc.anu.oz (Geoff Huston) (11/25/89)
+-+-+-+ Beginning of part 3 +-+-+-+ X $ if f$cvtime(f$file_attributes("NNTP_TCPWIN.OBJ","rdt")).gts.- V f$cvtime(f$file_attributes("[-.NEWS_DIST]NNTP_TCPWIN.EXE","rdt")) then $ X goto dopa3 X $ if f$cvtime(f$file_attributes("NNTP_SERVER.OBJ","rdt")).gts.- V! f$cvtime(f$file_attributes("[-.NEWS_DIST]NNTP_TCPWIN.EXE","rdt")) then $ X goto dopa3 X $ goto pastpa3 X $dopa3: X $ write sys$output "$ link nntp_tcpwin,nntp_server" X--- 411,417 ----- X $ if f$cvtime(f$file_attributes("NNTP_TCPWINMULTINET.OBJ","rdt")).gts.- V f$cvtime(f$file_attributes("[-.NEWS_DIST]NNTP_TCPWINMULTINET.EXE","rdt")) X then $ goto dopa3 X $ if f$cvtime(f$file_attributes("NNTP_SERVER.OBJ","rdt")).gts.- V! f$cvtime(f$file_attributes("[-.NEWS_DIST]NNTP_TCPWINMULTINET.EXE","rdt")) X then $ goto dopa3 X $ goto pastpa3 X $dopa3: X $ write sys$output "$ link nntp_tcpwinmultinet,nntp_server" X************** X*** 365,372 V f$cvtime(f$file_attributes("[-.NEWS_DIST]NNTP_TCPWIN.EXE","rdt")) then $ X goto dopa3 X $ goto pastpa3 X $dopa3: X! $ write sys$output "$ link nntp_tcpwin,nntp_server" V! $ link/nomap/notrace/exe=[-.news_dist]nntp_tcpwin nntp_tcpwin,nntp_server,n Xewsdist,- X add_transform,newsrtl,[-.news_src]options_c_link/opt X $ purge nntp_tcpwin.*,[-.news_dist]nntp_tcpwin.* X $pastpa3: X--- 414,422 ----- V f$cvtime(f$file_attributes("[-.NEWS_DIST]NNTP_TCPWINMULTINET.EXE","rdt")) X then $ goto dopa3 X $ goto pastpa3 X $dopa3: X! $ write sys$output "$ link nntp_tcpwinmultinet,nntp_server" X! $ link/nomap/notrace/exe=[-.news_dist]nntp_tcpwinmultinet - X! nntp_tcpwinmultinet,nntp_server,newsdist,- X add_transform,newsrtl,[-.news_src]options_c_link/opt X $ purge nntp_tcpwinmultinet.*,[-.news_dist]nntp_tcpwinmultinet.* X $pastpa3: X************** X*** 368,374 X $ write sys$output "$ link nntp_tcpwin,nntp_server" V $ link/nomap/notrace/exe=[-.news_dist]nntp_tcpwin nntp_tcpwin,nntp_server,n Xewsdist,- X add_transform,newsrtl,[-.news_src]options_c_link/opt X! $ purge nntp_tcpwin.*,[-.news_dist]nntp_tcpwin.* X $pastpa3: X $! X $! NEWS.HLP X--- 418,424 ----- X $ link/nomap/notrace/exe=[-.news_dist]nntp_tcpwinmultinet - X nntp_tcpwinmultinet,nntp_server,newsdist,- X add_transform,newsrtl,[-.news_src]options_c_link/opt X! $ purge nntp_tcpwinmultinet.*,[-.news_dist]nntp_tcpwinmultinet.* X $pastpa3: X $! X $! NEWS.HLP $ GOSUB UNPACK_FILE $ FILE_IS = "NEWSCMD.DIFF" $ CHECKSUM_IS = 610678549 $ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY X*** [.news_v59_src]newscmd.cld X--- [.news_src]newscmd.cld X************** X*** 36,42 X ! - ADD MAIL command X ! - CREATE and SET NEWSGROUP/TITLE X ! - SET NEWSGROUP/NOTICE X! ! - Add protocol option SRITCP for SRI Multinet TCP (Mats Sundvall) X ! V5.9 9-June-1989 GIH X ! - Add verbs TOP and BOTTOM X ! - SHOW NEWSGROUP/FULL as equivalent to SHOW ENTRY X--- 36,42 ----- X ! - ADD MAIL command X ! - CREATE and SET NEWSGROUP/TITLE X ! - SET NEWSGROUP/NOTICE V! ! - Add protocol option MULTINETTCP for Multinet TCP (Mats Sundvall X) X ! V5.9 9-June-1989 GIH X ! - Add verbs TOP and BOTTOM X ! - SHOW NEWSGROUP/FULL as equivalent to SHOW ENTRY X************** X*** 175,181 X keyword TCP X keyword CMUTCP X keyword WINTCP X! keyword SRITCP X `032 X define type TYPE_OPTIONS X keyword NEWS X--- 175,181 ----- X keyword TCP X keyword CMUTCP X keyword WINTCP X! keyword MULTINETTCP X `032 X define type TYPE_OPTIONS X keyword NEWS X************** X*** 478,484 X define syntax SET_ITEM X routine do_set_item X parameter P1 label=OPTIONS, value(required) X! parameter P2 label=NEWSITEM X qualifier HOLD value(default="0") X `032 X define syntax SET_MANAGER X--- 478,484 ----- X define syntax SET_ITEM X routine do_set_item X parameter P1 label=OPTIONS, value(required) X! parameter P2 label=NOTEID X qualifier HOLD value(default="0") X `032 X define syntax SET_MANAGER X************** X*** 542,547 X qualifier CLASS, negatable,value(default="MAIN") X qualifier EDITOR, negatable,value(required,list) X qualifier PERSONAL_NAME, negatable,value(required) X qualifier PRINT negatable,value X qualifier DIRECTORY negatable,value X qualifier TEMPORARY negatable X--- 542,549 ----- X qualifier CLASS, negatable,value(default="MAIN") X qualifier EDITOR, negatable,value(required,list) X qualifier PERSONAL_NAME, negatable,value(required) X+ qualifier RCORDER`009 negatable X+ qualifier RCFILTER negatable X qualifier PRINT negatable,value X qualifier DIRECTORY negatable,value X qualifier TEMPORARY negatable X************** X*** 660,673 X routine do_error V parameter P1 label=OPTIONS, prompt="_NEWS ADD>", value(requi Xred,type=ADD_OPTIONS) X `032 X- define verb ANSWER X- routine do_followup X- parameter P1, label=INFILE,value(type=$infile) X- qualifier EDIT, negatable,default X- qualifier EXTRACT, negatable,default X- qualifier HEADERS, negatable X- qualifier SELF, negatable X-`032 X define verb ATTACH X routine do_attach X parameter P1, label=PROCESSNAME X--- 662,667 ----- X routine do_error V parameter P1 label=OPTIONS, prompt="_NEWS ADD>", value(requi Xred,type=ADD_OPTIONS) X `032 X define verb ATTACH X routine do_attach X parameter P1, label=PROCESSNAME X************** X*** 736,741 X qualifier OUTPUT value(required,type=$outfile) X qualifier TITLE value(required) X qualifier UNSEEN X qualifier CONFERENCES, nonnegatable,syntax=DIR_CONFERENCES X qualifier ENTRIES, nonnegatable,syntax=DIR_ENTRIES X qualifier NOTEBOOK, nonnegatable,syntax=DIR_NOTEBOOK X--- 730,736 ----- X qualifier OUTPUT value(required,type=$outfile) X qualifier TITLE value(required) X qualifier UNSEEN X+ qualifier UNREGISTERED nonnegatable X qualifier CONFERENCES, nonnegatable,syntax=DIR_CONFERENCES X qualifier ENTRIES, nonnegatable,syntax=DIR_ENTRIES X qualifier NOTEBOOK, nonnegatable,syntax=DIR_NOTEBOOK X************** X*** 739,745 X qualifier CONFERENCES, nonnegatable,syntax=DIR_CONFERENCES X qualifier ENTRIES, nonnegatable,syntax=DIR_ENTRIES X qualifier NOTEBOOK, nonnegatable,syntax=DIR_NOTEBOOK X! disallow any2 (ALL,ITEMS,NEW,NEWSGROUPS,REGISTER,SINCE) X `032 X define verb DISPLAY X routine do_display_file X--- 734,740 ----- X qualifier CONFERENCES, nonnegatable,syntax=DIR_CONFERENCES X qualifier ENTRIES, nonnegatable,syntax=DIR_ENTRIES X qualifier NOTEBOOK, nonnegatable,syntax=DIR_NOTEBOOK X! disallow any2 (ALL,ITEMS,NEW,NEWSGROUPS,REGISTER,SINCE,UNREGISTERED) X `032 X define verb DISPLAY X routine do_display_file X************** X*** 782,787 X or (TITLE and SUBJECT) or (UNSEEN and UNREAD) X `032 X define verb FOLLOWUP X routine do_followup X parameter P1, label=INFILE,value(type=$infile) X qualifier EDIT, negatable,default X--- 777,783 ----- X or (TITLE and SUBJECT) or (UNSEEN and UNREAD) X `032 X define verb FOLLOWUP X+ synonym ANSWER X routine do_followup X parameter P1, label=INFILE,value(type=$infile) X qualifier EDIT, negatable,default X************** X*** 858,863 X disallow any2(NEWSGROUP,MARKER,NEW) V or(MAIL and (NEW or MARKER or CLASSNAME or AUTOMATIC or NOTEBO XOK)) X `032 X define verb POST X routine do_post X parameter P1, label=INFILE,value(type=$infile) X--- 854,862 ----- X disallow any2(NEWSGROUP,MARKER,NEW) V or(MAIL and (NEW or MARKER or CLASSNAME or AUTOMATIC or NOTEBO XOK)) X `032 X+ define verb CROSSPOST X+ routine do_xpost X+`032 X define verb POST X routine do_post X parameter P1, label=INFILE,value(type=$infile) X************** X*** 862,868 X routine do_post X parameter P1, label=INFILE,value(type=$infile) X qualifier EDIT, negatable,default X! qualifier CONTROL, negatable X qualifier HEADERS, negatable X qualifier NEWSGROUPS, nonnegatable, value(required,list) X qualifier SUBJECT, nonnegatable, value(required) X--- 861,867 ----- X routine do_post X parameter P1, label=INFILE,value(type=$infile) X qualifier EDIT, negatable,default X! qualifier CONTROL, nonnegatable X qualifier HEADERS, negatable X qualifier NEWSGROUPS, nonnegatable, value(required,list) X qualifier SUBJECT, nonnegatable, value(required) X************** X*** 938,943 X qualifier IDENTIFIER, value,nonnegatable X qualifier MARKER, value,nonnegatable X qualifier FOLLOWUP, value,nonnegatable V disallow any2(PREV,BACK,NEXT,LAST,PARENT,TOPIC,IDENTIFIER,MARKER,FOL XLOWUP) X `032 X define verb REFRESH X--- 937,944 ----- X qualifier IDENTIFIER, value,nonnegatable X qualifier MARKER, value,nonnegatable X qualifier FOLLOWUP, value,nonnegatable X+ qualifier SUBJECT value,nonnegatable X+ qualifier TITLE value,nonnegatable V disallow any2(PREV,BACK,NEXT,LAST,PARENT,TOPIC,IDENTIFIER,MARKER,FOL XLOWUP) X `032 X define verb REFRESH $ GOSUB UNPACK_FILE $ FILE_IS = "NEWSDEFINE.DIFF" $ CHECKSUM_IS = 1728150363 $ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY X*** [.news_v59_src]newsdefine.h X--- [.news_src]newsdefine.h X************** X*** 46,51 X #define DIR_DATE 1 X #define DIR_NEW 2 X #define DIR_REGISTER 3 X `032 X #define HELP_FILE "NEWS_ROOT:NEWS.HLB" X `032 X--- 46,52 ----- X #define DIR_DATE 1 X #define DIR_NEW 2 X #define DIR_REGISTER 3 X+ #define DIR_UNREGISTER 4 X `032 X #define HELP_FILE "NEWS_ROOT:NEWS.HLB" X `032 $ GOSUB UNPACK_FILE $ FILE_IS = "NEWSDELETE.DIFF" $ CHECKSUM_IS = 1628381697 $ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY X*** [.news_v59_src]newsdelete.c X--- [.news_src]newsdelete.c X************** X*** 928,939 X `123 X int cur_time; X char inpline[256], X! mail_from[132], X! mail_groups[132], X! mail_dist[132], X! mail_id[132], X! post_path[132], X! post_dist[132], X loc_id[IDLEN], X id[132], X ngroup[132], X--- 928,940 ----- X `123 X int cur_time; X char inpline[256], X! mail_from[256], X! mail_cfrom[256], X! mail_groups[256], X! mail_dist[256], X! mail_id[256], X! post_path[256], X! post_dist[256], X loc_id[IDLEN], X id[256], X ngroup[256], X************** X*** 935,942 X post_path[132], X post_dist[132], X loc_id[IDLEN], X! id[132], X! ngroup[132], X *p, X *m_a; X struct tm *stm; X--- 936,943 ----- X post_path[256], X post_dist[256], X loc_id[IDLEN], X! id[256], X! ngroup[256], X *p, X *m_a; X struct tm *stm; X************** X*** 977,983 X return(0); X `125 X `032 X! s_to_lower(mail_from); X m_a = moderator_address(ga[curr_g]->grp_name); X s_to_lower(m_a); X sprintf(inpline,"%s@%s",mail_sig,Node_address); X--- 978,985 ----- X return(0); X `125 X `032 X! strcpy(mail_cfrom,mail_from); X! s_to_lower(mail_cfrom); X m_a = moderator_address(ga[curr_g]->grp_name); X s_to_lower(m_a); X strcpy(inpline,mail_sig); X************** X*** 980,986 X s_to_lower(mail_from); X m_a = moderator_address(ga[curr_g]->grp_name); X s_to_lower(m_a); X! sprintf(inpline,"%s@%s",mail_sig,Node_address); X s_to_lower(inpline); X if (strcmp(inpline,m_a)) `123 X sprintf(inpline,"*%s@%s*\n",usr_username,Node_address); X--- 982,988 ----- X s_to_lower(mail_cfrom); X m_a = moderator_address(ga[curr_g]->grp_name); X s_to_lower(m_a); X! strcpy(inpline,mail_sig); X s_to_lower(inpline); X if (strcmp(inpline,m_a)) `123 X sprintf(inpline,"*%s@%s*\n",usr_username,Node_address); X************** X*** 985,991 X if (strcmp(inpline,m_a)) `123 X sprintf(inpline,"*%s@%s*\n",usr_username,Node_address); X s_to_lower(inpline); X! if (!(wild_match(mail_from,inpline))) `123 X sprintf(inpline,"%s@%s",usr_username,Node_address); X s_to_lower(inpline); X if (!(wild_match(mail_from,inpline))) `123 X--- 987,993 ----- X if (strcmp(inpline,m_a)) `123 X sprintf(inpline,"*%s@%s*\n",usr_username,Node_address); X s_to_lower(inpline); X! if (!(wild_match(mail_cfrom,inpline))) `123 X sprintf(inpline,"%s@%s",usr_username,Node_address); X s_to_lower(inpline); X if (!(wild_match(mail_cfrom,inpline))) `123 X************** X*** 988,994 X if (!(wild_match(mail_from,inpline))) `123 X sprintf(inpline,"%s@%s",usr_username,Node_address); X s_to_lower(inpline); X! if (!(wild_match(mail_from,inpline))) `123 X if (no_priv() && !(ga[curr_g]->grp_flags & NEWS_M_MOD_ACCESS)) `123 V err_line("\Error: Cancel - Only original poster may cancel items\ Xn"); X `009 return(0); X--- 990,996 ----- X if (!(wild_match(mail_cfrom,inpline))) `123 X sprintf(inpline,"%s@%s",usr_username,Node_address); X s_to_lower(inpline); X! if (!(wild_match(mail_cfrom,inpline))) `123 X if (no_priv() && !(ga[curr_g]->grp_flags & NEWS_M_MOD_ACCESS)) `123 V err_line("\Error: Cancel - Only original poster may cancel items\ Xn"); X `009 return(0); X************** X*** 996,1002 X else `123 X sprintf(inpline,"*@%s*\n",Node_address); X s_to_lower(inpline); X! if (!(wild_match(mail_from,inpline))) `123 V err_line("\Error: Cancel - Item was not posted from this node\n X"); X return(0); X `125 X--- 998,1004 ----- X else `123 X sprintf(inpline,"*@%s*\n",Node_address); X s_to_lower(inpline); X! if (!(wild_match(mail_cfrom,inpline))) `123 V err_line("\Error: Cancel - Item was not posted from this node\n X"); X return(0); X `125 $ GOSUB UNPACK_FILE $ FILE_IS = "NEWSDIR.DIFF" $ CHECKSUM_IS = 124604378 $ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY X*** [.news_v59_src]newsdir.c X--- [.news_src]newsdir.c X************** X*** 141,146 X case DIR_REGISTER: X put_line("NEWS - Directory of Registered Newsgroups",0); X break; X `125 X put_line(class_name(),0); V sprintf(err_oline," Number %-*.*s Count Unread",SUBJLEN,SUBJLEN," XGroup"); -+-+-+-+-+ End of part 3 +-+-+-+-+-