Offset mode and pointer mode

The CICS® business logic interface can be called in two modes: offset mode and pointer mode.

Offset mode
In offset mode, there is a single storage area (Storage area 1 in Figure 1 ) which contains DFHWBBLI's COMMAREA and the CICS application program's area. Field wbbl_indata_offset in DFHWBBLI's COMMAREA contains the offset of the application program's COMMAREA from the start of the storage area. The maximum size of the storage area is 32k bytes.

In offset mode, your converter program must not change the values of DECODE_DATA_PTR or ENCODE_DATA_PTR.

Pointer mode
In pointer mode, there are two independent storage areas: One (Storage area 1 in Figure 1 ) contains DFHWBBLI's COMMAREA and the other (Storage area 2) contains the CICS application program's area. Field wbbl_indata_ptr in DFHWBBLI's COMMAREA contains the address of the application program's COMMAREA.

In pointer mode, your converter program can change the values of DECODE_DATA_PTR or ENCODE_DATA_PTR.

The two modes are illustrated in Figure 1.
Figure 1. Offset mode and pointer mode in the CICS business logic interface
This figure illustrates the two modes — offset mode and pointer mode — which can be used to call the CICS business logic interface. Both modes are described in the text.
When you call the CICS business logic interface, you must specify the mode:
  • Set wbbl_mode to "D" to indicate offset mode and that the body of the HTTP request (referenced by wbbl_user_data_offset) is in ASCII. This is required if the server program uses any of the FORMFIELD API commands.
  • Set wbbl_mode to "P" to indicate pointer mode
In your converter program, you can test decode_volatile or encode_volatile to determine the mode:
  • 0 indicates offset mode
  • 1 indicates pointer mode

All requests from any of the following sources use offset mode when calling the CICS business logic interface:
  • Web clients using the IBM HTTP Server.
  • Java™ applications using the local gateway function.
  • Web clients using the CICS Transaction Gateway.