[613] | 1 | XOBSRA1 ;mjk,esd/alb - VistALink Reauthentication Code ; 05/22/2003 07:00
|
---|
| 2 | ;;1.5;VistALink Security;;Sep 09, 2005
|
---|
| 3 | ;;Foundations Toolbox Release v1.5 [Build: 1.5.0.026]
|
---|
| 4 | ;
|
---|
| 5 | QUIT
|
---|
| 6 | ;
|
---|
| 7 | KILL ; -- clean up partition's local symbol table ; called from INIT^XOBSRA
|
---|
| 8 | ;SET AAXOB="before" DO ^%ZTER ; -- used to view symbol table 'before' state
|
---|
| 9 | ;
|
---|
| 10 | IF XOBOS["OpenM" DO
|
---|
| 11 | . ; -- Stack: CACHEVMS^XOBVTCP
|
---|
| 12 | . ; SPAWN^XOBVLL
|
---|
| 13 | . ; NXTCALL^XOBVLL
|
---|
| 14 | . ; EN^XOBVRM
|
---|
| 15 | . ; EN^XOBVRPC()
|
---|
| 16 | . ; SETUPDUZ^XOBSRA()
|
---|
| 17 | . ;
|
---|
| 18 | . ; -- NEW non-XOB variables created in above stack
|
---|
| 19 | . NEW DIQUIET,DX,DY,RPC0,RPCNAME,RPCIEN,TAG,ROU,METHSIG,XRTN
|
---|
| 20 | . DO CACHE("XOB")
|
---|
| 21 | ELSE DO
|
---|
| 22 | . DO OTHER
|
---|
| 23 | ;
|
---|
| 24 | ;SET AAXOB="after" DO ^%ZTER ; -- used to view symbol table 'after' state
|
---|
| 25 | QUIT
|
---|
| 26 | ;
|
---|
| 27 | CACHE(%NS) ; -- KILL all 'L'ocal 'VAR'iables except for a 'N'ame'S'pace (%NS) and Kernel for Cache systems
|
---|
| 28 | NEW %LVAR,%NSLEN
|
---|
| 29 | SET %NSLEN=$LENGTH(%NS)
|
---|
| 30 | SET %LVAR=%NS
|
---|
| 31 | FOR SET %LVAR=$ORDER(@%LVAR) QUIT:%LVAR=""!($EXTRACT(%LVAR,1,%NSLEN)'=%NS) NEW @%LVAR
|
---|
| 32 | ; -- NEW Kernel variables and do the big KILL
|
---|
| 33 | DO KILL^XUSCLEAN
|
---|
| 34 | QUIT
|
---|
| 35 | ;
|
---|
| 36 | OTHER ; -- explicit NEW'ing for other for non-Cache M implementations
|
---|
| 37 | ; -- The following are NEW'ed as part KILL^XOBVLL call:
|
---|
| 38 | ; XOBPORT,XOBSTOP,XOBNULL,XOBOS,XOBSYS,XOBHDLR,XOBOK
|
---|
| 39 | ; -- additional NEW'ing needed to preserve for CACHEVMS^XOBVTCP
|
---|
| 40 | NEW XOBEC
|
---|
| 41 | ; -- additional NEW'ing needed to preserve for SPAWN^XOBVLL
|
---|
| 42 | NEW XOBLASTR
|
---|
| 43 | ; -- additional NEW'ing needed to preserve for NXTCALL^XOBVLL
|
---|
| 44 | NEW XOBROOT,XOBREAD,XOBTO,XOBFIRST,XOBDATA,DIQUIET
|
---|
| 45 | ; -- additional NEW'ing needed to preserve for EN^XOBVRM
|
---|
| 46 | NEW XOBOPT
|
---|
| 47 | ; -- additional NEW'ing needed to preserve for EN^XOBVRPC()
|
---|
| 48 | NEW DX,DY,RPC0,RPCNAME,RPCIEN,TAG,ROU,METHSIG,XOBERR,XOBR,XOBSEC,XOBWRAP,XRTN,XOBRA,XOBVER,XOBPTYPE
|
---|
| 49 | ; -- additional NEW'ing needed to preserve for SETUPDUZ^XOBSRA()
|
---|
| 50 | NEW XOBERR,XOBID,XOBTYPE
|
---|
| 51 | ; -- call KILL^XOBVLL to finish NEW'ing and execute Kernel call to kill
|
---|
| 52 | DO KILL^XOBVLL
|
---|
| 53 | QUIT
|
---|
| 54 | ;
|
---|