Parameters for analyzer programs

The names of the parameters for the analyzer program are given with short explanations, including whether the parameters are input only, output only, or input and output parameters.

Attention: This topic contains Product-sensitive Programming Interface and Associated Guidance Information.
wbra_alias_tranid
(Input and output)

A string of length 4. The transaction ID of the alias transaction that is to cover the remainder of processing for this request. If a URIMAP definition is involved, this string contains the value of the TRANSACTION attribute. If you do not set this field, or if you set it to blanks, CWBA is used.

wbra_alias_termid
(Output only)

A string of length 4. The terminal ID to be used on the START request for the alias transaction that is to cover the remainder of processing for this request.

wbra_characterset
(Output only)

The name of the IANA character set that the client used for the entity body of the request. This information is used for code page conversion of the entity body of the request and the response. If the request is not an HTTP request, this character set is used to translate the entire request and response. wbra_hostcodepage must also be supplied.

wbra_client_ip_address
(Input only)

A fullword 32-bit field that specifies the binary IPv4 address of the client, if wbra_client_ipv6_address is not specified. wbra_client_address does not support IPv6 addresses.

If there is a non-zero value in wbra_client_address, this value is used, and any value in wbra_client_ipv6_address is ignored. Therefore, if you are using IPv6 addressing you must clear the contents of wbra_client_address to allow the value in wbra_client_ipv6_address to be used.

wbra_client_ipv6_address
(Input only)

A 16-byte field that must be set if you are using IPv6 addressing, or if you are using IPv4 addressing and wbra_client_address is not specified. This field supports both IPv4 and IPv6 addresses and is set to the binary IPv6 address of the client, or the IPv4 address of the client in IPv6 format. For more information about IP address format, see IP addresses.

wbra_commarea
(Output only)

The flag to indicate that pre-CICS TS Version 3 compatibility processing is required for a response that uses a non-Web-aware application and a converter program. This flag means that the Web client receives a response identical with the response it received before CICS® TS Version 3.

wbra_content_length
(Input only)

A 32–bit binary representation of the entity body length as specified by the Content-Length HTTP header in the received data.

wbra_converter_program
(Input and output)

A string of length 8. The name of the converter program that is used to process the request. If a URIMAP definition is involved, this string contains the value of the CONVERTER attribute. If this field is not set on output, no converter program is called.

wbra_dfhcnv_key
(Output only)

A string of length 8. The name of a conversion template in the DFHCNV table for code page conversion of the entity body for the request and the response. If the request is not an HTTP request, this template is used to translate the entire request and response.

CICS initializes this field to high values. If you use this field to specify a conversion template, the name you choose must be defined in the DFHCNV table, as described in Upgrading entries in the code page conversion table (DFHCNV). As an alternative, you can set the wbra_hostcodepage and wbra_characterset fields to specify the pair of code pages to use for code page conversion. If you set wbra_dfhcnv_key to nulls or blanks and do not set wbra_hostcodepage and wbra_characterset, code page conversion is suppressed.

wbra_eyecatcher
(Input only)

A string of length 8. Its value is ">analyze".

wbra_function
(Input only)

A code indicating that an analyzer program is being called. The value is 1.

wbra_hostcodepage
(Output only)

The name of a host code page (IBM® EBCDIC code page) suitable for the application program that is handling the request. This information is used for code page conversion of the entity body of the request and the response. If the request is not an HTTP request, this code page is used to translate the entire request and response. wbra_characterset must also be supplied.

wbra_hostname_length
(Input only)

The length in bytes of the host name specified on the HTTP request. If no host name is specified, the value is undefined.

wbra_hostname_ptr
(Input only)

A pointer to the host name specified on the HTTP request sent by the client. If an absolute URI is used for the request, the host name is taken from the URI. Otherwise the host name is as specified in the Host header for the request. For HTTP/1.1 requests, a host name is required, so this parameter is always passed to the analyzer. For HTTP/1.0 requests, a host name might not be supplied, in which case the value is undefined.

wbra_http_version_length
(Input only)

For an HTTP request, the length in bytes of the string identifying the HTTP version of the client request. If the request is not an HTTP request, the value is zero.

wbra_http_version_ptr
(Input only)

For an HTTP request, a pointer to the string identifying the HTTP version of the client request. If the request is not an HTTP request, the value is undefined.

wbra_method_length
(Input only)

For an HTTP request, the length in bytes of the string identifying the method specified in the HTTP request. If the request is not an HTTP request, the value is zero.

wbra_method_ptr
(Input only)

For an HTTP request, a pointer to the method specified in the HTTP request. If the request is not an HTTP request, the value is undefined.

wbra_querystring_length
(Input only)

