gih900@csc.anu.oz (Geoff Huston) (11/25/89)
+-+-+-+ Beginning of part 8 +-+-+-+
X `032
X toggle_link()
X `123
V! if (!nntp_write("YCMND") `124`124 (!(wait_net_response(RESP_TIMER,1)))) `
X123
X if (*net_open_chan) `123
X char proto_type;
X `032
X--- 346,352 -----
X `032
X toggle_link()
X `123
V! if (!nntp_write("STAT") `124`124 (!(wait_net_response(RESP_TIMER,1)))) `1
X23
X if (*net_open_chan) `123
X char proto_type;
X `032
X**************
X*** 352,358
X `032
X if (net_proto == CMUTCP) proto_type = 'T';
X else if (net_proto == WINTCP) proto_type = 'W';
X! else if (net_proto == SRITCP) proto_type = 'S';
X else proto_type = 'D';
X close_net();
V sprintf(client_msg,"Lost connection to NEWS SERVER ([%c] %s)",proto_t
Xype,net_open_chan);
X--- 352,358 -----
X `032
X if (net_proto == CMUTCP) proto_type = 'T';
X else if (net_proto == WINTCP) proto_type = 'W';
X! else if (net_proto == MULTINETTCP) proto_type = 'M';
X else proto_type = 'D';
X close_net();
V sprintf(client_msg,"Lost connection to NEWS SERVER ([%c] %s)",proto_t
Xype,net_open_chan);
X**************
X*** 366,372
X * open_rem_chan
X *
X * Open channel to remote NNTP server on host name node, using protocol
X! * proto (3 = SRITCP, 2 == WINTCP, 1 == CMUTCP, 0 = DECNET)
X */
X `032
X open_rem_chan(node,proto)
X--- 366,372 -----
X * open_rem_chan
X *
X * Open channel to remote NNTP server on host name node, using protocol
X! * proto (3 = MULTINETTCP, 2 == WINTCP, 1 == CMUTCP, 0 = DECNET)
X */
X `032
X open_rem_chan(node,proto)
X**************
X*** 391,397
X `032
X if (net_proto == CMUTCP) proto_type = 'T';
X else if (net_proto == WINTCP) proto_type = 'W';
X! else if (net_proto == SRITCP) proto_type = 'S';
X else proto_type = 'D';
V sprintf(client_msg,"Cannot connect to NEWS SERVER ([%c] %s)",proto_ty
Xpe,net_open_chan);
X net_read_status = 0;
X--- 391,397 -----
X `032
X if (net_proto == CMUTCP) proto_type = 'T';
X else if (net_proto == WINTCP) proto_type = 'W';
X! else if (net_proto == MULTINETTCP) proto_type = 'M';
X else proto_type = 'D';
V sprintf(client_msg,"Cannot connect to NEWS SERVER ([%c] %s)",proto_ty
Xpe,net_open_chan);
X net_read_status = 0;
X**************
X*** 404,410
X `032
X if (net_proto == CMUTCP) proto_type = 'T';
X else if (net_proto == WINTCP) proto_type = 'W';
X! else if (net_proto == SRITCP) proto_type = 'S';
X else proto_type = 'D';
X close_net();
X net_read_status = 0;
X--- 404,410 -----
X `032
X if (net_proto == CMUTCP) proto_type = 'T';
X else if (net_proto == WINTCP) proto_type = 'W';
X! else if (net_proto == MULTINETTCP) proto_type = 'M';
X else proto_type = 'D';
X close_net();
X net_read_status = 0;
$ GOSUB UNPACK_FILE
$ FILE_IS = "NEWSRTL.DIFF"
$ CHECKSUM_IS = 1985494578
$ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY
X*** [.news_v59_src]newsrtl.c
X--- [.news_src]newsrtl.c
$ GOSUB UNPACK_FILE
$ FILE_IS = "NEWSSEARCH.DIFF"
$ CHECKSUM_IS = 1985493570
$ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY
X*** [.news_v59_src]newssearch.c
X--- [.news_src]newssearch.c
$ GOSUB UNPACK_FILE
$ FILE_IS = "NEWSSELECT.DIFF"
$ CHECKSUM_IS = 1985495098
$ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY
X*** [.news_v59_src]newsselect.c
X--- [.news_src]newsselect.c
$ GOSUB UNPACK_FILE
$ FILE_IS = "NEWSSETSHOW.DIFF"
$ CHECKSUM_IS = 101864379
$ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY
X*** [.news_v59_src]newssetshow.c
X--- [.news_src]newssetshow.c
X**************
X*** 26,32
V ** - Alter SHOW NEWSGROUP output to be similar to that of newsgroup_
Xheader()
X ** - Add SET NEWSGROUP/TITLE
V ** - Due to code commonality, NEWSCREATE has been included in this m
Xodule
X! ** - Add support for SRI Multinet TCP (Mats Sundvall)
X ** V5.9 9-June-1989 GIH
X ** - If ADD MEMBER modifies an existing member then the confirmation
X ** message indicates alteration rather than addition.
X--- 26,32 -----
V ** - Alter SHOW NEWSGROUP output to be similar to that of newsgroup_
Xheader()
X ** - Add SET NEWSGROUP/TITLE
V ** - Due to code commonality, NEWSCREATE has been included in this m
Xodule
X! ** - Add support for MULTINET Multinet TCP (Mats Sundvall)
X ** V5.9 9-June-1989 GIH
X ** - If ADD MEMBER modifies an existing member then the confirmation
X ** message indicates alteration rather than addition.
X**************
X*** 159,165
X if (!len) protocol_val = 0;
X else if (!strncmp(tmpstr,"CMUTCP",len)) protocol_val= 1;
X else if (!strncmp(tmpstr,"WINTCP",len)) protocol_val = 2;
X! else if (!strncmp(tmpstr,"SRITCP",len)) protocol_val = 3;
X else if (!strncmp(tmpstr,"TCP",len))
X `032
X #ifdef SRI
X--- 159,165 -----
X if (!len) protocol_val = 0;
X else if (!strncmp(tmpstr,"CMUTCP",len)) protocol_val= 1;
X else if (!strncmp(tmpstr,"WINTCP",len)) protocol_val = 2;
X! else if (!strncmp(tmpstr,"MULTINETTCP",len)) protocol_val = 3;
X else if (!strncmp(tmpstr,"TCP",len))
X `032
X #ifdef MULTINET
X**************
X*** 162,168
X else if (!strncmp(tmpstr,"SRITCP",len)) protocol_val = 3;
X else if (!strncmp(tmpstr,"TCP",len))
X `032
X! #ifdef SRI
X protocol_val = 3;
X #else
X #ifdef TWG
X--- 162,168 -----
X else if (!strncmp(tmpstr,"MULTINETTCP",len)) protocol_val = 3;
X else if (!strncmp(tmpstr,"TCP",len))
X `032
X! #ifdef MULTINET
X protocol_val = 3;
X #else
X #ifdef TWG
X**************
X*** 1205,1213
X check_access(g)
X int g;
X `123
X! char acline[256], cknode[132], mod[132],
X! *cp, *ap, *op;
X! FILE *fpd;
X `032
X ga[g]->grp_flags `124= NEWS_M_ACCESS_CHECKED;
X if (ga[g]->grp_flags & NEWS_M_MAILMODERATE) `123
X--- 1205,1213 -----
X check_access(g)
X int g;
X `123
X! char acline[256], cknode[132], mod[132],
X! *cp, *ap, *op;
X! FILE *fpd;
X `032
X ga[g]->grp_flags `124= NEWS_M_ACCESS_CHECKED;
X if (ga[g]->grp_flags & NEWS_M_MAILMODERATE) `123
X**************
X*** 1209,1221
X *cp, *ap, *op;
X FILE *fpd;
X `032
X! ga[g]->grp_flags `124= NEWS_M_ACCESS_CHECKED;
X! if (ga[g]->grp_flags & NEWS_M_MAILMODERATE) `123
X! sprintf(mod,"%s@%s",usr_username,Node_address);
X! if (!strcmp(mod,moderator_address(ga[g]->grp_name))) `123
V! ga[g]->grp_flags `124= (NEWS_M_MOD_USER `124 NEWS_M_WRITE_ACCES
XS);
X! return;
X! `125
X `125
V if (!(ga[g]->grp_flags & NEWS_M_NOWRITE_SET)) ga[g]->grp_flags `124= N
XEWS_M_WRITE_ACCESS;
X sprintf(itm_fname,Access_template,util_dir(ga[g]->grp_name));
X--- 1209,1246 -----
X *cp, *ap, *op;
X FILE *fpd;
X `032
X! ga[g]->grp_flags `124= NEWS_M_ACCESS_CHECKED;
X! if (ga[g]->grp_flags & NEWS_M_MAILMODERATE) `123
X! sprintf(mod,"%s@%s",usr_username,Node_address);
X! if (!strcmp(mod,moderator_address(ga[g]->grp_name))) `123
X! ga[g]->grp_flags `124= (NEWS_M_MOD_USER `124 NEWS_M_WRITE_ACCESS);
X! return;
X! `125
X! `125
X! if (!(ga[g]->grp_flags & NEWS_M_NOWRITE_SET))
X! ga[g]->grp_flags `124= NEWS_M_WRITE_ACCESS;
X! sprintf(itm_fname,Access_template,util_dir(ga[g]->grp_name));
X! sysprv();
X! if (fpd = fopen(itm_fname,"r")) `123
X! while (fgets(acline,256,fpd)) `123
X! if (*acline == '#') continue;
X! if (cp = strchr(acline,'\n')) *cp = ' ';
X! s_to_lower(acline);
X! if (cp = strchr(acline,' ')) *cp = '\0';
X! if (ap = strchr(acline,'@')) *ap = '\0';
X! if (op = strchr(acline,':')) *op = '\0';
X! if ( !strcmp(acline,usr_username)
X! `124`124 wild_match(usr_username,acline)
X! `124`124 idmatch(acline)) `123
X! if (cp) *cp = ' ';
X! if (ap) *ap = '@';
X! if (strchr(acline,'@')) `123
X! sprintf(cknode,"@%s ",news_node);
X! if (!substrcmp(cp,cknode)) continue;
X! `125
V! if (substrcmp(cp," write ")) ga[g]->grp_flags `124= NEWS_M_WRITE_AC
XCESS;
V! if (substrcmp(cp," nowrite ")) ga[g]->grp_flags &= `126NEWS_M_WRITE
X_ACCESS;
V! if (substrcmp(cp," moderate ")) ga[g]->grp_flags `124= (NEWS_M_MOD_
XUSER `124 NEWS_M_WRITE_ACCESS);
X `125
X `125
X fclose(fpd);
X**************
X*** 1217,1248
X return;
X `125
X `125
V! if (!(ga[g]->grp_flags & NEWS_M_NOWRITE_SET)) ga[g]->grp_flags `124= N
XEWS_M_WRITE_ACCESS;
X! sprintf(itm_fname,Access_template,util_dir(ga[g]->grp_name));
X! sysprv();
X! if (fpd = fopen(itm_fname,"r")) `123
X! while (fgets(acline,256,fpd)) `123
X! if (*acline == '#') continue;
X! if (cp = strchr(acline,'\n')) *cp = ' ';
X! s_to_lower(acline);
X! if (cp = strchr(acline,' ')) *cp = '\0';
X! if (ap = strchr(acline,'@')) *ap = '\0';
X! if (op = strchr(acline,':')) *op = '\0';
V! if (!strcmp(acline,usr_username) `124`124 wild_match(usr_userna
Xme,acline) `124`124 idmatch(acline)) `123
X! if (cp) *cp = ' ';
X! if (ap) *ap = '@';
X! if (strchr(acline,'@')) `123
X! sprintf(cknode,"@%s ",news_node);
X! if (!substrcmp(cp,cknode)) continue;
X! `125
V! if (substrcmp(cp," write ")) ga[g]->grp_flags `124= NEWS_M_
XWRITE_ACCESS;
V! if (substrcmp(cp," nowrite ")) ga[g]->grp_flags &= `126NEWS
X_M_WRITE_ACCESS;
V! if (substrcmp(cp," moderate ")) ga[g]->grp_flags `124= (NEW
XS_M_MOD_USER `124 NEWS_M_WRITE_ACCESS);
X! `125
X! `125
X! fclose(fpd);
X! `125
X! nosysprv();
X `125
X `012
X do_set_mod()
X--- 1242,1251 -----
V if (substrcmp(cp," nowrite ")) ga[g]->grp_flags &= `126NEWS_M_WRITE
X_ACCESS;
V if (substrcmp(cp," moderate ")) ga[g]->grp_flags `124= (NEWS_M_MOD_
XUSER `124 NEWS_M_WRITE_ACCESS);
X `125
X! `125
X! fclose(fpd);
X! `125
X! nosysprv();
X `125
X `012
X do_set_mod()
X**************
X*** 1425,1431
X `032
X if (ga[g]->grp_srvproto == 1) put_line("NNTP-Transport: TCP (CMU)",0);
V else if (ga[g]->grp_srvproto == 2) put_line("NNTP-Transport: TCP (WIN)
X",0);
V! else if (ga[g]->grp_srvproto == 3) put_line("NNTP-Transport: TCP (SRI)
X",0);
X else put_line("NNTP-Transport: DECnet",0);
X if (!(ga[g]->grp_flags & NEWS_M_NNTPCACHE))
X put_line("NNTP-Local-Note-Cache: Disabled",0);
X--- 1428,1434 -----
X `032
X if (ga[g]->grp_srvproto == 1) put_line("NNTP-Transport: TCP (CMU)",0);
V else if (ga[g]->grp_srvproto == 2) put_line("NNTP-Transport: TCP (WIN)
X",0);
V! else if (ga[g]->grp_srvproto == 3) put_line("NNTP-Transport: TCP (MULT
XINET)",0);
X else put_line("NNTP-Transport: DECnet",0);
X if (!(ga[g]->grp_flags & NEWS_M_NNTPCACHE))
X put_line("NNTP-Local-Note-Cache: Disabled",0);
X**************
X*** 1514,1520
X old_lev = news_context;
X `032
X if (upd_client) strcpy(s,"*");
X! else parse_newsgroups(s,"",0,0);
X `032
V if (upd_client `124`124 (inquire_sts = (cli$present(c$dsc("INQUIRE")) & 1
X))) `123
X if (!*s) strcpy(s,"*");
X--- 1517,1523 -----
X old_lev = news_context;
X `032
X if (upd_client) strcpy(s,"*");
X! else parse_newsgroups(s,"",0,0,1);
X `032
V if (upd_client `124`124 (inquire_sts = (cli$present(c$dsc("INQUIRE")) & 1
X))) `123
X if (!*s) strcpy(s,"*");
X**************
X*** 1558,1564
X if (!len) protocol_val = 0;
X else if (!strncmp(tmpstr,"CMUTCP",len)) protocol_val= 1;
X else if (!strncmp(tmpstr,"WINTCP",len)) protocol_val= 2;
X! else if (!strncmp(tmpstr,"SRITCP",len)) protocol_val= 2;
X else if (!strncmp(tmpstr,"TCP",len))
X `032
X #ifdef SRI
X--- 1561,1567 -----
X if (!len) protocol_val = 0;
X else if (!strncmp(tmpstr,"CMUTCP",len)) protocol_val= 1;
X else if (!strncmp(tmpstr,"WINTCP",len)) protocol_val= 2;
X! else if (!strncmp(tmpstr,"MULTINETTCP",len)) protocol_val= 2;
X else if (!strncmp(tmpstr,"TCP",len))
X `032
X #ifdef MULTINET
X**************
X*** 1561,1567
X else if (!strncmp(tmpstr,"SRITCP",len)) protocol_val= 2;
X else if (!strncmp(tmpstr,"TCP",len))
X `032
X! #ifdef SRI
X protocol_val = 3
X #else
X #ifdef TWG
X--- 1564,1570 -----
X else if (!strncmp(tmpstr,"MULTINETTCP",len)) protocol_val= 2;
X else if (!strncmp(tmpstr,"TCP",len))
X `032
X! #ifdef MULTINET
X protocol_val = 3
X #else
X #ifdef TWG
$ GOSUB UNPACK_FILE
$ FILE_IS = "NEWSSITE.DIFF"
$ CHECKSUM_IS = 1682381736
$ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY
X*** [.news_v59_src]newssite.c
X--- [.news_src]newssite.c
X**************
X*** 242,247
X strcpy(mail_sig,usr_username);
X s_to_lower(mail_sig);
X `125
X `032
X *usr_persname = '\0';
X mail_flags = 0;
X--- 242,251 -----
X strcpy(mail_sig,usr_username);
X s_to_lower(mail_sig);
X `125
X+ if (!strchr(mail_sig,'@')) `123
X+ strcat(mail_sig,"@");
X+ strcat(mail_sig,Node_address);
X+ `125
X `032
X *usr_persname = '\0';
X mail_flags = 0;
$ GOSUB UNPACK_FILE
$ FILE_IS = "NEWSSITE_H.DIFF"
$ CHECKSUM_IS = 1080295435
$ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY
X*** [.news_v59_src]newssite.h
X--- [.news_src]newssite.h
X**************
X*** 1,7
X /*
X **++
X ** FACILITY:
X! ** NEWSSITE
X **
X ** ABSTRACT:
X ** Site tailorable NEWS constant definitions.
X--- 1,7 -----
X /*
X **++
X ** FACILITY:
X! ** NEWSSITE.H
X **
X ** ABSTRACT:
X ** Site tailorable NEWS constant definitions.
X**************
X*** 21,26
X ** - Add MIN and MAX expiry times
X ** V5.8 2-Mar-1989 GIH
X ** - Add RECHECK_TIMER, PATH_CHECK, SYSFILE, DISTFILE
X **--
X **/
X `032
X--- 21,28 -----
X ** - Add MIN and MAX expiry times
X ** V5.8 2-Mar-1989 GIH
X ** - Add RECHECK_TIMER, PATH_CHECK, SYSFILE, DISTFILE
X+ **`009V5.9B`00925-Oct-1989`009GIH
V+ **`009 - Drop default item lifetime to 20 days (NEWS volumes are increasin
Xg)
X **--
X **/
X `032
X**************
X*** 24,32
X **--
X **/
X `032
X! #define NEWS_VERSION "VMS News - V5.9"
X! #define NEWS_VDATE "09-Jul-1989"
X! #define NEWS_DDATE "09/07/89"
X `032
X /*
X * EXP_TIME
X--- 26,34 -----
X **--
X **/
X `032
X! #define NEWS_VERSION "VMS News - V5.9B"
X! #define NEWS_VDATE "25-Oct-1989"
X! #define NEWS_DDATE "25/10/89"
X `032
X /*
X * EXP_TIME
X**************
X*** 36,42
X * Newsgroup lifetime (in days): global default.
X */
X `032
X! #define EXP_TIME 30
X #define GRP_TIME 60
X `032
X /*
X--- 38,44 -----
X * Newsgroup lifetime (in days): global default.
X */
X `032
-+-+-+-+-+ End of part 8 +-+-+-+-+-