iaik.tc.tss.impl.java.tcs.authmgr
Class TcTcsAuthCacheTpm11

java.lang.Object
  extended by iaik.tc.tss.impl.java.tcs.authmgr.TcTcsAuthCache
      extended by iaik.tc.tss.impl.java.tcs.authmgr.TcTcsAuthCacheTpm11

public class TcTcsAuthCacheTpm11
extends TcTcsAuthCache


Constructor Summary
TcTcsAuthCacheTpm11()
           
 
Method Summary
 java.lang.String cachedAuthSessionsToString()
          This method is intended for debugging.
 void ensureAuthsAreLoadedInTpm(TcTcsAuth[] auths)
          This method is called by TCSI methods that use auth sessions.
 void evictAllAuthSessions()
          This method evicts all auth sessions from the TPM.
 void swapOutAuth(long[] keepHandles)
          This method swaps out an auth sessions from the TPM.
 
Methods inherited from class iaik.tc.tss.impl.java.tcs.authmgr.TcTcsAuthCache
addActiveAuthSession, getInstance, removeActiveAuthSession, trackActiveAuthSession
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TcTcsAuthCacheTpm11

public TcTcsAuthCacheTpm11()
Method Detail

evictAllAuthSessions

public void evictAllAuthSessions()
                          throws TcTddlException,
                                 TcTpmException
Description copied from class: TcTcsAuthCache
This method evicts all auth sessions from the TPM. The TSS is supposed to have full control of the TPM. No other entity than the TSS is responsible for managing sessions. Consequently, the TSS flushes all existing auth sessions before taking control of the saved context slots. Note: This method is specific to 1.2 TPMs.

Note: This functionality is also implemented in TcTddl. Changes here should be applied in TcTddl too.

Specified by:
evictAllAuthSessions in class TcTcsAuthCache
Throws:
TcTddlException
TcTpmException

swapOutAuth

public void swapOutAuth(long[] keepHandles)
                 throws TcTddlException,
                        TcTpmException,
                        TcTcsException
Description copied from class: TcTcsAuthCache
This method swaps out an auth sessions from the TPM.

Specified by:
swapOutAuth in class TcTcsAuthCache
Parameters:
keepHandles - When swapping out an auth session, this method avoids to swap out the sessions with the handles specified by notHandles. If it does not matter which session to swap out, simply pass an empty array.
Throws:
TcTddlException
TcTpmException
TcTcsException

ensureAuthsAreLoadedInTpm

public void ensureAuthsAreLoadedInTpm(TcTcsAuth[] auths)
                               throws TcTddlException,
                                      TcTpmException,
                                      TcTcsException
Description copied from class: TcTcsAuthCache
This method is called by TCSI methods that use auth sessions. By calling this method, it is ensured that the required auth sessions are loaded in the TPM. In cases the auth sessions were swapped out, they are re-loaded into the TPM. Should re-loading be required, the TPM might assign a new auth handles to the sessions. In such a case, the authHandles of the auth parameter are modified accordingly.

Specified by:
ensureAuthsAreLoadedInTpm in class TcTcsAuthCache
Parameters:
auths - The auth sessions that have to be present in the TPM.
Throws:
TcTddlException
TcTpmException
TcTcsException

cachedAuthSessionsToString

public java.lang.String cachedAuthSessionsToString()
Description copied from class: TcTcsAuthCache
This method is intended for debugging. It returns a string of auth handles currently loaded in the TPM.

Specified by:
cachedAuthSessionsToString in class TcTcsAuthCache