Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Global Variables Directly Accessed |  Label References |  Local Variables  | All
Print Page as PDF
Routine: XUESSO1

Package: Kernel

Routine: XUESSO1


Information

XUESSO1 ;SEA/LUKE - Single Sign-on Utilities ; Apr 08, 2022@13:58

Source Information

Source file <XUESSO1.m>

Call Graph

Call Graph

Call Graph Total: 12

Package Total Call Graph
Kernel 8 ($$FMTE,$$HTFM)^XLFDT  $$UP^XLFSTR  ($$IEN,$$NS)^XUAF4  ($$SECMATCH,SETREMAP)^XUESSO2  USER^XUIAMXML  $$PROD^XUPROD  DUZ^XUS1A  $$ACTIVE^XUSER  
VA FileMan 3 FILE^DICN  (CHK,UPDATE)^DIE  ^DIK  
MailMan 1 ^XMB  

Caller Graph

Legends:

Legend of Colors

Package Component Superscript legend

action A extended action Ea event driver Ed subscriber Su protocol O limited protocol LP run routine RR broker B edit E server Se print P screenman SM inquire I

Caller Graph

Caller Graph Total: 7

Package Total Caller Graph
Kernel 3 XUESSO2  XUESSO3  XUSBSE1  
Registration 2 DGROHLS  DGROHLU  
Clinical Information Resource Network 1 RGTKPOC  
RPC Broker 1 XWB2HL7  

Entry Points

Name Comments DBIA/ICR reference
GET(INDUZ) ;Gather identifying data from user's home site.
  • ICR #4342
    • Status: Active
    • Usage: Controlled Subscription
    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
  • ICR #4342
    • Status: Active
    • Usage: Controlled Subscription
    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

    External References

    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
    $$SECMATCH^XUESSO2 FIND+2
    SETREMAP^XUESSO2 ADD+10
    USER^XUIAMXML MPISECID+4
    $$PROD^XUPROD SSNCHECK+6
    DUZ^XUS1A SET+6
    $$ACTIVE^XUSER GET+14, FIND+16

    Global Variables Directly Accessed

    Name Line Occurrences  (* Changed,  ! Killed)
    ^TMP("DIERR" PUT+10!, ADD+9, 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+13, 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

    Label References

    Name Line Occurrences
    $$BULL ADD+12
    $$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+5
    ADDI FIND+19, FIND+27, FIND+42, ADD+6
    ADDN FIND+16
    ADDS FIND+40, ADD+5
    ADDU ADD+3
    ADDW FIND+4, FIND+19, FIND+27, FIND+42, ADD+6
    FIND FIND+51
    UPDT FIND+4, FIND+19, FIND+27, FIND+42, ADD+7
    VISM FIND+3, FIND+18, FIND+41, ADD+7

    Local Variables

    Legend:

    >> 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+1*, 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+10
    DUZ("VISITOR" SET+5*
    DUZ(0 TALL+5*, FIND+5*, FIND+20*, FIND+27*, FIND+43*, ADD+13*
    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+12*
    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+12, 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+4, ADD+8, ADD+10, ADD+12, ADD+13, 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+12, UPDT+7, BULL~, BULL+5, BULL+9
    RETRY TALL+4~, TALL+8*, FIND+51*
    RMTDUZ PUT+5~, PUT+13*, PUT+22, FIND+16, FIND+25, ADD+12, 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+12
    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+12, 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+12, 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+13, 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~
    Y ADDU+2~, ADDU+6, UPDT+12~
    Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Global Variables Directly Accessed |  Label References |  Local Variables  | All