#[non_exhaustive]pub enum CiExtApdu<'a> {
ResourceManagerV2(ResourceManagerV2Apdu),
ApplicationInfoV2(ApplicationInfoV2Apdu<'a>),
PowerManager(PowerManagerApdu),
EventManager(EventManagerApdu<'a>),
CopyProtection(CopyProtectionApdu<'a>),
StreamInput(StreamInputApdu<'a>),
BroadcastServiceGateway(BroadcastServiceGatewayApdu<'a>),
StatusQuery(StatusQueryApdu<'a>),
ApplicationMmi(ApplicationMmiApdu<'a>),
Download(DownloadApdu<'a>),
CaPipeline(CaPipelineApdu<'a>),
}Expand description
A parsed DVB CI-extension APDU, scoped to the resource it arrived on.
One variant per resource implemented this pass; each wraps that resource’s
own object enum (which dispatches on the leading apdu_tag).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
ResourceManagerV2(ResourceManagerV2Apdu)
Resource Manager v2 object (0x00010042).
ApplicationInfoV2(ApplicationInfoV2Apdu<'a>)
Application Information v2 object (0x00020042).
PowerManager(PowerManagerApdu)
Power Manager object (0x00220041).
EventManager(EventManagerApdu<'a>)
Event Manager object (0x00231ii1).
CopyProtection(CopyProtectionApdu<'a>)
Copy Protection object (0x00041ii1).
StreamInput(StreamInputApdu<'a>)
StreamInput object (0x00801ii1).
BroadcastServiceGateway(BroadcastServiceGatewayApdu<'a>)
Broadcast Service Gateway object (0x00811ii1), including the inherited
Generic Service Gateway calls.
StatusQuery(StatusQueryApdu<'a>)
Status Query object (0x00211ii1).
ApplicationMmi(ApplicationMmiApdu<'a>)
Application MMI object (0x00410041).
Download(DownloadApdu<'a>)
Download (CAM firmware) object (0x00051041).
CaPipeline(CaPipelineApdu<'a>)
CA Pipeline object (0x00061ii1).
Implementations§
Source§impl<'a> CiExtApdu<'a>
impl<'a> CiExtApdu<'a>
Sourcepub fn parse(resource_id: ResourceId, body: &'a [u8]) -> Result<Self>
pub fn parse(resource_id: ResourceId, body: &'a [u8]) -> Result<Self>
Parse a CI-extension APDU, selecting the resource from resource_id
(Module ID masked out for type = 1* resources) and then delegating to
that resource’s object dispatch on the leading apdu_tag.
Errors with Error::UnknownResource if resource_id is not a
CI-extension resource handled this pass.