source: FOIAVistA/tag/r/VISTALINK_SECURITY-XOBS/XOBSRA1.m@ 628

Last change on this file since 628 was 628, checked in by George Lilly, 14 years ago

initial load of FOIAVistA 6/30/08 version

File size: 1.9 KB
Line 
1XOBSRA1 ;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 ;
7KILL ; -- 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 ;
27CACHE(%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 ;
36OTHER ; -- 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 ;
Note: See TracBrowser for help on using the repository browser.