MANAGE CHANNEL OPEN
In response to the MANAGE CHANNEL OPEN command, the dispatcher follows this procedure:
-
If the origin channel is not open, an error is returned.
-
Determines whether the channel is open or closed. If the channel is open, an error is returned.
-
Opens the channel.
-
If the origin channel is
0, the default applet (if there is one) is selected in the new channel. -
If the origin channel is not
0, the selected applet on the origin channel becomes the selected applet in new channel.
This MANAGE CHANNEL OPEN command opens a new channel from channel encoded in Q:
| CLA | INS | P1 | P2 | Lc | Data | Le | Data | SW1 | SW2 |
|---|---|---|---|---|---|---|---|---|---|
|
|
|
|
|
|
- |
|
|
|
|
:
| CLA | INS | P1 | P2 | Lc | Data | Le | SW1 | SW2 | SW2 |
|---|---|---|---|---|---|---|---|---|---|
|
|
|
|
|
|
- |
|
|
|
|
This command produces the following results:
-
If channel encoded in
Qis the basic channel (channel0), the card's default applet is selected on channel encoded inR. No applet is selected if no default applet is defined. -
If channel encoded in
Qis other than the basic channel (channels1,2, ...19), the selected applet on channel encoded inQbecomes the current applet selected on channelR. -
The applet on channel encoded in
Rcan either accept or reject selection.
This command returns an error under the following circumstances:
-
The applet does not implement the
javacard.framework.MultiSelectableinterface, when an attempt to select the applet in more than one channel takes place. -
The applet rejects selection or throws exception.
-
No channel is available.
-
Channel encoded in
Qis not open.