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 |  Interaction Calls |  Global Variables Directly Accessed |  Label References |  Local Variables  | All
Print Page as PDF
Routine: XLFNSLK

Package: Kernel

Routine: XLFNSLK


Information

XLFNSLK ;ISF/RWF,ISD/HGW - Calling a DNS server for name lookup ;12/08/15 12:44

Source Information

Source file <XLFNSLK.m>

Call Graph

Call Graph

Call Graph Total: 7

Package Total Call Graph
Kernel 7 HOME^%ZIS  (CALL,CLOSE)^%ZISTCP  (RMDEV,SAVDEV,USE)^%ZISUTL  $$VERSION^%ZOSV  ($$FORCEIP6,$$VERSION)^XLFIPV  $$RJ^XLFSTR  ($$BASE,$$CNV)^XLFUTL  

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: 14

Package Total Caller Graph
Health Level Seven 5 HLCSTCP3  HLMA  HLMA3  HLOTCP  ^HLCS(870  
Kernel 4 %ZISTCP  XUSBSE1  XUSC1C  XUSRB4  
MailMan 2 XMKPR1  XMKPRD  
Oncology 1 ONCX10  
RPC Broker 1 XWBTCPMT  
Toolkit 1 XTHC10  

Entry Points

Name Comments DBIA/ICR reference
TEST ;Test entry
HOST(IP) ;Get a host name from an IP address
ADDRESS(N,T) ;Get a IP address from a name
  • ICR #3056
    • Status: Active
    • Usage: Supported
    MAIL(RET,N) ;Get the MX address for a domain
  • ICR #3056
    • Status: Active
    • Usage: Supported
    NS(XL,NAME,QTYPE,XLFLOG) ;NAME LOOKUP
    NS2 ;
    EXIT
    BUILD(Y,T) ;BUILD A QUERY
    ; ID,PARAM,#of?, #ofA, #of Auth, #of add,
    READ ;
    RDERR ;End of read
    DECODE ;
    QD(NSP) ;Decode the Question section
    RR(NSP) ;
    NAME(I,NM,F) ;Decode a NAME section
    MX(IX) ;Hide IX changes
    BN(Z1,Z2) ;Convert two binary char 16 bit number into ASCII number
    WBN(Z1) ;Convert two byte string to a ASCII number
    H2(Z2) ;Convert 2 byte string to HEX
    H1(Z1) ;Convert decimal number <= 256 to two digit HEX number
    H(Z1)
    BIN16(S) ;Convert two byte string to 16 bit binary
    PART(S,L) ;
    TYPECODE(T) ;
    CLASS(T) ;
    GETDNS(I) ;Get the address of our DNS
    SW(T,H,V) ;
    SAVEDEV ;Save calling device
    RESDEV ;Restore calling device
    LOG(M,XLFLOG) ;Log Debug messages

    External References

    Name Field # of Occurrence
    HOME^%ZIS SAVEDEV+1
    CALL^%ZISTCP NS2+3
    CLOSE^%ZISTCP RDERR+1
    RMDEV^%ZISUTL RESDEV+1
    SAVDEV^%ZISUTL SAVEDEV+1
    USE^%ZISUTL RESDEV+1
    $$VERSION^%ZOSV HOST+3, ADDRESS+5
    $$FORCEIP6^XLFIPV ADDRESS+8
    $$VERSION^XLFIPV ADDRESS+3
    $$RJ^XLFSTR H1+2
    $$BASE^XLFUTL H
    $$CNV^XLFUTL H1+1

    Interaction Calls

    Name Line Occurrences
    Function Call: READ
    • Formatting: !
    • Prompt: "Enter an IP address to lookup: www.domain.ext//"
    • Variable: XNAME
    • Timeout: DTIME
    • Line Location: TEST+2
    Function Call: WRITE
    • Prompt: !!,"Looking up IPv4 address: ",XNAME
    • Line Location: TEST+3
    Function Call: WRITE
    • Prompt: !,?5,XNAME,". > ",$$ADDRESS(XNAME,"A")
    • Line Location: TEST+4
    Function Call: WRITE
    • Prompt: !!,"Looking up IPv6 address: ",XNAME
    • Line Location: TEST+5
    Function Call: WRITE
    • Prompt: !,?5,XNAME,". > ",$$ADDRESS(XNAME,"AAAA")
    • Line Location: TEST+6
    Function Call: WRITE
    • Prompt: !
    • Line Location: TEST+7
    Function Call: WRITE
    • Prompt: $C(%\256,%#256)_MSG,!
    • Line Location: BUILD+10
    Function Call: READ
    • Variable: L1#2
    • Timeout: 20
    • Line Location: READ+3
    Function Call: READ
    • Variable: L2#2
    • Timeout: 20
    • Line Location: READ+5
    Function Call: READ
    • Variable: *X
    • Timeout: 20
    • Line Location: READ+8
    Function Call: WRITE
    • Prompt: ?T,$J(H,8),V
    • Line Location: SW+1
    Routine Call
    • %ZIS
    • Line Location:
      • SAVEDEV+1

    Global Variables Directly Accessed

    Name Line Occurrences  (* Changed,  ! Killed)
    ^XTV(8989.3 - [#8989.3] GETDNS+1

    Label References

    Name Line Occurrences
    $$ADDRESS TEST+4, TEST+6
    $$BIN16 READ+5
    $$BN QD+4, QD+5, RR+4, RR+5, RR+8, MX+2
    $$GETDNS NS2+1
    $$H H2+2
    $$H1 RR+12, RR+13, RR+14, RR+15
    $$NAME QD+3, RR+3, NAME+4, MX+5
    $$PART NAME+5
    $$TYPECODE BUILD+8
    $$WBN READ+5
    BUILD NS2+5
    DECODE NS2+7
    EXIT NS2+1
    LOG NS2+2, NS2+4, NS2+5, NS2+8, BUILD+9, READ+3, READ+6, READ+7, DECODE+3
    MX RR+17
    NS ADDRESS+11, MAIL+3
    NS2 NS2+3
    QD DECODE+8
    RDERR READ+3, READ+6
    READ NS2+7
    RESDEV NS2+8, EXIT
    RR DECODE+9
    SAVEDEV NS+4

    Local Variables

    Legend:

    >> Not killed explicitly
    * Changed
    ! Killed
    ~ Newed

    Name Field # of Occurrence
    % BUILD+2~, BUILD+5*, BUILD+10*
    A PART+2~*
    B H2+1~*, H2+2
    CNT NS+3~*, NS2+1, NS2+3*
    DNS NS+3~, NS2+1*, NS2+2, NS2+3
    DTIME TEST+2
    F NAME~, NAME+2, NAME+3, NAME+4, NAME+5
    H SW~, SW+1
    I ADDRESS+2~, ADDRESS+12*, MAIL+2~, MAIL+4*, MAIL+5, BUILD+2~, BUILD+5*, READ+5*, READ+8*, DECODE+2~
    , NAME~, NAME+3, NAME+4, NAME+5*, GETDNS~, GETDNS+2
    IO BUILD+10, READ+3, READ+8
    IO("CLOSE" RESDEV+2!
    >> IO(0 SAVEDEV+1
    IP HOST~, HOST+4
    IX DECODE+2~, DECODE+7*, QD+3*, QD+4*, QD+5*, RR+3*, RR+4*, RR+5*, RR+6, RR+7*
    , RR+8*, RR+10, RR+12, RR+13, RR+14, RR+15, RR+17, RR+18*, MX~, MX+2
    , MX+4*, MX+5*
    K BIN16+1~, BIN16+2*
    L PART~, PART+2, GETDNS+1~*, GETDNS+2
    L1 READ+2~, READ+3*, READ+4
    L2 READ+2~, READ+5*
    M LOG~, LOG+2
    MSG BUILD+2~, BUILD+8*, BUILD+9, BUILD+10
    N ADDRESS~, ADDRESS+7, ADDRESS+9, ADDRESS+11, MAIL~, MAIL+3, MAIL+5*
    NA RR+2~, RR+3*, RR+10, RR+16
    NAME NS~, NS2+5
    NM NAME~, NAME+2*, NAME+4, NAME+5*
    NN DECODE+2~, DECODE+9*
    NN2 DECODE+2~, DECODE+8*, DECODE+9*
    NSP QD~, QD+3, QD+4, QD+5, RR~, RR+3, RR+4, RR+5, RR+7, RR+8
    , RR+9, RR+10, RR+11, RR+12, RR+13, RR+14, RR+15, RR+16, RR+17, RR+18
    , MX+4, MX+5
    P NAME+2~
    POP NS+3~, NS2+3
    QTYPE NS~, NS2+5
    R PART+2~*, PART+3
    RET MAIL~, MAIL+4*, MAIL+5*
    RET( MAIL+5*
    RI NS+3~, READ+2!*, READ+4*, READ+7, READ+8, DECODE+2
    RI( READ+8*, QD+4, QD+5, RR+4, RR+5, RR+6, RR+8, RR+10, RR+12, RR+13
    , RR+14, RR+15, NAME+3, NAME+4, MX+2, PART+2
    S BIN16~, BIN16+1*, BIN16+2, PART~, PART+2
    T ADDRESS~, ADDRESS+3*, ADDRESS+4*, ADDRESS+5, ADDRESS+6, ADDRESS+9, ADDRESS+11, MAIL+2~*, MAIL+3, BUILD~
    , BUILD+8, NAME+2~*, NAME+3*, NAME+4*, NAME+5*, NAME+6, TYPECODE~, TYPECODE+2, TYPECODE+3, CLASS~
    , CLASS+1, SW~, SW+1
    V SW~, SW+1
    X HOST+2~, HOST+4*, HOST+5, ADDRESS+2~, ADDRESS+7*, ADDRESS+8, BUILD+2~, BUILD+3*, BUILD+5*, BUILD+6*
    , BUILD+8, READ+2~, READ+8*, DECODE+2~, RR+8*, NAME+2~, NAME+3*, NAME+4*, NAME+5
    XL NS~
    XL( READ+5*, DECODE+9, QD+3*, QD+4*, QD+5*, RR+3*, RR+4*, RR+5*, RR+7*, RR+8*
    , RR+9, RR+10*, RR+11, RR+12*, RR+13*, RR+14*, RR+15*, RR+16, RR+17, RR+18
    , MX+4*, MX+5*
    XL("AA" DECODE+5*
    XL("ANCOUNT" NS+3*
    XL("B" RR+10*, RR+16*
    XL("CODE" DECODE+5
    XL("ERR" DECODE+3*
    XL("ID" DECODE+3
    XL("Opcode" DECODE+5*
    XL("P" MX+3, MX+5*
    XL("QD1NAME" NS2+8
    XL("QDCOUNT" DECODE+8
    XL("QR" DECODE+5*
    XL("RA" DECODE+5*
    XL("RCODE" DECODE+5*
    XL("RD" DECODE+5*
    XL("TC" DECODE+5*
    XLF ADDRESS+2~*, ADDRESS+11, MAIL+2~*, MAIL+3
    XLF("AN" ADDRESS+12
    XLF("ANCOUNT" ADDRESS+12
    XLF("B" MAIL+5
    XLF("P" MAIL+4, MAIL+5
    XLFLOG NS~, NS+3~, LOG~, LOG+2*
    XLFLOG( LOG+2*
    XNAME TEST+1~, TEST+2*, TEST+3, TEST+4, TEST+5, TEST+6
    Y HOST+2~, HOST+3, HOST+5*, ADDRESS+2~*, ADDRESS+5, ADDRESS+8*, ADDRESS+9*, ADDRESS+12*, ADDRESS+13, MAIL+2~
    , BUILD~, BUILD+4*, BUILD+5, DECODE+2~, QD+2~, QD+3*, RR+2~, RR+3*, RR+6*, RR+7
    , NAME+2~, MX+2~*, MX+3*, MX+4, MX+5*, H1+1~*, H1+2, BIN16+1~*, BIN16+2*, BIN16+3
    Z DECODE+2~, DECODE+5*
    Z1 BN~, BN+1, WBN~, WBN+1, H1~, H1+1, H~
    Z2 BN~, BN+1, H2~, H2+1
    Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Interaction Calls |  Global Variables Directly Accessed |  Label References |  Local Variables  | All