gih900@csc.anu.oz (Geoff Huston) (10/10/89)
-+-+-+-+-+-+-+-+ START OF PART 2 -+-+-+-+-+-+-+-+
X parameter P1, label=INFILE,value(type=$infile)
X qualifier EDIT, negatable,default
X--- 775,781 -----
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
$ CALL UNPACK NEWSCMD.DIFF;2 947717471
$ create/nolog 'f'
X*** `091.news_v59_src`093newsdefine.h
X--- `091.news_src`093newsdefine.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
$ CALL UNPACK NEWSDEFINE.DIFF;2 1728150363
$ create/nolog 'f'
X*** `091.news_v59_src`093newsdelete.c
X--- `091.news_src`093newsdelete.c
X**************
X*** 928,939
X `123
X int cur_time;
X char inpline`091256`093,
X! mail_from`091132`093,
X! mail_groups`091132`093,
X! mail_dist`091132`093,
X! mail_id`091132`093,
X! post_path`091132`093,
X! post_dist`091132`093,
X loc_id`091IDLEN`093,
X id`091132`093,
X ngroup`091132`093,
X--- 928,940 -----
X `123
X int cur_time;
X char inpline`091256`093,
X! mail_from`091256`093,
X! mail_cfrom`091256`093,
X! mail_groups`091256`093,
X! mail_dist`091256`093,
X! mail_id`091256`093,
X! post_path`091256`093,
X! post_dist`091256`093,
X loc_id`091IDLEN`093,
X id`091256`093,
X ngroup`091256`093,
X**************
X*** 935,942
X post_path`091132`093,
X post_dist`091132`093,
X loc_id`091IDLEN`093,
X! id`091132`093,
X! ngroup`091132`093,
X *p,
X *m_a;
X struct tm *stm;
X--- 936,943 -----
X post_path`091256`093,
X post_dist`091256`093,
X loc_id`091IDLEN`093,
X! id`091256`093,
X! ngroup`091256`093,
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`091curr_g`093->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`091curr_g`093->grp_name);
X s_to_lower(m_a);
X sprintf(inpline,"%s@%s",mail_sig,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`091curr_g`093->grp_flags & NEWS_M_MOD_ACCESS
V)) `123
X err_line("\Error: Cancel - Only original poster may cancel items
V\n");
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`091curr_g`093->grp_flags & NEWS_M_MOD_ACCESS
V)) `123
X err_line("\Error: Cancel - Only original poster may cancel items
V\n");
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
X err_line("\Error: Cancel - Item was not posted from this node\
Vn");
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
X err_line("\Error: Cancel - Item was not posted from this node\
Vn");
X return(0);
X `125
$ CALL UNPACK NEWSDELETE.DIFF;2 1143477416
$ create/nolog 'f'
X*** `091.news_v59_src`093newsdir.c
X--- `091.news_src`093newsdir.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);
X sprintf(err_oline," Number %-*.*s Count Unread",SUBJLEN,SUBJLEN,
V"Group");
X--- 141,149 -----
X case DIR_REGISTER:
X put_line("NEWS - Directory of Registered Newsgroups",0);
X break;
X+ case DIR_UNREGISTER:
X+ put_line("NEWS - Directory of UNRegistered Newsgroups",0);
X+ break;
X `125
X put_line(class_name(),0);
X sprintf(err_oline," Number %-*.*s Count Unread",SUBJLEN,SUBJLEN,
V"Group");
X**************
X*** 215,220
X `125
X else if (cli$present(c$dsc("NEW")) == CLI$_PRESENT) dir_type = DIR_NEW
V;
X else if (cli$present(c$dsc("REGISTER")) == CLI$_PRESENT) dir_type = DI
VR_REGISTER;
X else if (!class_len) `123
X force_recalc = 0;
X dir_type = cur_dir_type;
X--- 218,225 -----
X `125
X else if (cli$present(c$dsc("NEW")) == CLI$_PRESENT) dir_type = DIR_NEW
V;
X else if (cli$present(c$dsc("REGISTER")) == CLI$_PRESENT) dir_type = DI
VR_REGISTER;
X+ else if (cli$present(c$dsc("UNREGISTERED")) == CLI$_PRESENT)
X+ dir_type = DIR_UNREGISTER;
X else if (!class_len) `123
X force_recalc = 0;
X dir_type = cur_dir_type;
X**************
X*** 256,261
X break;
X case DIR_REGISTER:
X incl_grp = (ga`091gindx`093->grp_reg);
X break;
X `125
X if (incl_grp && class_check(gindx)) `123
X--- 261,269 -----
X break;
X case DIR_REGISTER:
X incl_grp = (ga`091gindx`093->grp_reg);
X+ break;
X+ case DIR_UNREGISTER:
X+ incl_grp = (ga`091gindx`093->grp_reg == 0);
X break;
X `125
X if (incl_grp && class_check(gindx)) `123
$ CALL UNPACK NEWSDIR.DIFF;2 124604378
$ create/nolog 'f'
X*** `091.news_v59_src`093newsdisplay.c
X--- `091.news_src`093newsdisplay.c
X**************
X*** 278,284
X strcpy(resp,"10000");
X trm = SMG$K_TRM_DOWN;
X `125
X! else if (!strncmp(resp,"top",min(3,strlen(resp))) && (*(resp + 1)
V == 'o')) `123
X strcpy(resp,"10000");
X trm = SMG$K_TRM_UP;
X `125
X--- 278,286 -----
X strcpy(resp,"10000");
X trm = SMG$K_TRM_DOWN;
X `125
X! else if ( !strncmp(resp,"top",min(3,strlen(resp)))
X! && (*(resp + 1) == 'o')
X! && (strlen(resp) <= 3)) `123
X strcpy(resp,"10000");
X trm = SMG$K_TRM_UP;
X `125
$ CALL UNPACK NEWSDISPLAY.DIFF;2 1762604156
$ create/nolog 'f'
X*** `091.news_v59_src`093newsdist.c
X--- `091.news_src`093newsdist.c
X**************
X*** 213,218
X tolist`091IO_SIZE`093,
X *cp1,
X *cp2;
X sys_filter_t *fmp, *f1;
X dist_entry_t *tmp, *t1 = distfile;
X `032
X--- 213,219 -----
X tolist`091IO_SIZE`093,
X *cp1,
X *cp2;
X+ int n;
X sys_filter_t *fmp, *f1;
X dist_entry_t *tmp, *t1 = distfile;
X `032
X**************
X*** 216,223
X sys_filter_t *fmp, *f1;
X dist_entry_t *tmp, *t1 = distfile;
X `032
X! if (sscanf(s,"%s %s",node,tolist) != 2) return;
X! cp1 = tolist;
X tmp = malloc(sizeof *tmp);
X strcpy((tmp->from_name = malloc(strlen(node) + 1)),node);
X tmp->to_names = 0;
X--- 217,228 -----
X sys_filter_t *fmp, *f1;
X dist_entry_t *tmp, *t1 = distfile;
X `032
X! cp1 = s;`009`009`009`009/* s is compressed, stripped string */
X! while (isgraph(*cp1)) cp1++; `009/* scan accross node word */
X! if (!*cp1) cp1 = 0;
X! else *cp1++ = '\0'; `009/* and null terminate node word */
X! strcpy(node,s);
X! if (!strlen(node)) return; `009`009/* handle the case of the string " "
V */
X tmp = malloc(sizeof *tmp);
X strcpy((tmp->from_name = malloc(strlen(node) + 1)),node);
X tmp->to_names = 0;
X**************
X*** 221,238
X tmp = malloc(sizeof *tmp);
X strcpy((tmp->from_name = malloc(strlen(node) + 1)),node);
X tmp->to_names = 0;
X! do `123
X! if (cp2 = strchr(cp1,',')) *cp2++ = '\0';
X! fmp = malloc(sizeof *fmp);
X! strcpy((fmp->sys_filtnam = malloc(strlen(cp1) + 1)),cp1);
X! fmp->sys_fnext = 0;
X! if (!tmp->to_names) tmp->to_names = f1 = fmp;
X! else `123
X! f1->sys_fnext = fmp;
X! f1 = fmp;
X! `125
X! cp1 = cp2;
X! `125 while (cp1);
X tmp->next = 0;
X if (!distfile) distfile = tmp;
X else `123
X--- 226,250 -----
X tmp = malloc(sizeof *tmp);
X strcpy((tmp->from_name = malloc(strlen(node) + 1)),node);
X tmp->to_names = 0;
X! if (cp1) `123 `009`009`009/* now handle following words */
X! while (cp2 = strchr(cp1,' ')) *cp2 = ','; `009/* convert ' ' -> ',' */
X! strcpy(tolist,cp1);
X! cp1 = tolist;
X! do `123
X! if (cp2 = strchr(cp1,',')) *cp2++ = '\0';
X! if (strlen(cp1)) `123
X! fmp = malloc(sizeof *fmp);
X! strcpy((fmp->sys_filtnam = malloc(strlen(cp1) + 1)),cp1);
X! fmp->sys_fnext = 0;
X! if (!tmp->to_names) tmp->to_names = f1 = fmp;
X! else `123
X! f1->sys_fnext = fmp;
X! f1 = fmp;
X! `125
X! `125
X! cp1 = cp2;
X! `125 while (cp1);
X! `125
X tmp->next = 0;
X if (!distfile) distfile = tmp;
X else `123
$ CALL UNPACK NEWSDIST.DIFF;2 372805278
$ create/nolog 'f'
X*** `091.news_v59_src`093newsextern.h
X--- `091.news_src`093newsextern.h
$ CALL UNPACK NEWSEXTERN.DIFF;2 1985495058
$ create/nolog 'f'
X*** `091.news_v59_src`093newsextract.c
X--- `091.news_src`093newsextract.c
X**************
X*** 234,242
X `125
X if (append_ofile) fprintf(fpextract,"\f\n");
X append_ofile = 1;
X! if (w_ok) sprintf(xfrbuf,"X-NEWS: %s %s: %d\n",
X! news_node,ga`091g`093->grp_name,ga`091g`093->grp
V_ia`091m`093.itm_num);
X! fputs(xfrbuf,fpextract);
X err_line(xfrbuf);
X if (m_seen) item_update(g,m);
X while (fgets(xfrbuf,510,fpr)) `123
X--- 234,244 -----
X `125
X if (append_ofile) fprintf(fpextract,"\f\n");
X append_ofile = 1;
X! if (w_ok) `123
X! sprintf(xfrbuf,"X-NEWS: %s %s: %d\n",
X! news_node,ga`091g`093->grp_name,ga`091g`093->grp_ia`091m
V`093.itm_num);
X! fputs(xfrbuf,fpextract);
X! `125
X err_line(xfrbuf);
X if (m_seen) item_update(g,m);
X while (fgets(xfrbuf,510,fpr)) `123
$ CALL UNPACK NEWSEXTRACT.DIFF;2 1181743897
$ create/nolog 'f'
X*** `091.news_v59_src`093newsfiles.c
X--- `091.news_src`093newsfiles.c
X**************
X*** 67,72
X i->f.fab$b_org = FAB$C_SEQ;
X i->f.fab$b_rat = FAB$M_CR;
X i->f.fab$b_rfm = FAB$C_VAR;
X i->f.fab$l_xab = &(i->p);
X i->p = cc$rms_xabpro;
X i->p.xab$w_pro = prot;
X--- 67,75 -----
X i->f.fab$b_org = FAB$C_SEQ;
X i->f.fab$b_rat = FAB$M_CR;
X i->f.fab$b_rfm = FAB$C_VAR;
X+ i->f.fab$l_alq = 4;
X+ i->f.fab$w_deq = 32;
X+ i->f.fab$l_fop `124= FAB$M_TEF;
X i->f.fab$l_xab = &(i->p);
X i->p = cc$rms_xabpro;
X i->p.xab$w_pro = prot;
$ CALL UNPACK NEWSFILES.DIFF;2 1411852509
$ create/nolog 'f'
X*** `091.news_v59_src`093newsforward.c
X--- `091.news_src`093newsforward.c
$ CALL UNPACK NEWSFORWARD.DIFF;2 1985494578
$ create/nolog 'f'
X*** `091.news_v59_src`093newshelp.c
X--- `091.news_src`093newshelp.c
$ CALL UNPACK NEWSHELP.DIFF;2 1985494842
$ create/nolog 'f'
X*** `091.news_v59_src`093newsinclude.h
X--- `091.news_src`093newsinclude.h
$ CALL UNPACK NEWSINCLUDE.DIFF;2 1985494578
$ create/nolog 'f'
X*** `091.news_v59_src`093newsmod.c
X--- `091.news_src`093newsmod.c
$ CALL UNPACK NEWSMOD.DIFF;2 1985494578
$ create/nolog 'f'
X*** `091.news_v59_src`093newsmode.c
X--- `091.news_src`093newsmode.c
$ CALL UNPACK NEWSMODE.DIFF;2 1985494842
$ create/nolog 'f'
X*** `091.news_v59_src`093newspost.c
X--- `091.news_src`093newspost.c
$ CALL UNPACK NEWSPOST.DIFF;2 1985494842
$ create/nolog 'f'
X*** `091.news_v59_src`093newsrc.c
X--- `091.news_src`093newsrc.c
$ CALL UNPACK NEWSRC.DIFF;2 1985495042
$ create/nolog 'f'
X*** `091.news_v59_src`093newsread.c
X--- `091.news_src`093newsread.c
$ CALL UNPACK NEWSREAD.DIFF;2 1985494842
$ create/nolog 'f'
X*** `091.news_v59_src`093newsregister.c
X--- `091.news_src`093newsregister.c
$ CALL UNPACK NEWSREGISTER.DIFF;2 1985494786
$ create/nolog 'f'
X*** `091.news_v59_src`093newsremclient.c
X--- `091.news_src`093newsremclient.c
X**************
X*** 346,352
X `032
X toggle_link()
X `123
X! if (!nntp_write("YCMND") `124`124 (!(wait_net_response(RESP_TIMER,1))))
V `123
X if (*net_open_chan) `123
X char proto_type;
X `032
X--- 346,352 -----
X `032
X toggle_link()
X `123
X! if (!nntp_write("STAT") `124`124 (!(wait_net_response(RESP_TIMER,1)))) `
V123
X if (*net_open_chan) `123
X char proto_type;
X `032
$ CALL UNPACK NEWSREMCLIENT.DIFF;2 504716614
$ create/nolog 'f'
X*** `091.news_v59_src`093newsrtl.c
X--- `091.news_src`093newsrtl.c
$ CALL UNPACK NEWSRTL.DIFF;2 1985494578
$ create/nolog 'f'
X*** `091.news_v59_src`093newssearch.c
X--- `091.news_src`093newssearch.c
$ CALL UNPACK NEWSSEARCH.DIFF;2 1985493570
$ create/nolog 'f'
X
+-+-+-+-+-+-+-+- END OF PART 2 +-+-+-+-+-+-+-+-nreadwin@miclon.uucp (Neil Readwin) (10/11/89)
In article <777.2531ccc7@csc.anu.oz> gih900@csc.anu.oz (Geoff Huston) writes: > [stuff deleted] >$ CALL UNPACK NEWSSEARCH.DIFF;2 1985493570 >$ create/nolog 'f' >X >+-+-+-+-+-+-+-+- END OF PART 2 +-+-+-+-+-+-+-+- In article <778.2531cdb1@csc.anu.oz> gih900@csc.anu.oz (Geoff Huston) writes: >-+-+-+-+-+-+-+-+ START OF PART 3 -+-+-+-+-+-+-+-+ >*** `091.news_v59_src`093newsselect.c >X--- `091.news_src`093newsselect.c >$ CALL UNPACK NEWSSELECT.DIFF;2 1985495098 > [stuff deleted] When I try to unpack this TPU loops forever. The last line of part 2 and the first line of part 3 must be joined for it to work. Neil. -- Fact: The above does not reflect the opinions or policy of Micrognosis. nreadwin@uk.co.mic.lon ...uunet!mcvax!ukc!miclon!nreadwin == Everything is a cause for sorrow that my mind or body has made ==