Resolver API calls

The GETHOSTBYADDR and GETHOSTBYNAME IPv4 Resolver API calls use the HOSTENT structure described in the calls in z/OS Communications Server: IP Sockets Application Programming Interface Guide and Reference. As shown in the following GETHOSTBYADDR Exit trace example, the HOSTENT address is shown on one line, and the contents of the HOSTENT structure are described on separate lines. There can be multiple aliases and host addresses; each one is listed separately. In this example, there are two aliases.
====================================================================000051CB   
 MVS026    SOCKAPI   60050066  19:02:01.426345   GETHOSTBYADDR Exit

HASID....0027     PASID....0027     SASID..0027     JOBNAME..EZASOKGH
TCB......006E6A68 TIE......00007DF8 PLIST..00007E0C DUCB.....0000000A KEY..0
ADSNAME..EZASOKGH SUBTASK..00000000 00000000        TOKEN....00000000 09902FB0
 HOSTENT..:                                                     Addr..00005F08
 HOSTNAME.:                                                     Addr..00005F30
 Loopback
 FAMILY...:  2                                                  Addr..00005F10
 ADDR LEN.:  4                                                  Addr..00005F14
 HOSTADDR.:  127.0.0.1                                          Addr..00005F54
 ALIAS....:  LOOPBACK                                           Addr..00005F3C
 ALIAS....:  LOCALHOST                                          Addr..00005F48
 RETCODE..:  0                                                  Addr..00007EB4
The GETADDRINFO for IPv4 or IPv6 Resolver API shows that the call is requesting the IP address for the host (node) name MVS150. No service name is provided. GETADDRINFO exit shows that the hostname was resolved to the IPv4 address 9.67.113.117. These fields are described in the Macro and CALL section in z/OS Communications Server: IP Sockets Application Programming Interface Guide and Reference.
====================================================================0000134C
  MVS150    SOCKAPI   6005006D  15:06:07.294268   GETADDRINFO Entry
 HASID....002D     PASID....002D     SASID..002D     JOBNAME..USER1X
 TCB......007F63B0 TIE......0A90AAD8 PLIST..0A90AAEC DUCB.....00000009 KEY..8
 ADSNAME.......... SUBTASK..EZASO6CS                 TOKEN....7F694220 0A97EFB0
  NODELEN..:  6                                                  Addr..0A973490
  NODE.....:                                                     Addr..0A973390
       MVS150
  SERVLEN..:  0                                                  Addr..0A9734B8
  SERVICE..:  (NO DATA)                                          Addr..0A973498
  HINTS....:  0A913F70x (ADDRINFO Address)                       Addr..0A913F90
  ADDRINFO Structure..:
   AF.......  0 (AF_UNSPEC)     FLAGS..... 00000002x
   SOCTYPE..  0 (UNKNOWN)       PROTO..... 0 (IPPROTO_IP)
   NAME.....  00000000x         NAMELEN... 0
   CANONNAME  00000000x         NEXT...... 00000000x
  CANNLEN..:  (NO DATA)                                          Addr..0A9734C0
  RES......:  (NO DATA)                                          Addr..0A913F94
 ====================================================================0000134D
  MVS150    SOCKAPI   6005006E  15:06:09.997756   GETADDRINFO Exit
 HASID....002D     PASID....002D     SASID..002D     JOBNAME..USER1X
 TCB......007F63B0 TIE......0A90AAD8 PLIST..0A90AAEC DUCB.....00000009 KEY..8
 ADSNAME.......... SUBTASK..EZASO6CS                 TOKEN....7F694220 0A97EFB0
  HINTS....:  0A913F70x (ADDRINFO Address)                       Addr..0A913F90
  ADDRINFO Structure..:
   AF.......  0 (AF_UNSPEC)     FLAGS..... 00000002x
   SOCTYPE..  0 (UNKNOWN)       PROTO..... 0 (IPPROTO_IP)
   NAME.....  0002111Cx         NAMELEN... 0
    PORT....  0                 IPADDR.... 0.0.0.0
    FAMILY..  0 (UNKNOWN)       RESERVED.. 0000000000000000x
   CANONNAME  00000000x         NEXT...... 00000000x
  CANNLEN..:  22                                                 Addr..0A9734C0
  RES......:  0002111Cx (ADDRINFO Address)                       Addr..0A913F94
  ADDRINFO Structure..:
   AF.......  2 (AF_INET)       FLAGS..... 00000000x
   SOCTYPE..  1 (STREAM)        PROTO..... 0 (IPPROTO_IP)
   NAME.....  0002114Cx         NAMELEN... 16
    PORT....  0                 IPADDR.... 9.67.113.117
    FAMILY..  2 (AF_INET)       RESERVED.. 0000000000000000x
   CANONNAME  0002101Cx         NEXT...... 00000000x
   MVS150.raleigh.ibm.com
