Modifying the EID by exits XFCAREQ and XFCAREQC

It is not possible to modify the EID to make major changes to requests. It is not possible, for example, to change an INQUIRE FILE request to a SET FILE request. However, you can make minor changes to requests, such as to turn on the existence bit for a variable that had not been specified on the current request.

The following paragraph lists the bits in the EID that can be modified. Any attempt to modify any other part of the EID is ignored.

Your exit program can modify any bit in FCIS_BITS1, FCIS_BITS2, FCIS_BITS3, FCIS_BITS4, FCIS_BITS5, FCIS_BITS6 and FCIS_BITS7, except for:
  • The existence bit for the FILE keyword.
  • The bits for the START, NEXT, END, DEFINESOURCE, INSTALLAGENT, INSTALLUSRID and CHANGEAGENT keywords.
  • Any bits described as “not used by file control”.
  • Any bit corresponding to a keyword that is not applicable to the command being executed. For example, the bit for the CLOSED keyword can be modified on a SET FILE request but not on an INQUIRE FILE request, because CLOSED has meaning only for a SET FILE request. See the descriptions in Table 1 and Table 2.

Your program can provide its own command-level parameter structure and EID, in which case you should modify UEPCLPS and TS_ADDR0 respectively to point to the new structures.

The EID is reset to its original value before return to the application program. That is, changes to the EID are retained for the duration of the file control SPI request only.

Note: If you modify the EID, you must be careful not to create inconsistent parameters. For example, if the original request specified SET FILE OPEN and your exit turned on the EID bit for CLOSED, the resulting SET FILE request would specify both OPEN and CLOSED. In this case, the results of the command would be unpredictable.