EXTRACT TCPIP

获取当前事务的 TCP/IP 特征的相关信息。

语法

EXTRACT TCPIP

读取语法图跳过可视语法图EXTRACTTCPIP AUTHENTICATE( CVDA)CLIENTNAME( data-area)CNAMELENGTH( data-area)SERVERNAME( data-area)SNAMELENGTH( data-area)CLIENTADDR( data-area)CADDRLENGTH( data-area)CLNTIPFAMILY( CVDA)CLIENTADDRNU( data-area)CLNTADDR6NU( data-area)SERVERADDR( data-area)SADDRLENGTH( data-area)SRVRIPFAMILY( CVDA)SERVERADDRNU( data-area)SRVRADDR6NU( data-area)SSLTYPE( CVDA)TCPIPSERVICE( data-area)PORTNUMBER( data-area)PORTNUMNU( data-area)PRIVACY( CVDA)MAXDATALEN( data-area)

条件: INVREQ 和 LENGERR

此命令是线程安全的。

NOHANDLERESPRESP2是常用选项,可添加到所有 EXEC CICS 命令中以处理错误条件。 命令语法图和选项说明中没有明确包含这些选项。 有关这些常用选项和 EXEC CICS 命令语法的信息,请参阅 EXEC CICS 命令格式和编程注意事项.

描述

EXTRACT TCPIP 提供有关 TCP/IP 连接以及 TCPIPSERVICE 定义中指定的安全性选项的信息。

选项

AUTHENTICATE(cvda)
返回一个 CVDA ,指示为使用此事务的客户机请求的认证。 以下是值:
  • ASSERTED
  • AUTOAUTH
  • AUTOREGISTER
  • basicAuth
  • CERTIFICAUTH
  • 不真实
CADDRLENGTH(数据区)
返回 CLIENTADDR 选项上提供的缓冲区的长度,并设置为返回到应用程序的数据的长度。 如果 CLIENTADDR 是 IPv6 地址,那么必须将 CADDRLENGTH 的缓冲区长度设置为至少 39 个字符。 如果数据超过缓冲区长度,那么将生成 LENGERR 条件并截断数据。
CLIENTADDR(数据区)
返回包含客户机 IP 地址的缓冲区。 IP 地址可以采用 IPv4 或 IPv6 格式。 IPv4 地址作为本机 IPv4 点分十进制地址返回; 例如,1.2.3.4IPv6 地址作为本机 IPv6 冒号十六进制地址返回; 例如,::a:b:c:d

有关 IP 地址的信息,请参阅 IP 地址

CLIENTADDRNU(数据区)
以二进制格式返回包含客户机的 IPv4 地址的全字二进制字段。 如果地址采用 IPv6 格式,那么将在 CLNTADDR6NU 选项中返回该地址,并在 CLIENTADDRNU 中返回 0。
CLIENTNAME(数据区)
指定一个缓冲区以包含域名服务器已知的客户机名称。 此选项将导致进行域名服务器查找。
建议: 在许多情况下,域名服务器不知道客户机名称。 域名服务器查找也需要一些时间才能完成。 仅请求 CLIENTNAME (如果需要) 并且可能返回值。
CLNTADDR6NU(数据区)
以二进制格式返回包含客户机的 IPv6 地址的 16 字节字段。 仅当选项 CLNTIPFAMILY 的值为IPV6. 如果地址为 IPv4 格式,那么将在 CLNTADDRNU 选项中返回该地址,并将零返回到 CLNTADDR6NU。
CLNTIPFAMILY(cvda)
返回客户机的 IP 地址的格式。 CVDA 值如下:
IPV4
CLIENTADDR 返回点分十进制 IPv4 地址, CLIENTADDRNU 返回二进制格式的 IPv4 地址。
IPV6
CLIENTADDR 返回冒号十六进制 IPv6 地址, CLIENTADDR6NU 返回二进制格式的 IPv6 地址。
NOTAPPLIC
尚未确定输入的源。0.0.0.0返回。
CNAMELENGTH(数据区)
指定 CLIENTNAME 选项上提供的缓冲区的长度,并设置为返回给应用程序的数据的实际长度,如果域名服务器不知道客户机的名称,则设置为零。 如果数据超过缓冲区长度,那么将生成 LENGERR 条件并截断数据。
MAXDATALEN(数据区)
指定一个全字节二进制字段,用于保存 CICS® HTTP所能接收的最大数据长度设置。
PRIVACY(cvda)
返回 CVDA ,指示事务与其客户机之间用于入站请求的 SSL 加密级别。 CVDA 值如下:
  • NotSupported
  • 必需
  • 受支持
