The EZACOBOL common storage area contains the variables
that are used in the COBOL programs in this section.
*****************************************************************
* *
* MODULE NAME: EZACOBOL - COBOL COMMON VARIABLES *
* *
* Copyright: Licensed Materials - Property of IBM *
* *
* "Restricted Materials of IBM" *
* *
* 5694-A01 *
* *
* Copyright IBM Corp. 2007, 2010 *
* *
* US Government Users Restricted Rights - *
* Use, duplication or disclosure restricted by *
* GSA ADP Schedule Contract with IBM Corp. *
* *
* Status: CSV1R12 *
* *
*****************************************************************
*****************************************************************
* *
* COBOL COMMON VARIABLES *
* *
*****************************************************************
*
* Socket option values.
*
01 IP-ADD-MEMBERSHIP PIC X(4) VALUE X'00100005'.
01 IP-ADD-SOURCE-MEMBERSHIP PIC X(4) VALUE X'0010000C'.
01 IP-BLOCK-SOURCE PIC X(4) VALUE X'0010000A'.
01 IP-DROP-MEMBERSHIP PIC X(4) VALUE X'00100006'.
01 IP-DROP-SOURCE-MEMBERSHIP PIC X(4) VALUE X'0010000D'.
01 IP-MULTICAST-IF PIC X(4) VALUE X'00100007'.
01 IP-MULTICAST-LOOP PIC X(4) VALUE X'00100004'.
01 IP-MULTICAST-TTL PIC X(4) VALUE X'00100003'.
01 IP-UNBLOCK-SOURCE PIC X(4) VALUE X'0010000B'.
01 IPV6-ADDR-PREFERENCES PIC X(4) VALUE X'00010020'.
01 IPV6-JOIN-GROUP PIC X(4) VALUE X'00010005'.
01 IPV6-LEAVE-GROUP PIC X(4) VALUE X'00010006'.
01 IPV6-MULTICAST-HOPS PIC X(4) VALUE X'00010009'.
01 IPV6-MULTICAST-IF PIC X(4) VALUE X'00010007'.
01 IPV6-MULTICAST-LOOP PIC X(4) VALUE X'00010004'.
01 IPV6-UNICAST-HOPS PIC X(4) VALUE X'00010003'.
01 IPV6-V6ONLY PIC X(4) VALUE X'0001000A'.
01 MCAST-BLOCK-SOURCE PIC X(4) VALUE X'0010002C'.
01 MCAST-JOIN-GROUP PIC X(4) VALUE X'00100028'.
01 MCAST-JOIN-SOURCE-GROUP PIC X(4) VALUE X'0010002A'.
01 MCAST-LEAVE-GROUP PIC X(4) VALUE X'00100029'.
01 MCAST-LEAVE-SOURCE-GROUP PIC X(4) VALUE X'0010002B'.
01 MCAST-UNBLOCK-SOURCE PIC X(4) VALUE X'0010002D'.
01 SO-RCVTIMEO PIC X(4) VALUE X'00001006'.
01 SO-SNDTIMEO PIC X(4) VALUE X'00001005'.
*
* IOCTL Commands
*
01 SIOCGIFMTU PIC X(4) VALUE X'C020A726'.
01 SIOCGIPMSFILTER PIC X(4) VALUE X'C000A724'.
01 SIOCSIPMSFILTER PIC X(4) VALUE X'8000A725'.
01 SIOCGMSFILTER PIC X(4) VALUE X'C000F610'.
01 SIOCSMSFILTER PIC X(4) VALUE X'8000F611'.
01 SIOCSAPPLDATA PIC X(4) VALUE X'8018D90C'.
*
* Structure allows applications to allocate space for
* either form of inet socket address
*
01 SOCKADDR-STORAGE.
05 SS-LEN PIC X(1).
05 SS-FAMILY PIC X(1).
05 SS-DATA PIC X(126).
*
* IP-MREQ for IP_ADD_MEMBERSHIP and IP_DROP_MEMBERSHIP
*
01 IP-MREQ.
05 IMR-MULTIADDR PIC 9(8) BINARY.
05 IMR-INTERFACE PIC 9(8) BINARY.
*
* IP-MREQ-SOURCE for
* IP_ADD_SOURCE_MEMBERSHIP
* IP_DROP_SOURCE_MEMBERSHIP
* IP_BLOCK_SOURCE
* IP_UNBLOCK_SOURCE
*
01 IP-MREQ-SOURCE.
05 IMR-MULTIADDR PIC 9(8) BINARY.
05 IMR-SOURCEADDR PIC 9(8) BINARY.
05 IMR-INTERFACE PIC 9(8) BINARY.
*
* IPV6-MREQ for IPV6_JOIN_GROUP and IPV6_LEAVE_GROUP
*
01 IPV6-MREQ.
05 IPV6MR-MULTIADDR.
10 FILLER PIC 9(16) BINARY.
10 FILLER PIC 9(16) BINARY.
05 IPV6MR-INTERFACE PIC 9(8) BINARY.
*
* GROUP-REQ for
* MCAST_JOIN_GROUP
* MCAST_LEAVE_GROUP
*
01 GROUP-REQ.
05 GR-INTERFACE PIC 9(8) BINARY.
05 FILLER PIC X(4).
05 GR-GROUP PIC X(128).
05 GR-GROUP-R REDEFINES GR-GROUP.
10 GR-GROUP-SOCK-LEN PIC X(1).
10 GR-GROUP-SOCK-FAMILY PIC X(1).
10 GR-GROUP-SOCK-DATA PIC X(26).
10 GR-GROUP-SOCK-SIN REDEFINES GR-GROUP-SOCK-DATA.
15 GR-GROUP-SOCK-SIN-PORT PIC 9(4) BINARY.
15 GR-GROUP-SOCK-SIN-ADDR PIC 9(8) BINARY.
15 FILLER PIC X(8).
15 FILLER PIC X(12).
10 GR-GROUP-SOCK-SIN6 REDEFINES GR-GROUP-SOCK-DATA.
15 GR-GROUP-SOCK-SIN6-PORT PIC 9(4) BINARY.
15 GR-GROUP-SOCK-SIN6-FLOWINFO PIC 9(8) BINARY.
15 GR-GROUP-SOCK-SIN6-ADDR.
20 FILLER PIC 9(16) BINARY.
20 FILLER PIC 9(16) BINARY.
15 GR-GROUP-SOCK-SIN6-SCOPEID PIC 9(8) BINARY.
10 FILLER PIC X(100).
*
* GROUP-SOURCE-REQ for
* MCAST_BLOCK_SOURCE
* MCAST_UNBLOCK_SOURCE
* MCAST_JOIN_SOURCE_GROUP
* MCAST_LEAVE_SOURCE_GROUP
*
01 GROUP-SOURCE-REQ.
05 GSR-INTERFACE PIC 9(8) BINARY.
05 FILLER PIC X(4).
05 GSR-GROUP PIC X(128).
05 GSR-GROUP-R REDEFINES GSR-GROUP.
10 GSR-GROUP-SOCK-LEN PIC X(1).
10 GSR-GROUP-SOCK-FAMILY PIC X(1).
10 GSR-GROUP-SOCK-DATA PIC X(26).
10 GSR-GROUP-SOCK-SIN REDEFINES GSR-GROUP-SOCK-DATA.
15 GSR-GROUP-SOCK-SIN-PORT PIC 9(4) BINARY.
15 GSR-GROUP-SOCK-SIN-ADDR PIC 9(8) BINARY.
15 FILLER PIC X(8).
15 FILLER PIC X(12).
10 GSR-GROUP-SOCK-SIN6 REDEFINES GSR-GROUP-SOCK-DATA.
15 GSR-GROUP-SOCK-SIN6-PORT PIC 9(4) BINARY.
15 GSR-GROUP-SOCK-SIN6-FLOWINFO PIC 9(8) BINARY.
15 GSR-GROUP-SOCK-SIN6-ADDR.
20 FILLER PIC 9(16) BINARY.
20 FILLER PIC 9(16) BINARY.
15 GSR-GROUP-SOCK-SIN6-SCOPEID PIC 9(8) BINARY.
10 FILLER PIC X(100).
05 GSR-SOURCE PIC X(128).
05 GSR-SOURCE-R REDEFINES GSR-SOURCE.
10 GSR-SOURCE-SOCK-LEN PIC X(1).
10 GSR-SOURCE-SOCK-FAMILY PIC X(1).
10 GSR-SOURCE-SOCK-DATA PIC X(26).
10 GSR-SOURCE-SOCK-SIN REDEFINES GSR-SOURCE-SOCK-DATA.
15 GSR-SOURCE-SOCK-SIN-PORT PIC 9(4) BINARY.
15 GSR-SOURCE-SOCK-SIN-ADDR PIC 9(8) BINARY.
15 FILLER PIC X(8).
15 FILLER PIC X(12).
10 GSR-SOURCE-SOCK-SIN6 REDEFINES GSR-SOURCE-SOCK-DATA.
15 GSR-SOURCE-SOCK-SIN6-PORT PIC 9(4) BINARY.
15 GSR-SOURCE-SOCK-SIN6-FLOWINFO PIC 9(8) BINARY.
15 GSR-SOURCE-SOCK-SIN6-ADDR.
20 FILLER PIC 9(16) BINARY.
20 FILLER PIC 9(16) BINARY.
15 GSR-SOURCE-SOCK-SIN6-SCOPEID PIC 9(8) BINARY.
10 FILLER PIC X(100).
*
* MULTICAST CONSTANTS
*
77 MCAST-INCLUDE PIC 9(8) BINARY VALUE 0.
77 MCAST-EXCLUDE PIC 9(8) BINARY VALUE 1.
77 MCAST-NUMSRC-MAX PIC 9(8) BINARY VALUE 64.
*
* IP-MSFILTER
*
01 IP-MSFILTER.
02 IMSF-HEADER.
03 IMSF-MULTIADDR PIC 9(8) BINARY.
03 IMSF-INTERFACE PIC 9(8) BINARY.
03 IMSF-FMODE PIC 9(8) BINARY.
88 IMSF-FMODE-INCLUDE VALUE 0.
88 IMSF-FMODE-EXCLUDE VALUE 1.
03 IMSF-NUMSRC PIC 9(8) BINARY.
02 IMSF-SLIST.
03 IMSF-SRCENTRY OCCURS 1 TO 64 TIMES
DEPENDING ON IMSF-NUMSRC.
05 IMSF-SRCADDR PIC 9(8) BINARY.
*
* GROUP-FILTER
*
01 GROUP-FILTER.
02 GF-HEADER.
03 GF-INTERFACE PIC 9(8) BINARY.
03 FILLER PIC X(4).
03 GF-GROUP PIC X(128).
03 GF-GROUP-R REDEFINES GF-GROUP.
05 GF-GROUP-SOCK-LEN PIC X(1).
05 GF-GROUP-SOCK-FAMILY PIC X(1).
05 GF-GROUP-SOCK-DATA PIC X(26).
05 GF-GROUP-SOCK-SIN REDEFINES GF-GROUP-SOCK-DATA.
10 GF-GROUP-SOCK-SIN-PORT PIC 9(4) BINARY.
10 GF-GROUP-SOCK-SIN-ADDR PIC 9(8) BINARY.
10 FILLER PIC X(8).
10 FILLER PIC X(12).
05 GF-GROUP-SOCK-SIN6 REDEFINES GF-GROUP-SOCK-DATA.
10 GF-GROUP-SOCK-SIN6-PORT PIC 9(4) BINARY.
10 GF-GROUP-SOCK-SIN6-FLOWINFO PIC 9(8) BINARY.
10 GF-GROUP-SOCK-SIN6-ADDR.
15 FILLER PIC 9(16) BINARY.
15 FILLER PIC 9(16) BINARY.
10 GF-GROUP-SOCK-SIN6-SCOPEID PIC 9(8) BINARY.
05 FILLER PIC X(100).
03 GF-FMODE PIC 9(8) BINARY.
88 GF-FMODE-INCLUDE VALUE 0.
88 GF-FMODE-EXCLUDE VALUE 1.
03 GF-NUMSRC PIC 9(8) BINARY.
02 GF-SLIST.
03 GF-SRCENTRY OCCURS 1 TO 64 TIMES
DEPENDING ON GF-NUMSRC.
05 GF-SRCADDR PIC X(128).
05 GF-SRCADDR-R REDEFINES GF-SRCADDR.
10 GF-SLIST-SOCK-LEN PIC X(1).
10 GF-SLIST-SOCK-FAMILY PIC X(1).
10 GF-SLIST-SOCK-DATA PIC X(26).
10 GF-SLIST-SOCK-SIN REDEFINES GF-SLIST-SOCK-DATA.
15 GF-SLIST-SOCK-SIN-PORT PIC 9(4) BINARY.
15 GF-SLIST-SOCK-SIN-ADDR PIC 9(8) BINARY.
15 FILLER PIC X(8).
15 FILLER PIC X(12).
10 GF-SLIST-SOCK-SIN6 REDEFINES GF-SLIST-SOCK-DATA.
15 GF-SLIST-SOCK-SIN6-PORT PIC 9(4) BINARY.
15 GF-SLIST-SOCK-SIN6-FLOWINFO PIC 9(8) BINARY.
15 GF-SLIST-SOCK-SIN6-ADDR.
20 FILLER PIC 9(16) BINARY.
20 FILLER PIC 9(16) BINARY.
15 GF-SLIST-SOCK-SIN6-SCOPEID PIC 9(8) BINARY.
10 FILLER PIC X(100).
*
* Structure for setting APPLDATA when using the SIOCSAPPLDATA
* ioctl.
*
77 SETADEYE1 PIC X(8) VALUE 'SETAPPLD'.
77 SETADVER PIC 9(4) BINARY VALUE 1.
01 SETAPPLDATA.
02 SETAD-EYE1 PIC X(8).
02 SETAD-VER PIC 9(4) BINARY.
02 SETAD-LEN PIC 9(4) BINARY.
02 FILLER PIC X(4).
02 SETAD-PTR64 PIC 9(16) BINARY.
02 SETAD-PTR31 REDEFINES SETAD-PTR64.
03 SETAD-PTRHW PIC 9(8) BINARY.
03 SETAD-PTR USAGE IS POINTER.
*
* Structure for containing the actual application data being set
* by the SIOCSAPPLDATA ioctl.
*
77 SETADEYE2 PIC X(8) VALUE 'APPLDATA'.
01 SETADCONTAINER.
02 SETAD-EYE2 PIC X(8).
02 SETAD-BUFFER PIC X(40).
*
* TIMEVAL for SO_RCVTIMEO and SO_SNDTIMEO
*
01 TIMEVAL.
02 TV-SEC PIC 9(8) BINARY.
02 TV-USEC PIC 9(8) BINARY.
*
* IFREQ structure for SIOCGIFxxxx ioctls.
*
01 IFREQ.
05 IFR-NAME PIC X(16).
05 IFR-IFR PIC X(16).
05 IFR-ADDR REDEFINES IFR-IFR.
10 IFR-ADDR-LEN PIC X(1).
10 IFR-ADDR-FAMILY PIC X(1).
10 IFR-ADDR-PORT PIC 9(4) BINARY.
10 IFR-ADDR-ADDR PIC 9(8) BINARY.
10 FILLER PIC X(8).
05 IFR-DSTADDR REDEFINES IFR-IFR.
10 IFR-DSTADDR-LEN PIC X(1).
10 IFR-DSTADDR-FAMILY PIC X(1).
10 IFR-DSTADDR-PORT PIC 9(4) BINARY.
10 IFR-DSTADDR-ADDR PIC 9(8) BINARY.
10 FILLER PIC X(8).
05 IFR-BROADADDR REDEFINES IFR-IFR.
10 IFR-BROADADDR-LEN PIC X(1).
10 IFR-BROADADDR-FAMILY PIC X(1).
10 IFR-BROADADDR-PORT PIC 9(4) BINARY.
10 IFR-BROADADDR-ADDR PIC 9(8) BINARY.
10 FILLER PIC X(8).
05 IFR-FLAGS-R REDEFINES IFR-IFR.
10 IFR-FLAGS PIC X(2).
10 FILLER PIC X(14).
05 IFR-METRIC-R REDEFINES IFR-IFR.
10 IFR-METRIC PIC 9(8) BINARY.
10 FILLER PIC X(12).
05 IFR-DATA-R REDEFINES IFR-IFR.
10 IFR-DATA PIC 9(8) BINARY.
10 FILLER PIC X(12).
05 IFR-MTU-R REDEFINES IFR-IFR.
10 IFR-MTU PIC 9(8) BINARY.
10 FILLER PIC X(12).
*
* Constants for use with the IFR_FLAGS field in structure IFREQ.
*
01 IFF-UP PIC X(2) VALUE X'0001'.
01 IFF-BROADCAST PIC X(2) VALUE X'0002'.
01 IFF-DEBUG PIC X(2) VALUE X'0004'.
01 IFF-LOOPBACK PIC X(2) VALUE X'0008'.
01 IFF-POINTOPOINT PIC X(2) VALUE X'0010'.
01 IFF-NOTRAILERS PIC X(2) VALUE X'0020'.
01 IFF-RUNNING PIC X(2) VALUE X'0040'.
01 IFF-NOARP PIC X(2) VALUE X'0080'.
01 IFF-PROMISC PIC X(2) VALUE X'0100'.
01 IFF-ALLMULTI PIC X(2) VALUE X'0200'.
01 IFF-MULTICAST PIC X(2) VALUE X'0400'.
01 IFF-POINTOMULTIPT PIC X(2) VALUE X'0800'.
01 IFF-BRIDGE PIC X(2) VALUE X'1000'.
01 IFF-SNAP PIC X(2) VALUE X'2000'.
01 IFF-VIRTUAL PIC X(2) VALUE X'4000'.
01 IFF-SAMEHOST PIC X(2) VALUE X'8000'.
*
* HOSTENT structure
*
01 HOSTENT.
* Official name of host
03 H-NAME PIC S9(8) BINARY.
* Alias list address
03 H-ALIASES PIC S9(8) BINARY.
* Host address type
03 H-ADDRTYPE PIC S9(8) BINARY.
* Length of address
03 H-LENGTH PIC S9(8) BINARY.
* List of addresses from name server
03 H-ADDR-LIST PIC S9(8) BINARY.
*
* Address information structure
*
01 ADDRINFO.
* Flags
03 AI-FLAGS PIC S9(8) BINARY.
* Socket family
03 AI-FAMILY PIC S9(8) BINARY.
* Socket type
03 AI-SOCKTYPE PIC S9(8) BINARY.
* Protocol
03 AI-PROTOCOL PIC S9(8) BINARY.
* Length of AI-ADDR value
03 AI-ADDRLEN PIC S9(8) BINARY.
* Pad to double word boundary
03 FILLER PIC X(4).
03 FILLER PIC X(4).
* Canonical name
03 AI-CANONNAME PIC S9(8) BINARY.
03 FILLER PIC X(4).
* Binary address, sockaddr_in(6)
03 AI-ADDR PIC S9(8) BINARY.
03 FILLER PIC X(4).
* Next addrinfo structure
03 AI-NEXT PIC S9(8) BINARY.
* Extended flags
03 AI-EFLAGS PIC S9(8) BINARY.
*
* AI-FLAGS mappings
*
77 AI-PASSIVE PIC X(4) VALUE X'00000001'.
77 AI-PASSIVE-BIT PIC S9(8) BINARY VALUE 1.
77 AI-CANONNAMEOK PIC X(4) VALUE X'00000002'.
77 AI-CANONNAMEOK-BIT PIC S9(8) BINARY VALUE 2.
77 AI-NUMERICHOST PIC X(4) VALUE X'00000004'.
77 AI-NUMERICHOST-BIT PIC S9(8) BINARY VALUE 4.
77 AI-NUMERICSERV PIC X(4) VALUE X'00000008'.
77 AI-NUMERICSERV-BIT PIC S9(8) BINARY VALUE 8.
77 AI-V4MAPPED PIC X(4) VALUE X'00000010'.
77 AI-V4MAPPED-BIT PIC S9(8) BINARY VALUE 16.
77 AI-ALL PIC X(4) VALUE X'00000020'.
77 AI-ALL-BIT PIC S9(8) BINARY VALUE 32.
77 AI-ADDRCONFIG PIC X(4) VALUE X'00000040'.
77 AI-ADDRCONFIG-BIT PIC S9(8) BINARY VALUE 64.
77 AI-EXTFLAGS PIC X(4) VALUE X'00000080'.
77 AI-EXTFLAGS-BIT PIC S9(8) BINARY VALUE 128.
77 AI-ALLFLAGMASK PIC X(4) VALUE X'FFFFFF00'.
77 AI-ALLFLAGMASK-BITS PIC S9(8) VALUE -256.
*
* AI-EFLAGS mappings
* Also maps OPTVAL for getsockopt and setsockopt when
* OPTNAME is IPV6-ADDR-PREFERENCES
* Also maps FLAGS for inet6_is_srcaddr
*
77 IPV6-PREFER-SRC-HOME PIC S9(8) BINARY VALUE 1.
77 IPV6-PREFER-SRC-COA PIC S9(8) BINARY VALUE 2.
77 IPV6-PREFER-SRC-TMP PIC S9(8) BINARY VALUE 4.
77 IPV6-PREFER-SRC-PUBLIC PIC S9(8) BINARY VALUE 8.
77 IPV6-PREFER-SRC-CGA PIC S9(8) BINARY VALUE 16.
77 IPV6-PREFER-SRC-NONCGA PIC S9(8) BINARY VALUE 32.
77 IPV6-PREFER-SRC-INVALIDBITS PIC S9(8) BINARY VALUE -64.
*
* NI_FLAGS mappings
*
77 NI-NOFQDN PIC X(4) VALUE X'00000001'.
77 NI-NUMERICHOST PIC X(4) VALUE X'00000002'.
77 NI-NAMEREQD PIC X(4) VALUE X'00000004'.
77 NI-NUMERICSERV PIC X(4) VALUE X'00000008'.
77 NI-DGRAM PIC X(4) VALUE X'00000010'.
77 NI-NUMERICSCOPE PIC X(4) VALUE X'00000020'.
*
* End of EZACOBOL - COBOL COMMON VARIABLES
*
*****************************************************************
Figure 1. EZACOBOL COBOL common variables