What is line 78 supposed to do? 'Commit 0' /* hot to trot */
/Fran Hensler at Slippery Rock University of Pennsylvania USA for 48 years mailto:f...@zvm.sru.edu http://zvm.sru.edu/~fjh +1.724.794.6172 "Yes, Virginia, there is a Slippery Rock" -------------------------------------------------------------------------- On Wed, 20 Jul 2011 10:27:15 -0700 Michael Harding said: >Okay, as long as we're posting code... >My version is a bit more generic, but also takes into account that it might >be issued from a SECUSER-ed disconnected id. > >/* >** SMSG's an arbitrary target SVM, captures responses and inserts >** into the pipeline. >*/ >Parse Upper arg tgtmach what '(' opts ')' ignored >Call InitRtn >'CallPipe (Name GetSMsgResp End ?)', > 'Literal' timeout_value, > '|Delay', > '|stopper:Faninany', > '|xx:Gate', > '?', > 'Starmsg *MSG CP SMSG' tgtmach what ||, > '|xx:', > '|ours:Find 00000001' || Left(tgtmach,8,'_') ||, > '|dec:Fanout', > '|Take 1', > '|Spec /' || msg_wait || '/ 1', > '|Elastic', > '|Delay', > '|stopper:', > '?dec:', > '|Spec 17-* n', > '|*:', > '?ours:', > '|obnd:Pick 17.10 == /HCPMSG045E/', > '|Elastic', > '|stopper:', > '?obnd:', > '|Spec /From/ 1 9.8 strip nw /:/ n 17-* nw', > '|Cons' >Call CleanUp >Exit xRc >InitRtn: >timeout_value = '+20';msg_wait='+1' >what = Strip(what) >Parse value Diag(8,'Q SET') with . 'MSG' wasmsg . 'CPCONIO' wascpcio . >wasmsg = Strip(wasmsg,'T',',') >wascpcio = Strip(wascpcio,'T',',') >iRc = 0 >popts='' >Do while opts <> '' > Parse var opts opt opts > Select > When Abbrev('TIMEOUT',opt,1) |, > Abbrev('DELAY',opt,3) then Do > Parse var opts timeout_value opts > If Pos('.',timeout_value)=1 then > timeout_value='0'timeout_value > timeout_value = '+' || timeout_value > End > When Abbrev('WAITCONT',opt,1) |, > Abbrev('WAITON',opt,1) then Do > Parse var opts msg_wait opts > If pos('.',msg_wait)=1 then msg_wait='0'msg_wait > msg_wait = '+' || msg_wait > End > Otherwise popts = Strip(popts opt) > End /* select */ > End > If popts<>'' then what = what'('popts')' > If iRc <> 0 then Exit iRc > /*>-------<*>-------<*>-------<*>-------<*>-------<*>-------<*/ > /* Ensure secuser isn't directing msgs elsewhere */ > /*>-------<*>-------<*>-------<*>-------<*>-------<*>-------<*/ > dscd = Word(Diag(8,'Q CONS'),3) == 'DISCONNECTED' > If dscd then Do > Parse value DiagRc(8,'Q PRIV') with . '15'x . ':' myprivs . '15'x > If Verify(myprivs,'AC','M')>0 then do_me = '*' > Else do_me = '' > Parse value DiagRc(8,'Q SECUSER *'), > with . '15'x . '15'x suinfo '15'x > Parse var suinfo . whoisit . > If whoisit<>'not' > then Parse value DiagRc(8,'SET SECUSER' do_me 'OFF') with . > Else whoisit = '' > End > 'Commit 0' /* hot to trot */ > x=Diag(8,'SET MSG IUCV' || '15'x || 'SET CPCONIO IUCV') > Return > > CleanUp: > xRc = Rc > x = Diag(8,'SET MSG' wasmsg || '15'x || 'SET CPCONIO' wascpcio) > If dscd then if whoisit<>'' > then Parse value Diag(8,'SET SECUSER' do_me whoisit) with . > Return >