XUESSO1 ;SEA/LUKE - Single Sign-on Utilities ; Apr 08, 2022@13:58
Source file <XUESSO1.m>
| action | A | extended action | Ea | event driver | Ed | subscriber | Su | protocol | O | limited protocol | LP | run routine | RR | broker | B | edit | E | server | Se | P | screenman | SM | inquire | I |
| Package | Total | Caller Graph |
|---|---|---|
| Kernel | 3 | XUESSO2 XUESSO3 XUSBSE1 |
| Registration | 2 | DGROHLS DGROHLU |
| Clinical Information Resource Network | 1 | RGTKPOC |
| RPC Broker | 1 | XWB2HL7 |
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| GET(INDUZ) | ;Gather identifying data from user's home site.
|
|
| PH() | ; Try for a phone number or pager
|
|
| SPECIAL(SN) | ;INTRINSIC. Special Manila RO site
; Returns 1 if SN is "358" |
|
| PUT(DATIN) | ;;Setup data from authenticating site GET() at receiving site
|
|
| TALL(XUDUZ) | ;INTRINSIC. Test for existing user or adds a new one
; p771 replace parameter DUZ with XUDUZ to not hide DUZ nodes being used in function ; ZEXCEPT: NAME,NEWDUZ,PHONE,RMTDUZ,SITE,SITENUM,SSN,XSSN,TODAY,SECID,NETWORK ;global variables within this routine ; ZEXCEPT: DIC ;turn off DIC(0) for ^XUA4A7 (work around) |
|
| FIND | ||
| ADD | ;We didn't find anybody under SecID,SSN,VISITED FROM, or NAME so we add a new user
|
|
| SET(NEWDUZ) | ;INTRINSIC. Set the user up to go
; ZEXCEPT: RMTDUZ,SITENUM ;global variables within this routine |
|
| ADDU | ;SR. Add a new name to the New Person File
; ZEXCEPT: FDR,NAME,NEWDUZ,NEWREC ;global variables within this routine |
|
| ADDS | ;SR. Add a SSN to the New Person File
; ZEXCEPT: FDR,NEWDUZ,SSN,SITENUM ;global variables within this routine |
|
| ADDI | ;SR. Add SSO attributes to the New Person File
; ZEXCEPT: FDR,NEWDUZ,SECID ;global variables within this routine |
|
| ADDN | ;SR. Update the NAME in the New Person File
; ZEXCEPT: FDR,NEWDUZ,NAME,RMTDUZ,SITENUM ;global variables within this routine |
|
| ADDA | ;SR. Add a new Alias to file 200.04
; ZEXCEPT: FDR,NEWDUZ ;global variables within this routine |
|
| ADDW | ;SR. Add NETWORK USERNAME to the New Person File
; ZEXCEPT: FDR,NEWDUZ,NETWORK ;global variables within this routine |
|
| VISM | ;SR. Create a multiple for this site number in the VISITED FROM file
; ZEXCEPT: FDR,NEWDUZ,RMTDUZ,SITE,SITENUM,TODAY ;global variables within this routine |
|
| UPDT | ;SR. Update all data fields
; Sets: NEWDUZ=0 if failed to complete update ; ZEXCEPT: FDR,NAME,NEWDUZ,SITE,SITENUM,PHONE,TODAY,DATIN,NEWREC ;global variables within this routine |
|
| BULL(NAME,NEWDUZ,SITE,SITENUM,RMTDUZ,PHONE,TODAY) | ;INTRINSIC. Send local bulletin if user added
; Returns: 0 if failed to send bulletin, 1 if success ; ZEXCEPT: XTMUNIT ;set for unit testing |
|
| SSNCHECK(SSN) | ;INTRINSIC. Check for valid SSN
; Input: SSN in format "nnnnnnnnn" or "nnn-nn-nnnn" ; Returns: 0 if SSN is invalid, 1 if success ; Valid SSN range 001-01-0001 to 899-99-9999 with exceptions (rule as of 2011) ; Valid Individual Taxpayer Identification Number range 900-01-0001 to 999-99-9999 with exceptions (rule as of 1966) |
|
| MPISECID(NETNAME) | ; Return SECID from MPI
; Called from $$TALL |
| Name | Field # of Occurrence |
|---|---|
| FILE^DICN | ADDU+5 |
| CHK^DIE | PUT+20, PUT+21 |
| UPDATE^DIE | UPDT+10 |
| ^DIK | UPDT+13 |
| $$FMTE^XLFDT | BULL+7 |
| $$HTFM^XLFDT | PUT+9 |
| $$UP^XLFSTR | FIND+32 |
| ^XMB | BULL+10 |
| $$IEN^XUAF4 | PUT+24 |
| $$NS^XUAF4 | GET+19 |
| $$CANADD^XUESSO2 | ADD+5 |
| $$SECMATCH^XUESSO2 | FIND+2 |
| SETREMAP^XUESSO2 | ADD+17 |
| USER^XUIAMXML | MPISECID+4 |
| $$PROD^XUPROD | SSNCHECK+6 |
| DUZ^XUS1A | SET+6 |
| $$ACTIVE^XUSER | GET+14, FIND+16 |
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^TMP("DIERR" | PUT+10!, ADD+16, UPDT+11 |
| ^VA(200 - [#200] | GET+9, GET+12, GET+22, GET+31, GET+32, PH+3, PUT+28, PUT+29, FIND+3, FIND+5 , FIND+9, FIND+12, FIND+13, FIND+16, FIND+18, FIND+20, FIND+25, FIND+27, FIND+33, FIND+35 , FIND+36, FIND+41, FIND+43, ADD+20, ADDS+4, ADDI+5, ADDI+6, ADDI+7, ADDI+8, ADDN+3 , ADDN+4, ADDA+3, ADDW+3, UPDT+5 |
| ^XTV(8989.3 - [#8989.3] | ADDI+6, ADDI+7 |
| ^XWB(8994.5 - [#8994.5] | ADD+6 |
| Name | Line Occurrences |
|---|---|
| $$BULL | ADD+19 |
| $$MPISECID | FIND+51 |
| $$PH | GET+28 |
| $$SET | PUT+30 |
| $$SPECIAL | GET+23, FIND+9, FIND+24, ADDS+3 |
| $$SSNCHECK | GET+26, FIND+9, ADDS+5 |
| $$TALL | PUT+29 |
| ADDA | ADD+12 |
| ADDI | FIND+19, FIND+27, FIND+42, ADD+13 |
| ADDN | FIND+16 |
| ADDS | FIND+40, ADD+12 |
| ADDU | ADD+10 |
| ADDW | FIND+4, FIND+19, FIND+27, FIND+42, ADD+13 |
| FIND | FIND+51 |
| UPDT | FIND+4, FIND+19, FIND+27, FIND+42, ADD+14 |
| VISM | FIND+3, FIND+18, FIND+41, ADD+14 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| % | GET+6~, GET+11*, GET+12*, GET+13*, PH+1~, PH+2*, PH+5*, PH+6*, PH+7*, PH+8* , PH+9*, PH+10*, PH+11* |
| DA | ADDU+2~, UPDT+12~, UPDT+13* |
| DATIN | PUT~, PUT+12, PUT+13, PUT+14, PUT+15 |
| DD | ADDU+2~ |
| DIC | ADDU+2~, ADDU+4* |
| DIC(0 | ADD+8*, ADDU+4* |
| DIK | UPDT+12~, UPDT+13* |
| DO | ADDU+2~ |
| DT | GET+13, PUT+9*, FIND+49 |
| DUZ | GET+7, GET+9, GET+12, GET+14, GET+22, GET+29, GET+31, GET+32, PH+3, PUT+29 , SET+5* |
| DUZ("AUTHENTICATION" | PUT+8* |
| DUZ("LOA" | PUT+6* |
| DUZ("REMAPP" | FIND+49, ADD+4, ADD+5, ADD+17 |
| DUZ("VISITOR" | SET+5* |
| DUZ(0 | TALL+5*, FIND+5*, FIND+20*, FIND+27*, FIND+43*, ADD+20* |
| DUZ(2 | GET+8, GET+19 |
| FDQ | UPDT+3~ |
| >> FDR( | ADDA+5*, VISM+4*, VISM+5*, VISM+6*, VISM+7*, UPDT+4, UPDT+6*, UPDT+7*, UPDT+8* |
| >> FDR(200 | ADDS+7*, ADDI+5*, ADDI+6*, ADDI+7*, ADDI+8*, ADDN+6*, ADDW+6* |
| FLAG | TALL+4~, TALL+5*, FIND+5*, FIND+7, FIND+20*, FIND+22, FIND+27*, FIND+29, FIND+43*, FIND+45 , ADD+19* |
| IEN | ADDS+2~, ADDS+6*, ADDS+7, ADDI+2~, ADDI+4*, ADDI+5, ADDI+6, ADDI+7, ADDI+8, ADDN+2~ , ADDN+5*, ADDN+6, ADDA+2~, ADDA+4*, ADDA+5, ADDW+2~, ADDW+5*, ADDW+6, VISM+2~, VISM+3* , VISM+4, VISM+5, VISM+6, VISM+7, UPDT+3~, UPDT+4*, UPDT+5*, UPDT+6, UPDT+7, UPDT+8 , UPDT+10! |
| INDUZ | GET~ |
| N | GET+6~, GET+9*, GET+10, GET+11, GET+13, GET+16 |
| NAME | GET+6~, GET+16*, GET+17, GET+29, PUT+5~, PUT+12*, PUT+17, FIND+16, FIND+32*, FIND+33 , FIND+35, ADD+19, ADDU+4, ADDN+3, ADDN+6, BULL~, BULL+4, BULL+8 |
| NETNAME | MPISECID~, MPISECID+3 |
| NETWORK | GET+6~, PUT+5~, PUT+15*, FIND+51, ADDW+4, ADDW+6 |
| NEWDUZ | PUT+5~, PUT+9*, PUT+30, FIND+2*, FIND+3, FIND+5, FIND+11*, FIND+12, FIND+14*, FIND+17 , FIND+18, FIND+20, FIND+25*, FIND+26, FIND+27, FIND+34*, FIND+35, FIND+38*, FIND+39, FIND+41 , FIND+43, ADD+11, ADD+15, ADD+17, ADD+19, ADD+20, SET~, SET+3, SET+5, ADDU+3* , ADDU+6*, ADDS+6, ADDI+4, ADDI+5, ADDI+6, ADDI+7, ADDI+8, ADDN+3, ADDN+4, ADDN+5 , ADDA+3, ADDA+4, ADDW+3, ADDW+5, VISM+3, UPDT+5, UPDT+13, UPDT+14*, BULL~, BULL+4 , BULL+8 |
| NEWREC | TALL+4~, ADDU+4*, UPDT+13 |
| PHONE | GET+6~, GET+28*, GET+30, PUT+5~, PUT+13*, ADD+19, UPDT+7, BULL~, BULL+5, BULL+9 |
| RAIEN | ADD+3~, ADD+4*, ADD+5, ADD+6 |
| RETRY | TALL+4~, TALL+8*, FIND+51* |
| RMTDUZ | PUT+5~, PUT+13*, PUT+22, FIND+16, FIND+25, ADD+19, SET+5, ADDN+4, VISM+6, BULL~ , BULL+5, BULL+9 |
| SECID | PUT+5~, PUT+14*, FIND+1, FIND+2, FIND+51*, ADDI+3, ADDI+5, ADDI+8 |
| SITE | GET+6~, GET+19*, GET+20, GET+23, GET+29, PUT+5~, PUT+12*, PUT+19, PUT+21, ADD+19 , VISM+5, UPDT+8, BULL~, BULL+4, BULL+8 |
| SITENUM | PUT+5~, PUT+13*, PUT+19, PUT+20, PUT+24, FIND+3, FIND+9, FIND+16, FIND+18, FIND+24 , FIND+25, FIND+41, ADD+19, SET+5, ADDS+3, ADDN+4, VISM+4, UPDT+5, BULL~, BULL+4 , BULL+9 |
| SN | SPECIAL~, SPECIAL+2 |
| SSN | GET+6~, GET+22*, GET+23*, GET+24, GET+25, GET+26, GET+29, PUT+5~, PUT+12*, PUT+18 , FIND+9, FIND+12, FIND+37, ADDS+4, ADDS+5, ADDS+7, SSNCHECK~, SSNCHECK+7 |
| TODAY | PUT+5~, PUT+9*, ADD+19, VISM+7, UPDT+6, BULL~, BULL+5, BULL+7 |
| U | GET+11, GET+12, GET+13, GET+14, GET+16, GET+20, GET+22, GET+29, GET+30, GET+31 , GET+32, PH+5, PH+6, PH+7, PH+8, PH+9, PH+10, PH+11, PUT+9*, PUT+12 , PUT+13, PUT+14, PUT+15, PUT+20, PUT+21, FIND+5, FIND+13, FIND+20, FIND+27, FIND+36 , FIND+43, ADD+4, ADD+6, ADD+20, SET+5*, ADDI+5, ADDI+6, ADDI+7, ADDI+8, ADDN+3 |
| X | GET+6~, GET+29*, GET+30*, GET+31*, GET+32*, GET+34, PH+1~, PH+3*, PH+4, PH+5 , PH+6, PH+7, PH+8, PH+9, PH+10, PH+11, ADDU+2~, ADDU+4*, SSNCHECK+5~, SSNCHECK+7* , SSNCHECK+8, SSNCHECK+9, SSNCHECK+10, SSNCHECK+11, SSNCHECK+12, SSNCHECK+13, SSNCHECK+14, SSNCHECK+15 |
| XMB | BULL+3~, BULL+6* |
| XMB(1 | BULL+7* |
| XMB(2 | BULL+8* |
| XMB(3 | BULL+8* |
| XMB(4 | BULL+8* |
| XMB(5 | BULL+9* |
| XMB(6 | BULL+9* |
| XMB(7 | BULL+9* |
| XMPI | MPISECID+2~, MPISECID+4 |
| XMPI("samacctnm" | MPISECID+3* |
| XOPT | SET+4~ |
| XOUT | MPISECID+2~, MPISECID+4 |
| XOUT("secId" | MPISECID+5 |
| XSITEIEN | PUT+5~, PUT+24* |
| XT | PUT+5~, PUT+20, PUT+21, PUT+29*, PUT+30 |
| >> XTMUNIT | BULL+10 |
| XUDUZ | TALL~ |
| XUEAUSER | FIND+10~ |
| XUEIEN | FIND+10~, FIND+11*, FIND+12*, FIND+13, FIND+14, FIND+16, FIND+31~, FIND+34*, FIND+35*, FIND+36 , FIND+38 |
| XUENAME | FIND+13~*, FIND+16 |
| XUESSN | FIND+31~, FIND+36*, FIND+37 |
| XUIAM | TALL+4~, TALL+6* |
| XUMF | PUT+5~, PUT+20* |
| XUSER | SET+4~ |
| >> XWBSEC | ADD+6* |
| Y | ADDU+2~, ADDU+6, UPDT+12~ |