Path: utzoo!attcan!uunet!mailrus!wuarchive!kuhub.cc.ukans.edu!anu-news!list From: munnari!csc.anu.oz.au!gih900@UUNET.UU.NET (Geoff Huston) Newsgroups: news.software.anu-news Subject: RE: OPEN newsgroup is broken in NEWS V5.9 Message-ID: <8911250007.AA02302@uunet.uu.net> Date: 25 Nov 89 15:57:50 GMT Sender: ANU-NEWS Discussion Reply-To: Geoff Huston Lines: 44 >This is a bug report about the behavior of the OPEN command in NEWS V5.9A. I >built this from sources obtained from Bob Sloane. I got the base sources from >Bob then applied the DIFF/SLP files supplied by Geoff, then built NEWS. >The Problem: > > OPEN does not open the desired news group >When an OPEN command is parsed a check is made for the value of the command >line object NEWSGROUP, to see if the desired news group is the pseudo group >"MAIL". If it is all goes well. If the value of the NEWSGROUP command line >object (actually Parameter 1) is not MAIL and there is no class then the logic >drops into do_selgrp, which then drops into do_select. do_select checks if a >parameter has been passed, and if not checks for the command line object >NEWSGROUP (again). This check returns CLI$_ABSENT. It appears that one cannot >"reparse" a command line object once it has been parsed the first time. >Because of this the OPEN command acts as though no newsgroup value has been >passed. This is NOT fixed in the 5.9B patches posted out yesterday - BUT will be fixed in the 5.9C release. I have located and fixed the problem: NEWSSELECT.C : do_openit() { char s[80]; short s_l; $DESCRIPTOR(s_d,s); if (cli$get_value(c$dsc("NEWSGROUP"),&s_d,&s_l) & 1) { s[s_l] = '\0'; s_to_lower(s); if (!strcmp(s,"mail")) return(do_open_mail()); if (do_select(s,0,2)) selgrp_action(); return(0); } if (cli$present(c$dsc("CLASSNAME")) & 1) return(do_set_class()); return(do_selgrp()); } Geoff Huston