Class Context

    Definition

    Namespace:
    Tizen.Security.TEEC
    Assembly:
    Tizen.Security.TEEC.dll

    This type denotes a TEE Context, the main logical container linking a Client Application with a particular TEE.

    public sealed class Context : IDisposable
    Inheritance
    object
    Context
    Implements
    System.IDisposable

    Constructors

    View Source

    Context(string)

    This function (constructor) initializes a new TEE Context, forming a connection between this client application and the TEE identified by the string identifier name (empty or null name denotes a default TEE).

    Declaration
    public Context(string name)
    Parameters
    Type Name Description
    string name

    The TEE name.

    Exceptions
    Type Condition
    System.UnauthorizedAccessException

    Thrown when an application does not have the privilege to access this method.

    System.NotSupportedException

    The required feature is not supported.

    System.InvalidOperationException

    The operation is invalid.

    Methods

    View Source

    AllocateSharedMemory(uint, SharedMemoryFlags)

    This function allocates a new block of memory as a block of shared memory within the scope of the specified context, in accordance with the parameters.

    Declaration
    public SharedMemory AllocateSharedMemory(uint size, SharedMemoryFlags flags)
    Parameters
    Type Name Description
    uint size

    The size of shared memory.

    SharedMemoryFlags flags

    The flags describing access modes (Input and/or Output).

    Returns
    Type Description
    SharedMemory

    Returns the Shared Memory handler.

    Exceptions
    Type Condition
    System.UnauthorizedAccessException

    Thrown when an application does not have the privilege to access this method.

    System.NotSupportedException

    The required feature is not supported.

    System.InvalidOperationException

    The operation is invalid.

    View Source

    Dispose()

    This function implements the IDisposable interface.

    Declaration
    public void Dispose()
    View Source

    ~Context()

    Destructor of the class.

    Declaration
    protected ~Context()
    View Source

    OpenSession(Guid, uint, byte[], Parameter[])

    This function opens a new session between the client application and the specified trusted application. The target trusted application is identified by an UUID passed in the parameter destination. There can be up to four parameter objects given in the paramlist array.

    Declaration
    public Session OpenSession(Guid destination, uint loginMethod, byte[] connectionData, Parameter[] paramlist)
    Parameters
    Type Name Description
    System.Guid destination

    The UUID of the destination TA.

    uint loginMethod

    The authentication algorithm LoginMethod.

    byte[] connectionData

    The data to be verified by a given login method.

    Parameter[] paramlist

    The parameters to be passed to TA open-session-callback.

    Returns
    Type Description
    Session

    Returns opened session.

    Exceptions
    Type Condition
    System.UnauthorizedAccessException

    Thrown when an application does not have the privilege to access this method.

    System.NotSupportedException

    The required feature is not supported.

    System.InvalidOperationException

    The operation is invalid.

    System.ArgumentException

    One of the arguments is wrong.

    View Source

    OpenSession(Guid)

    @see OpenSession (Guid destination, uint connectionMethod, byte[] connectionData, Parameter[] paramlist, CancellationToken token).

    Declaration
    public Session OpenSession(Guid destination)
    Parameters
    Type Name Description
    System.Guid destination

    The UUID of the destination TA.

    Returns
    Type Description
    Session

    Returns opened session.

    Exceptions
    Type Condition
    System.UnauthorizedAccessException

    Thrown when an application does not have the privilege to access this method.

    System.NotSupportedException

    The required feature is not supported.

    System.InvalidOperationException

    The operation is invalid.

    View Source

    OpenSessionAsync(Guid, CancellationToken)

    The asynchronous version of the OpenSession. @see OpenSession (Guid destination, uint connectionMethod, byte[] connectionData, Parameter[] paramlist, CancellationToken token).

    Declaration
    public Task<Session> OpenSessionAsync(Guid destination, CancellationToken token = default)
    Parameters
    Type Name Description
    System.Guid destination

    The UUID of the destination TA.

    System.Threading.CancellationToken token

    The token for a task manipulation.

    Returns
    Type Description
    System.Threading.Tasks.Task<TResult><Session>

    Returns a task executing session open in the background.

    Exceptions
    Type Condition
    System.UnauthorizedAccessException

    Thrown when an application does not have the privilege to access this method.

    System.NotSupportedException

    The required feature is not supported.

    System.InvalidOperationException

    The operation is invalid.

    View Source

    OpenSessionAsync(Guid, uint, byte[], Parameter[], CancellationToken)

    The asynchronous version of the OpenSession. @see OpenSession (Guid destination, uint connectionMethod, byte[] connectionData, Parameter[] paramlist, CancellationToken token).

    Declaration
    public Task<Session> OpenSessionAsync(Guid destination, uint loginMethod, byte[] connectionData, Parameter[] paramlist, CancellationToken token = default)
    Parameters
    Type Name Description
    System.Guid destination

    The UUID of the destination TA.

    uint loginMethod

    The authentication algorithm LoginMethod.

    byte[] connectionData

    The data to be verified by a given login method.

    Parameter[] paramlist

    The parameters to be passed to the TA open-session-callback.

    System.Threading.CancellationToken token

    The token for the task manipulation.

    Returns
    Type Description
    System.Threading.Tasks.Task<TResult><Session>

    Returns a Task executing the session open in the background.

    Exceptions
    Type Condition
    System.UnauthorizedAccessException

    Thrown when an application does not have the privilege to access this method.

    System.NotSupportedException

    The required feature is not supported.

    System.InvalidOperationException

    The operation is invalid.

    System.ArgumentException

    One of the arguments is wrong.

    View Source

    RegisterSharedMemory(IntPtr, uint, SharedMemoryFlags)

    This function registers a block of the existing client application memory as a block of shared memory within the scope of the specified context, in accordance with the parameters. The input memaddr must point to the shared memory region to register.

    Declaration
    public SharedMemory RegisterSharedMemory(IntPtr memaddr, uint size, SharedMemoryFlags flags)
    Parameters
    Type Name Description
    System.IntPtr memaddr

    The address of the shared memory.

    uint size

    The size of the shared memory.

    SharedMemoryFlags flags

    The flags describing the access modes (Input and/or Output).

    Returns
    Type Description
    SharedMemory

    Returns the SharedMemory handler.

    Exceptions
    Type Condition
    System.UnauthorizedAccessException

    Thrown when an application does not have the privilege to access this method.

    System.NotSupportedException

    The required feature is not supported.

    System.InvalidOperationException

    The operation is invalid.

    System.ArgumentException

    The argument memaddr is wrong.

    View Source

    ReleaseSharedMemory(SharedMemory)

    This function deregisters or deallocates a previously initialized block of the shared memory.

    Declaration
    public void ReleaseSharedMemory(SharedMemory shm)
    Parameters
    Type Name Description
    SharedMemory shm

    The shared memory object returned by RegisterSharedMemory or AllocateSharedMemory.

    Remarks

    For a memory buffer allocated using AllocateSharedMemory, the implementation must free the underlying memory and the client application must not access this region after this function has been called. In this case, the implementation must clear the buffer and size fields of the shared memory structure before returning. For memory registered using RegisterSharedMemory, the implementation must deregister the underlying memory from the TEE, but the memory region will stay available to the client application for other purposes as the memory is owned by it.

    Exceptions
    Type Condition
    System.UnauthorizedAccessException

    Thrown when an application does not have the privilege to access this method.

    System.NotSupportedException

    The required feature is not supported.

    System.InvalidOperationException

    The operation is invalid.

    System.ArgumentException

    The argument is wrong.

    Implements

    System.IDisposable
    • View Source
    Back to top Copyright © 2016-2024 Samsung
    Generated by DocFX