9.4.1.1 Constrained Transfers With No Chaining

When the no chaining mode of output transfer is requested by the applet by calling the setOutgoingNoChaining method, the following protocol sequence shall be followed:

When the no chaining mode is used (that is, after the invocation of the setOutgoingNoChaining method), calls to the waitExtension method shall throw an APDUException with reason code ILLEGAL_USE.

Notation

Le = CAD expected length.

Lr = Applet response length set via setOutgoingLength method.

= the protocol byte equal to the incoming header INS byte, which indicates that all data bytes will be transferred next.

= the protocol byte that is the complement of the incoming header INS byte, which indicates that 1 data byte will be transferred next.

= the response status bytes as in ISO7816-4.

ISO 7816-4 CASE 2
Le__Lr

1. The card sends Lr bytes of output data using the standard T=0 or procedure byte mechanism.

2. The card sends completion status on completion of the Applet.process method.

Lr_ Le

1. The card sends completion status bytes

2. The CAD sends GET RESPONSE command with Le = Lr.

3. The card sends Lr bytes of output data using the standard T=0 or procedure byte mechanism.

4. The card sends completion status on completion of the Applet.process method.

Lr_ Le

1. The card sends Le bytes of output data using the standard T=0 or procedure byte mechanism.

2. The card sends completion status bytes

3. The CAD sends GET RESPONSE command with new Le ⇐ Lr.

4. The card sends (new) Le bytes of output data using the standard T=0 or procedure byte mechanism.

5. Repeat steps 2-4 as necessary to send the remaining output data bytes (Lr) as required.

6. The card sends completion status on completion of the Applet.process method.

ISO 7816-4 CASE 4

In Case 4, Le is determined after the following initial exchange:

1. The card sends

2. The CAD sends GET RESPONSE command with Le ⇐ Lr.

The rest of the protocol sequence is identical to CASE 2 described above.

If the applet aborts early and sends less than Le bytes, zeros shall be sent instead to fill out the length of the transfer expected by the CAD.