Guardian Application Conversion Guide
Aggregate SDU Length Checking Enhanced
Considerations for Migrating Any Application
096047 Tandem Computers Incorporated D–3
INITIALIZER Procedure
Enhanced
For D-series systems, the number of FCBs specified in the INITIALIZER procedure
must match the number of FCBs actually allocated for the RUCB and common FCB. If
the numbers do not match, the INITIALIZER issues the message “INITIALIZER:
Invalid format or wrong number of FCBs specified” and terminates.
For C-series systems, specifying the wrong number of FCBs did not cause a processing
error.
To ensure that your C-series application runs successfully on a D-series system, if it
uses the INITIALIZER procedure, ensure that the number of specified FCBs for the
procedure is correct.
Undefined Condition
Codes Contain
Meaningless
Information
For D-series and TNS/R systems, undefined condition codes are set by accidental side
effects. A condition code is considered to be undefined for a Guardian procedure if
the documentation for the procedure does not explicitly refer to condition code values.
For example, although the NEWPROCESS procedure has never returned a condition
code, a program that checks the condition code might have run successfully on a
C-series system:
CALL NEWPROCESS (file^name, ...);
IF <> THEN ...
To ensure that your C-series application runs successfully on a D-series system,
modify your application to eliminate checking of undefined condition codes.
Aggregate SDU Length
Checking Enhanced
For D-series systems, the TLAM PORT interface performs enhanced length checking
on aggregate SDUs and aggregate SDU buffers.
On D-series systems, if the total specified length of incoming aggregate SDUs exceeds
the length of an aggregate SDU buffer in your application, the I/O operation is not
executed. File-system error 22 (application buffer address out of bounds) is returned
to your application.
On C-series systems, if the total specified length of incoming aggregate SDUs exceeded
the length of an aggregate SDU buffer in your application, the I/O operation was
executed but a truncated SDU was put into the buffer. and no warning was returned
to your application.
To ensure that your C-series application runs successfully on a D-series system, if it
uses aggregate SDU buffers, ensure that a total aggregate SDU data size cannot be
greater than an aggregate SDU buffer size.