1 <?xml version="1.0"?>
\r
4 <name>Tizen.Security.TEEC</name>
\r
7 <member name="M:Interop.Libteec.InitializeContext(System.String,Interop.TEEC_Context@)">
\r
9 This function initializes a new TEE Context, forming a connection between this client application and the
\r
10 TEE identified by the string identifier name.
\r
11 The client application may pass a name with a value of null, which means that the implementation must
\r
12 select a default TEE to connect to. The supported name strings, the mapping of these names to a specific
\r
13 TEE, and the nature of the default TEE are implementation-defined.
\r
16 <member name="M:Interop.Libteec.FinalizeContext(Interop.TEEC_Context@)">
\r
18 This function destroys an initialized TEE Context, closing the connection between the client application
\r
19 and the TEE. The client application must only call this function when all sessions inside this TEE
\r
20 context have been closed and all shared memory blocks have been released.
\r
21 The implementation of this function must not fail; after this function returns, the client
\r
22 application must be able to consider that the context has been closed.
\r
23 The function implementation must do nothing if the value of the context pointer is null.
\r
26 <member name="M:Interop.Libteec.RegisterSharedMemory(Interop.TEEC_Context@,Interop.TEEC_SharedMemory@)">
\r
28 This function registers a block of existing client application memory as a block of shared memory within
\r
29 the scope of the specified TEE Context, in accordance with the parameters which have been set by the
\r
30 client application inside the shared memory structure.
\r
31 The input context must point to an initialized TEE Context.
\r
32 The input shared Memory must point to the shared memory structure defining the memory region to register.
\r
35 <member name="M:Interop.Libteec.AllocateSharedMemory(Interop.TEEC_Context@,Interop.TEEC_SharedMemory@)">
\r
37 This function allocates a new block of memory as a block of shared memory within the scope of the
\r
38 specified TEE Context, in accordance with the parameters which have been set by the client application
\r
39 inside the shared memory structure.
\r
40 The input context must point to an initialized TEE Context.
\r
41 The input shared memory must point to the shared memory structure defining the region to allocate.
\r
44 <member name="M:Interop.Libteec.ReleaseSharedMemory(Interop.TEEC_SharedMemory@)">
\r
46 This function deregisters or deallocates a previously initialized block of the shared memory.
\r
47 For a memory buffer allocated using AllocateSharedMemory, the implementation must free the
\r
48 underlying memory and the client application must not access this region after this function has been
\r
49 called. In this case, the implementation must set the buffer and size fields of the shared memory
\r
50 structure to null and 0 respectively before returning.
\r
51 For memory registered using RegisterSharedMemory, the implementation must deregister the
\r
52 underlying memory from the TEE, but the memory region will stay available to the client application for
\r
53 other purposes as the memory is owned by it.
\r
54 The implementation must do nothing if the value of the shared memory parameter is null.
\r
57 <member name="M:Interop.Libteec.OpenSession(Interop.TEEC_Context@,Interop.TEEC_Session@,Interop.TEEC_UUID,System.UInt32,System.Byte[],Interop.TEEC_Operation@,System.UInt32@)">
\r
59 This function opens a new session between the client application and the specified trusted application.
\r
60 The implementation must assume that all fields of this session structure are in an undefined state.
\r
61 When this function returns TEEC_SUCCESS, the implementation must have populated this structure with
\r
62 any information necessary for subsequent operations within the session.
\r
63 The target trusted application is identified by the UUID passed in the parameter destination.
\r
66 <member name="M:Interop.Libteec.CloseSession(Interop.TEEC_Session@)">
\r
68 This function closes a session which has been opened with a trusted application.
\r
69 All commands within the session must have completed before this function can be called.
\r
70 The implementation must do nothing if the input session parameter is null.
\r
71 The implementation of this function must not fail; after this function returns, the Client
\r
72 Application must be able to consider that the session has been closed.
\r
75 <member name="M:Interop.Libteec.InvokeCommand(Interop.TEEC_Session@,System.UInt32,Interop.TEEC_Operation@,System.UInt32@)">
\r
77 This function invokes a command within the specified session.
\r
78 The parameter session must point to a valid open session.
\r
79 The parameter commandID is an identifier that is used to indicate which of the exposed Trusted
\r
80 Application functions should be invoked. The supported command identifier values are defined by the
\r
81 trusted application's protocol.
\r
84 <member name="M:Interop.Libteec.RequestCancellation(Interop.TEEC_Operation@)">
\r
86 This function requests the cancelation of a pending open session operation or a command invocation
\r
87 operation. As this is a synchronous API, this function must be called from a thread other than the one
\r
88 executing the OpenSession or InvokeCommand function.
\r
89 This function just sends a cancelation signal to the TEE and returns immediately; the operation is not
\r
90 guaranteed to have been canceled when this function returns. In addition, the cancelation request is just
\r
91 a hint; the TEE or the trusted application may ignore the cancelation request.
\r
94 <member name="T:Tizen.Security.TEEC.LoginMethod">
\r
96 This type denotes the Session Login Method used in OpenSession.
\r
98 <since_tizen> 3 </since_tizen>
\r
100 <member name="F:Tizen.Security.TEEC.LoginMethod.Public">
\r
101 <summary>No login data is provided.</summary>
\r
103 <member name="F:Tizen.Security.TEEC.LoginMethod.User">
\r
104 <summary>Login data about the user running the client application process is provided.</summary>
\r
106 <member name="F:Tizen.Security.TEEC.LoginMethod.Group">
\r
107 <summary>Login data about the group running the client application process is provided.</summary>
\r
109 <member name="F:Tizen.Security.TEEC.LoginMethod.Application">
\r
110 <summary>Login data about the running client application itself is provided.</summary>
\r
112 <member name="T:Tizen.Security.TEEC.TEFValueType">
\r
114 This type denotes the Value parameter.
\r
116 <since_tizen> 3 </since_tizen>
\r
118 <member name="F:Tizen.Security.TEEC.TEFValueType.Input">
\r
119 <summary>The parameter is a ValueType tagged as the input.</summary>
\r
121 <member name="F:Tizen.Security.TEEC.TEFValueType.Output">
\r
122 <summary>The parameter is a ValueType tagged as the output.</summary>
\r
124 <member name="F:Tizen.Security.TEEC.TEFValueType.InOut">
\r
125 <summary>The parameter is a ValueType tagged as both the input and the output.</summary>
\r
127 <member name="T:Tizen.Security.TEEC.TEFTempMemoryType">
\r
129 This type denotes the TempMemoryReference parameter
\r
130 describing a region of memory which needs to be temporarily registered for the duration of the operation.
\r
132 <since_tizen> 3 </since_tizen>
\r
134 <member name="F:Tizen.Security.TEEC.TEFTempMemoryType.Input">
\r
135 <summary>The parameter is a TempMemoryType and is tagged as the input.</summary>
\r
137 <member name="F:Tizen.Security.TEEC.TEFTempMemoryType.Output">
\r
138 <summary>Same as the input, but the Memory Reference is tagged as the output.</summary>
\r
140 <member name="F:Tizen.Security.TEEC.TEFTempMemoryType.InOut">
\r
141 <summary>A Temporary Memory Reference tagged as both the input and the output.</summary>
\r
143 <member name="T:Tizen.Security.TEEC.TEFRegisteredMemoryType">
\r
145 This type denotes the SharedMemoryReference parameter.
\r
147 <since_tizen> 3 </since_tizen>
\r
149 <member name="F:Tizen.Security.TEEC.TEFRegisteredMemoryType.Whole">
\r
150 <summary>The parameter is a registered memory reference that refers to the entirety of its parent shared memory block.</summary>
\r
152 <member name="F:Tizen.Security.TEEC.TEFRegisteredMemoryType.PartialInput">
\r
153 <summary>A registered memory reference structure that refers to a partial region of its parent shared mMemory block and is tagged as the input.</summary>
\r
155 <member name="F:Tizen.Security.TEEC.TEFRegisteredMemoryType.PartialOutput">
\r
156 <summary>A registered memory reference structure that refers to a partial region of its parent shared memory block and is tagged as the output.</summary>
\r
158 <member name="F:Tizen.Security.TEEC.TEFRegisteredMemoryType.PartialInOut">
\r
159 <summary>A registered memory reference structure that refers to a partial region of its parent shared memory block and is tagged as both the input and the output.</summary>
\r
161 <member name="T:Tizen.Security.TEEC.SharedMemoryFlags">
\r
163 This type denotes the SharedMemory access direction.
\r
165 <since_tizen> 3 </since_tizen>
\r
167 <member name="F:Tizen.Security.TEEC.SharedMemoryFlags.Input">
\r
168 <summary>A flag indicates the shared memory can be read.</summary>
\r
170 <member name="F:Tizen.Security.TEEC.SharedMemoryFlags.Output">
\r
171 <summary>A flag indicates the shared memory can be written.</summary>
\r
173 <member name="F:Tizen.Security.TEEC.SharedMemoryFlags.InOut">
\r
174 <summary>A flag indicates the shared memory can be read and written.</summary>
\r
176 <member name="T:Tizen.Security.TEEC.SharedMemory">
\r
178 This type denotes a shared memory block which has been either registered
\r
179 with the implementation or allocated by it.
\r
181 <since_tizen> 3 </since_tizen>
\r
183 <member name="P:Tizen.Security.TEEC.SharedMemory.Size">
\r
185 This property represents the shared memory size in bytes.
\r
187 <since_tizen> 3 </since_tizen>
\r
189 <member name="P:Tizen.Security.TEEC.SharedMemory.Address">
\r
191 This property represents the start address of the shared memory block.
\r
193 <since_tizen> 3 </since_tizen>
\r
195 <member name="M:Tizen.Security.TEEC.SharedMemory.SetData(System.Byte[],System.Int32)">
\r
197 This function makes a copy and is designed for convenient operations on small buffers.
\r
198 For large buffers, the direct address should be used.
\r
200 <since_tizen> 3 </since_tizen>
\r
201 <param name="data">The source data buffer to copy data from.</param>
\r
202 <param name="dstOffs">The starting offset in the destination shared memory.</param>
\r
203 <exception cref="T:System.InvalidOperationException">The operation is invalid.</exception>
\r
205 <member name="M:Tizen.Security.TEEC.SharedMemory.GetData(System.Byte[],System.Int32)">
\r
207 This function makes a copy and is designed for convenient operations on small buffers.
\r
208 For large buffers, the direct address should be used.
\r
210 <since_tizen> 3 </since_tizen>
\r
211 <param name="data">The destination data buffer to copy data into.</param>
\r
212 <param name="srcOffs">The starting offset in the source shared memory.</param>
\r
213 <exception cref="T:System.InvalidOperationException">The operation is invalid.</exception>
\r
215 <member name="T:Tizen.Security.TEEC.Parameter">
\r
217 This type defines the payload of either an open session operation or an invoke command operation. It is
\r
218 also used for cancelation of operations, which may be desirable even if no payload is passed.
\r
219 Parameters are used to exchange data between CA and TA.
\r
221 <since_tizen> 3 </since_tizen>
\r
223 <member name="T:Tizen.Security.TEEC.BaseParameter`1">
\r
225 This type defines a template for the parameter types.
\r
227 <since_tizen> 3 </since_tizen>
\r
229 <member name="P:Tizen.Security.TEEC.BaseParameter`1.Type">
\r
231 This property represents the access type to this parameter.
\r
233 <since_tizen> 3 </since_tizen>
\r
235 <member name="T:Tizen.Security.TEEC.TempMemoryReference">
\r
237 This type defines a temporary memory reference.
\r
239 <since_tizen> 3 </since_tizen>
\r
241 <member name="M:Tizen.Security.TEEC.TempMemoryReference.#ctor(System.IntPtr,System.UInt32,Tizen.Security.TEEC.TEFTempMemoryType)">
\r
243 Constructs a parameter object which holds information about the temporary memory copied to or from TA.
\r
245 <since_tizen> 3 </since_tizen>
\r
246 <param name="buffer">The address of the allocated memory buffer.</param>
\r
247 <param name="size">The size of the buffer.</param>
\r
248 <param name="type">The kind of access allowed for TA <see cref="T:Tizen.Security.TEEC.TEFTempMemoryType"/>.</param>
\r
250 <member name="P:Tizen.Security.TEEC.TempMemoryReference.Buffer">
\r
252 This property represents the memory address of the buffer.
\r
254 <since_tizen> 3 </since_tizen>
\r
256 <member name="P:Tizen.Security.TEEC.TempMemoryReference.Size">
\r
258 This property represents the size of the buffer.
\r
260 <since_tizen> 3 </since_tizen>
\r
262 <member name="T:Tizen.Security.TEEC.RegisteredMemoryReference">
\r
264 This type defines a memory reference that uses a pre-registered or pre-allocated shared memory block.
\r
266 <since_tizen> 3 </since_tizen>
\r
268 <member name="M:Tizen.Security.TEEC.RegisteredMemoryReference.#ctor(Tizen.Security.TEEC.SharedMemory,System.UInt32,System.UInt32,Tizen.Security.TEEC.TEFRegisteredMemoryType)">
\r
270 Constructs a parameter object which holds information about the registered memory shared with TA.
\r
272 <since_tizen> 3 </since_tizen>
\r
273 <param name="parent">The shared memory - registered or allocated.</param>
\r
274 <param name="size">The size of the buffer part.</param>
\r
275 <param name="offset">The offset of the buffer in the shared memory.</param>
\r
276 <param name="type">The kind of access allowed for TA <see cref="T:Tizen.Security.TEEC.TEFRegisteredMemoryType"/>.</param>
\r
278 <member name="P:Tizen.Security.TEEC.RegisteredMemoryReference.Parent">
\r
280 This property represents the shared memory that is referred to.
\r
282 <since_tizen> 3 </since_tizen>
\r
284 <member name="P:Tizen.Security.TEEC.RegisteredMemoryReference.Size">
\r
286 This property represents the size (in bytes) of the shared memory.
\r
288 <since_tizen> 3 </since_tizen>
\r
290 <member name="P:Tizen.Security.TEEC.RegisteredMemoryReference.Offset">
\r
292 This property represents the offset (in bytes) from the start of the shared memory.
\r
294 <since_tizen> 3 </since_tizen>
\r
296 <member name="T:Tizen.Security.TEEC.Value">
\r
298 This type defines a parameter that is not referencing the shared memory, but carries instead small raw data
\r
301 <since_tizen> 3 </since_tizen>
\r
303 <member name="M:Tizen.Security.TEEC.Value.#ctor(System.UInt32,System.UInt32,Tizen.Security.TEEC.TEFValueType)">
\r
305 Constructs a parameter object which holds information about integer values copied to or from TA.
\r
307 <since_tizen> 3 </since_tizen>
\r
308 <param name="a">User paramter A.</param>
\r
309 <param name="b">User paramter B.</param>
\r
310 <param name="type">The kind of access allowed for TA <see cref="T:Tizen.Security.TEEC.TEFValueType"/>.</param>
\r
312 <member name="P:Tizen.Security.TEEC.Value.A">
\r
314 This property represents an unsigned integer A.
\r
316 <since_tizen> 3 </since_tizen>
\r
318 <member name="P:Tizen.Security.TEEC.Value.B">
\r
320 This property represents an unsigned integer B.
\r
322 <since_tizen> 3 </since_tizen>
\r
324 <member name="T:Tizen.Security.TEEC.Session">
\r
326 This type denotes a TEE Session, the logical container linking a client application with a particular trusted application.
\r
328 <since_tizen> 3 </since_tizen>
\r
330 <member name="M:Tizen.Security.TEEC.Session.Close">
\r
332 This function closes a session which has been opened with a trusted application.
\r
333 All commands within the session must be completed before this function can be called.
\r
335 <since_tizen> 3 </since_tizen>
\r
336 <privilege>http://tizen.org/privilege/tee.client</privilege>
\r
337 <privlevel>partner</privlevel>
\r
338 <feature>http://tizen.org/feature/security.tee</feature>
\r
339 <exception cref="T:System.UnauthorizedAccessException">Thrown when an application does not have the privilege to access this method.</exception>
\r
340 <exception cref="T:System.NotSupportedException">The required feature is not supported.</exception>
\r
341 <exception cref="T:System.InvalidOperationException">The operation is invalid.</exception>
\r
343 <member name="M:Tizen.Security.TEEC.Session.InvokeCommand(System.UInt32,Tizen.Security.TEEC.Parameter[])">
\r
345 This function invokes a command within the specified session.
\r
346 The parameter commandID is an identifier that is used to indicate which of the exposed trusted
\r
347 application functions should be invoked. The supported command identifier values are defined by the
\r
348 trusted application's protocol.
\r
349 There can be up to four parameter objects given in the <paramref name="paramlist"/> array.
\r
351 <since_tizen> 3 </since_tizen>
\r
352 <param name="commandID">The command.</param>
\r
353 <param name="paramlist">The array of parameters.</param>
\r
354 <privilege>http://tizen.org/privilege/tee.client</privilege>
\r
355 <privlevel>partner</privlevel>
\r
356 <feature>http://tizen.org/feature/security.tee</feature>
\r
357 <exception cref="T:System.UnauthorizedAccessException">Thrown when an application does not have the privilege to access this method.</exception>
\r
358 <exception cref="T:System.NotSupportedException">The required feature is not supported.</exception>
\r
359 <exception cref="T:System.InvalidOperationException">The operation is invalid.</exception>
\r
360 <exception cref="T:System.ArgumentException">The argument <paramref name="paramlist"/> is wrong.</exception>
\r
362 <member name="M:Tizen.Security.TEEC.Session.InvokeCommandAsync(System.UInt32,Tizen.Security.TEEC.Parameter[],System.Threading.CancellationToken)">
\r
364 The asynchronous version of the InvokeCommand.
\r
366 <since_tizen> 3 </since_tizen>
\r
367 <param name="commandID">The command.</param>
\r
368 <param name="paramlist">The array of parameters.</param>
\r
369 <param name="token">The token for task manipulation.</param>
\r
370 <returns>Returns a task executing an invoke command in the background.</returns>
\r
371 <privilege>http://tizen.org/privilege/tee.client</privilege>
\r
372 <privlevel>partner</privlevel>
\r
373 <feature>http://tizen.org/feature/security.tee</feature>
\r
374 <exception cref="T:System.UnauthorizedAccessException">Thrown when an application does not have the privilege to access this method.</exception>
\r
375 <exception cref="T:System.NotSupportedException">The required feature is not supported.</exception>
\r
376 <exception cref="T:System.InvalidOperationException">The operation is invalid.</exception>
\r
377 <exception cref="T:System.ArgumentException">One of the arguments is wrong.</exception>
\r
379 <member name="T:Tizen.Security.TEEC.Context">
\r
381 This type denotes a TEE Context, the main logical container linking a Client Application with a particular TEE.
\r
383 <since_tizen> 3 </since_tizen>
\r
385 <member name="M:Tizen.Security.TEEC.Context.#ctor(System.String)">
\r
387 This function (constructor) initializes a new TEE Context, forming a connection between this client application and the
\r
388 TEE identified by the string identifier name (empty or null name denotes a default TEE).
\r
390 <since_tizen> 3 </since_tizen>
\r
391 <param name="name">The TEE name.</param>
\r
392 <privilege>http://tizen.org/privilege/tee.client</privilege>
\r
393 <privlevel>partner</privlevel>
\r
394 <feature>http://tizen.org/feature/security.tee</feature>
\r
395 <exception cref="T:System.UnauthorizedAccessException">Thrown when an application does not have the privilege to access this method.</exception>
\r
396 <exception cref="T:System.NotSupportedException">The required feature is not supported.</exception>
\r
397 <exception cref="T:System.InvalidOperationException">The operation is invalid.</exception>
\r
399 <member name="M:Tizen.Security.TEEC.Context.Dispose">
\r
401 This function implements the IDisposable interface.
\r
403 <since_tizen> 3 </since_tizen>
\r
404 <privilege>http://tizen.org/privilege/tee.client</privilege>
\r
405 <privlevel>partner</privlevel>
\r
406 <feature>http://tizen.org/feature/security.tee</feature>
\r
408 <member name="M:Tizen.Security.TEEC.Context.OpenSession(System.Guid,System.UInt32,System.Byte[],Tizen.Security.TEEC.Parameter[])">
\r
410 This function opens a new session between the client application and the specified trusted application.
\r
411 The target trusted application is identified by an UUID passed in the parameter destination.
\r
412 There can be up to four parameter objects given in the <paramref name="paramlist"/> array.
\r
414 <since_tizen> 3 </since_tizen>
\r
415 <param name="destination">The UUID of the destination TA.</param>
\r
416 <param name="loginMethod">The authentication algorithm <see cref="T:Tizen.Security.TEEC.LoginMethod" />.</param>
\r
417 <param name="connectionData">The data to be verified by a given login method.</param>
\r
418 <param name="paramlist">The parameters to be passed to TA open-session-callback.</param>
\r
419 <returns>Returns opened session.</returns>
\r
420 <privilege>http://tizen.org/privilege/tee.client</privilege>
\r
421 <privlevel>partner</privlevel>
\r
422 <feature>http://tizen.org/feature/security.tee</feature>
\r
423 <exception cref="T:System.UnauthorizedAccessException">Thrown when an application does not have the privilege to access this method.</exception>
\r
424 <exception cref="T:System.NotSupportedException">The required feature is not supported.</exception>
\r
425 <exception cref="T:System.InvalidOperationException">The operation is invalid.</exception>
\r
426 <exception cref="T:System.ArgumentException">One of the arguments is wrong.</exception>
\r
428 <member name="M:Tizen.Security.TEEC.Context.OpenSession(System.Guid)">
\r
430 @see OpenSession (Guid destination, uint connectionMethod, byte[] connectionData, Parameter[] paramlist, CancellationToken token).
\r
432 <since_tizen> 3 </since_tizen>
\r
433 <param name="destination">The UUID of the destination TA.</param>
\r
434 <returns>Returns opened session.</returns>
\r
435 <privilege>http://tizen.org/privilege/tee.client</privilege>
\r
436 <privlevel>partner</privlevel>
\r
437 <feature>http://tizen.org/feature/security.tee</feature>
\r
438 <exception cref="T:System.UnauthorizedAccessException">Thrown when an application does not have the privilege to access this method.</exception>
\r
439 <exception cref="T:System.NotSupportedException">The required feature is not supported.</exception>
\r
440 <exception cref="T:System.InvalidOperationException">The operation is invalid.</exception>
\r
442 <member name="M:Tizen.Security.TEEC.Context.OpenSessionAsync(System.Guid,System.UInt32,System.Byte[],Tizen.Security.TEEC.Parameter[],System.Threading.CancellationToken)">
\r
444 The asynchronous version of the OpenSession.
\r
445 @see OpenSession (Guid destination, uint connectionMethod, byte[] connectionData, Parameter[] paramlist, CancellationToken token).
\r
447 <since_tizen> 3 </since_tizen>
\r
448 <param name="destination">The UUID of the destination TA.</param>
\r
449 <param name="loginMethod">The authentication algorithm <see cref="T:Tizen.Security.TEEC.LoginMethod" />.</param>
\r
450 <param name="connectionData">The data to be verified by a given login method.</param>
\r
451 <param name="paramlist">The parameters to be passed to the TA open-session-callback.</param>
\r
452 <param name="token">The token for the task manipulation.</param>
\r
453 <returns>Returns a Task executing the session open in the background.</returns>
\r
454 <privilege>http://tizen.org/privilege/tee.client</privilege>
\r
455 <privlevel>partner</privlevel>
\r
456 <feature>http://tizen.org/feature/security.tee</feature>
\r
457 <exception cref="T:System.UnauthorizedAccessException">Thrown when an application does not have the privilege to access this method.</exception>
\r
458 <exception cref="T:System.NotSupportedException">The required feature is not supported.</exception>
\r
459 <exception cref="T:System.InvalidOperationException">The operation is invalid.</exception>
\r
460 <exception cref="T:System.ArgumentException">One of the arguments is wrong.</exception>
\r
462 <member name="M:Tizen.Security.TEEC.Context.OpenSessionAsync(System.Guid,System.Threading.CancellationToken)">
\r
464 The asynchronous version of the OpenSession.
\r
465 @see OpenSession (Guid destination, uint connectionMethod, byte[] connectionData, Parameter[] paramlist, CancellationToken token).
\r
467 <since_tizen> 3 </since_tizen>
\r
468 <param name="destination">The UUID of the destination TA.</param>
\r
469 <param name="token">The token for a task manipulation.</param>
\r
470 <returns>Returns a task executing session open in the background.</returns>
\r
471 <privilege>http://tizen.org/privilege/tee.client</privilege>
\r
472 <privlevel>partner</privlevel>
\r
473 <feature>http://tizen.org/feature/security.tee</feature>
\r
474 <exception cref="T:System.UnauthorizedAccessException">Thrown when an application does not have the privilege to access this method.</exception>
\r
475 <exception cref="T:System.NotSupportedException">The required feature is not supported.</exception>
\r
476 <exception cref="T:System.InvalidOperationException">The operation is invalid.</exception>
\r
478 <member name="M:Tizen.Security.TEEC.Context.RegisterSharedMemory(System.IntPtr,System.UInt32,Tizen.Security.TEEC.SharedMemoryFlags)">
\r
480 This function registers a block of the existing client application memory as a block of shared memory within
\r
481 the scope of the specified context, in accordance with the parameters.
\r
482 The input <paramref name="memaddr"/> must point to the shared memory region to register.
\r
484 <since_tizen> 3 </since_tizen>
\r
485 <param name="memaddr">The address of the shared memory.</param>
\r
486 <param name="size">The size of the shared memory.</param>
\r
487 <param name="flags">The flags describing the access modes (Input and/or Output).</param>
\r
488 <returns>Returns the SharedMemory handler.</returns>
\r
489 <privilege>http://tizen.org/privilege/tee.client</privilege>
\r
490 <privlevel>partner</privlevel>
\r
491 <feature>http://tizen.org/feature/security.tee</feature>
\r
492 <exception cref="T:System.UnauthorizedAccessException">Thrown when an application does not have the privilege to access this method.</exception>
\r
493 <exception cref="T:System.NotSupportedException">The required feature is not supported.</exception>
\r
494 <exception cref="T:System.InvalidOperationException">The operation is invalid.</exception>
\r
495 <exception cref="T:System.ArgumentException">The argument <paramref name="memaddr"/> is wrong.</exception>
\r
497 <member name="M:Tizen.Security.TEEC.Context.AllocateSharedMemory(System.UInt32,Tizen.Security.TEEC.SharedMemoryFlags)">
\r
499 This function allocates a new block of memory as a block of shared memory within the scope of the
\r
500 specified context, in accordance with the parameters.
\r
502 <since_tizen> 3 </since_tizen>
\r
503 <param name="size">The size of shared memory.</param>
\r
504 <param name="flags">The flags describing access modes (Input and/or Output).</param>
\r
505 <returns>Returns the Shared Memory handler.</returns>
\r
506 <privilege>http://tizen.org/privilege/tee.client</privilege>
\r
507 <privlevel>partner</privlevel>
\r
508 <feature>http://tizen.org/feature/security.tee</feature>
\r
509 <exception cref="T:System.UnauthorizedAccessException">Thrown when an application does not have the privilege to access this method.</exception>
\r
510 <exception cref="T:System.NotSupportedException">The required feature is not supported.</exception>
\r
511 <exception cref="T:System.InvalidOperationException">The operation is invalid.</exception>
\r
513 <member name="M:Tizen.Security.TEEC.Context.ReleaseSharedMemory(Tizen.Security.TEEC.SharedMemory)">
\r
515 This function deregisters or deallocates a previously initialized block of the shared memory.
\r
518 For a memory buffer allocated using AllocateSharedMemory, the implementation must free the
\r
519 underlying memory and the client application must not access this region after this function has been
\r
520 called. In this case, the implementation must clear the buffer and size fields of the shared memory
\r
521 structure before returning.
\r
522 For memory registered using RegisterSharedMemory, the implementation must deregister the
\r
523 underlying memory from the TEE, but the memory region will stay available to the client application for
\r
524 other purposes as the memory is owned by it.
\r
526 <since_tizen> 3 </since_tizen>
\r
527 <param name="shm">The shared memory object returned by RegisterSharedMemory or AllocateSharedMemory.</param>
\r
528 <privilege>http://tizen.org/privilege/tee.client</privilege>
\r
529 <privlevel>partner</privlevel>
\r
530 <feature>http://tizen.org/feature/security.tee</feature>
\r
531 <exception cref="T:System.UnauthorizedAccessException">Thrown when an application does not have the privilege to access this method.</exception>
\r
532 <exception cref="T:System.NotSupportedException">The required feature is not supported.</exception>
\r
533 <exception cref="T:System.InvalidOperationException">The operation is invalid.</exception>
\r
534 <exception cref="T:System.ArgumentException">The argument is wrong.</exception>
\r