PORTNUMBER(数据区)
指定 5 字符字段,以字符形式包含与此事务关联的端口号。 此端口接收到发起此事务的入局数据。
PORTNUMNU(数据区)
全字字段,以二进制格式包含与此事务关联的端口号。 此端口接收到发起此事务的入局数据。
SADDRLENGTH(数据区)
返回 SERVERADDR 选项上提供的缓冲区的长度,并设置为返回到应用程序的数据的长度。 如果 SERVERADDR 是 IPv6 地址,那么必须将 SADDRLENGTH 的缓冲区长度设置为至少 39 个字符。 如果数据超过缓冲区长度,那么将生成 LENGERR 条件并截断数据。
SERVERADDR(数据区)
返回包含服务器 IP 地址的缓冲区。 IP 地址可以是 IPv4 或 IPv6 格式。 IPv4 地址作为本机 IPv4 点分十进制地址返回,例如;1.2.3.4. IPv6 地址作为本机 IPv6 冒号十六进制地址返回; 例如,::a:b:c:d. 如果发生错误,0.0.0.0并截断数据。
SERVERADDRNU(数据区)
以二进制格式返回包含服务器的 IPv4 地址的全字二进制字段。 如果地址为 IPv6 格式,那么将在 SRVRADDR6NU 选项中返回该地址,并将 0 返回到 SERVERADDRNU。
SERVERNAME(数据区)
指定一个缓冲区,以包含域名服务器已知的服务器名称。
SNAMELENGTH(数据区)
指定 SERVERNAME 选项上提供的缓冲区的长度,并设置为返回到应用程序的数据的长度。 如果数据超过缓冲区长度,那么将生成 LENGERR 条件并截断数据。
SRVRADDR6NU(数据区)
以二进制格式返回包含服务器的 IPv6 地址的 16 字节字段。 仅当选项 SRVIPFAMILY 的值为IPV6. 如果地址为 IPv4 格式,那么将在 SERVERADDRNU 选项中返回该地址,并在 SRVRADDR6NU中返回零。
SRVRIPFAMILY(cvda)
返回服务器 IP 地址的格式。 CVDA 值如下:
IPV4
SERVERADDR 返回点分十进制 IPv4 地址, SERVERADDRNU 返回二进制格式的 IPv4 地址。
IPV6
SERVERADDR 返回冒号十六进制 IPv6 地址, SERVERADDR6NU 返回二进制格式的 IPv6 地址。
NOTAPPLIC
尚未确定输入的源。0.0.0.0返回。
SSLTYPE(cvda)
返回 CVDA ,指示是否正在使用安全套接字层 (SSL) 来保护此事务的通信。 以下是值:
SSL
无 SSL
CLIENTAUTH
ATTLSAWARE
TCPIPSERVICE(数据区)
8 字节字段,用于包含与此事务关联的 TCPIPSERVICE 的名称。

条件

16 INVREQ
RESP2 值:
2
接收到不正确的套接字响应。
5
该命令是从非 TCPIP 应用程序发出的。
22 LENGERR
RESP2 值:
1
指定了 CLIENTADDR , SERVERADDR , CLIENTNAME 或 SERVERNAME ,但未指定相关长度字段,或者该字段小于或等于零。
3
CLIENTADDR 太小,无法包含抽取的字符串。
4
SERVERADDR 太小,无法包含抽取的字符串。
6
CLIENTNAME 太小,无法包含抽取的字符串。
7
SERVERNAME 太小,无法包含抽取的字符串。