3 Protocol Details
Implementations of this protocol MUST implement support for ITpmVirtualSmartCardManager and ITpmVirtualSmartCardManagerStatusCallback. They SHOULD<3> implement support for ITpmVirtualSmartCardManager2 and ITpmVirtualSmartCardManager3.
The client side of the ITpmVirtualSmartCardManager, ITpmVirtualSmartCardManager2, and ITpmVirtualSmartCardManager3 interfaces is simply a pass-through. That is, no additional timers or other state is required on the client side of these interfaces. Calls made by the higher-layer protocol or application are passed directly to the transport, and the results returned by the transport are passed directly back to the higher-layer protocol or application. The set of in-progress calls is made available to the ITpmVirtualSmartCardManagerStatusCallback server as specified in section 3.2.1.
Similarly, the client side of the ITpmVirtualSmartCardManagerStatusCallback interface is also a pass-through and requires no additional timers or other state. This protocol is only intended to be invoked by the ITpmVirtualSmartCardManager, ITpmVirtualSmartCardManager2, or ITpmVirtualSmartCardManager3 server while processing a call to one of its methods. When invoked in this way, the ITpmVirtualSmartCardManagerStatusCallback client simply passes the call directly to the underlying DCOM transport, using the same causality ID as the triggering ITpmVirtualSmartCardManager, ITpmVirtualSmartCardManager2, or ITpmVirtualSmartCardManager3 call as specified in [MS-DCOM] section 18.104.22.168.