The length in bytes of the query string specified on the HTTP request. If no query string was sent, the value is undefined.

wbra_querystring_ptr
(Input only)

A pointer to the query string specified on the HTTP request sent by the client. If no query string was sent, the value is undefined.

wbra_reason
(Output only)

The reason code returned by the analyzer program. See Responses and reason codes.

wbra_request_header_length
(Input only)

For an HTTP request, the length of the first HTTP header in the HTTP request. If the request is not an HTTP request, the value is zero.

wbra_request_header_ptr
(Input only)

For an HTTP request, a pointer to the first HTTP header in the HTTP request. The other HTTP headers follow this one in the request buffer. If the request is not an HTTP request, the value is undefined.

wbra_request_type
(Input only)

If this request is an HTTP request, the value is WBRA_REQUEST_HTTP. If it is not an HTTP request, the value is WBRA_REQUEST_NON_HTTP.

wbra_resource_escaped_ptr
(Input only)

For an HTTP request, a pointer to a copy of the HTTP headers for the request that have not been unescaped; that is, are still in their escaped form.

wbra_resource_length
(Input only)

For an HTTP request, the length in bytes of the path component of the URL. If the request is not an HTTP request, the value is zero.

wbra_resource_ptr
(Input only)

For an HTTP request, a pointer to the path component of the URL. If a URIMAP definition is involved, this pointer contains the value of the PATH attribute. If the request is not an HTTP request, the value is undefined.

wbra_response
(Output only)

The response value produced by the analyzer program. See Responses and reason codes.

wbra_server_ip_address
(Input only)

A fullword 32-bit field that specifies the binary IPv4 address of the HTTP server, if wbra_server_ipv6_address is not specified. wbra_server_address does not support IPv6 addresses.

If there is a non-zero value in wbra_server_address, this value is used, and any value in wbra_server_ipv6_address is ignored. Therefore, if you are using IPv6 addressing you must clear the contents of wbra_server_address to allow the value in wbra_server_ipv6_address to be used.

wbra_server_ipv6_address
(Input only)

A 16-byte field that must be set if you are using IPv6 addressing, or if you are using IPv4 addressing and wbra_server_address is not specified. This field supports both IPv4 and IPv6 addresses and is set to the binary IPv6 address of the server, or the IPv4 address of the server in IPv6 format. For more information about IP address format, see IP addresses.

wbra_server_program
(Input and output)

A string of length 8. The name of a CICS application program that is to process the request. If a URIMAP definition is involved, this string contains the value of the PROGRAM attribute. The program name is passed to any converter program specified in wbra_converter_program. If you do not set this field, the value passed is nulls. The program name must be set here or by the converter program; otherwise, no CICS application program is called.

wbra_unescape
(Output only)
  • To specify that data is to be passed to the CICS application program in its unescaped form, set this parameter to WBRA_UNESCAPE_REQUIRED.
  • To specify that data is be passed to the application in its escaped form, set this parameter to WBRA_UNESCAPE_NOT_REQUIRED. This value is the default.

    Also set the parameter to WBRA_UNESCAPE_NOT_REQUIRED if your analyzer has converted the data to its escaped form.

wbra_urimap
(Input only)

The name of any matching URIMAP definition that is involved in the processing path for the request. If this field is nonblank, the CICS-supplied default analyzer DFHWBADX returns without processing the path component of the URL.

wbra_user_data_length
(Input and output)

A 15-bit integer, representing the length of the entity body in the HTTP request. If the request is non-HTTP, this value is the length of the request. The length passed to the analyzer includes any trailing carriage return and line feed (CRLF) characters that might delimit the end of the entity body. If the analyzer reduces the length of the entity body, the newly redundant bytes are replaced by null characters, X'00'. The modified value is passed to the CICS business logic interface in field wbbl_user_data_length, and to the converter program in field decode_user_data_length.

wbra_user_data_ptr
(Input only)

For an HTTP request, a pointer to the entity body in the HTTP request. If the request is not an HTTP request, this pointer is to the request.

wbra_user_token
(Output only)

A 64-bit token that is passed to the converter program as decode_user_token. If you do not set this field, the value passed is null. If there is no converter program for this request, the value is ignored.

wbra_userid
(Input and output)

A string of length 8. On input, this string contains a user ID supplied by the client (using basic authentication or client certificate authentication), or, if a URIMAP definition is involved, the value of the USERID attribute, if specified. On output, it contains the user ID that is used for the alias transaction, which can be the supplied user ID or a user ID chosen by the analyzer program. If this field is blank or null on output, the CICS default user ID is used.

wbra_version
(Input only)

A halfword binary number that indicates which version of the parameter list is currently being used. It is set using the constant value wbra_current_version.