The FREEADDRINFO for IPv4 or IPv6 Resolver API call displays the RES (ADDRINFO) structure that is freed. This field is in the Macro and CALL section in z/OS Communications Server: IP Sockets Application Programming Interface Guide and Reference.
====================================================================0000134E
  MVS150    SOCKAPI   6005006F  15:06:09.998002   FREEADDRINFO Entry
 HASID....002D     PASID....002D     SASID..002D     JOBNAME..USER1X
 TCB......007F63B0 TIE......0A90AAD8 PLIST..0A90AAEC DUCB.....00000009 KEY..8
 ADSNAME.......... SUBTASK..EZASO6CS                 TOKEN....7F694220 0A97EFB0
  ADDRINFO.:  0002111Cx (ADDRINFO Address)                       Addr..0A913F94
  ADDRINFO Structure..:
   AF.......  2 (AF_INET)       FLAGS..... 00000000x
   SOCTYPE..  1 (STREAM)        PROTO..... 0 (IPPROTO_IP)
   NAME.....  0002114Cx         NAMELEN... 16
    PORT....  0                 IPADDR.... 9.67.113.117
    FAMILY..  2 (AF_INET)       RESERVED.. 0000000000000000x
   CANONNAME  0002101Cx         NEXT...... 00000000x
   MVS150.raleigh.ibm.com
 ====================================================================0000134F
  MVS150    SOCKAPI   60050070  15:06:09.999021   FREEADDRINFO Exit
 HASID....002D     PASID....002D     SASID..002D     JOBNAME..USER1X
 TCB......007F63B0 TIE......0A90AAD8 PLIST..0A90AAEC DUCB.....00000009 KEY..8
 ADSNAME.......... SUBTASK..EZASO6CS                 TOKEN....7F694220 0A97EFB0
The GETNAMEINFO for IPv4 or IPv6 Resolver API shows that the call is requesting the name of the IPv6 address ::1 and the service name for port 1031. GETNAMEINFO Exit shows that the IP address was resolved to the name loop6int.resdns.ibm.com and no service name was found for port 1031 (hence the service name is the input port number). These fields are in the Macro and CALL section in z/OS Communications Server: IP Sockets Application Programming Interface Guide and Reference.
====================================================================0000135F
  MVS150    SOCKAPI   6005006B  15:06:45.481639   GETNAMEINFO Entry
 HASID....0025     PASID....0025     SASID..0025     JOBNAME..USER1Y
 TCB......007F62F8 TIE......0A903AD8 PLIST..0A903AEC DUCB.....00000008 KEY..8
 ADSNAME.......... SUBTASK..EZSO6CC                  TOKEN....7F6E2220 0A977FB0
  NAMELEN..:  28                                                 Addr..0A96C348
  NAME.....:                                                     Addr..0A96C500
    PORT... 1031          IPADDR.. ::1
    FAMILY. 19 (AF_INET6) LENGTH.. 0
    FLOWINFO. 00000000x   SCOPID.. 00000000x
  HOSTLEN..:  255                                                Addr..0A96C450
  HOST.....:  (NO DATA)                                          Addr..0A96C350
  SERVLEN..:  32                                                 Addr..0A96C478
  SERVICE..:  (NO DATA)                                          Addr..0A96C458
  FLAGS....:  00000004x                                          Addr..0A96C480
 ====================================================================00001360
  MVS150    SOCKAPI   6005006C  15:06:46.707053   GETNAMEINFO Exit
 HASID....0025     PASID....0025     SASID..0025     JOBNAME..USER1Y
 TCB......007F62F8 TIE......0A903AD8 PLIST..0A903AEC DUCB.....00000008 KEY..8
 ADSNAME.......... SUBTASK..EZSO6CC                  TOKEN....7F6E2220 0A977FB0
  HOSTLEN..:  23                                                 Addr..0A96C450
  HOST.....:                                                     Addr..0A96C350
       loop6int.resdns.ibm.com
  SERVLEN..:  4                                                  Addr..0A96C478
  SERVICE..:  1031                                               Addr..0A96C458
  FLAGS....:  00000004x                                          Addr..0A96C480