Copy data between shared memory and user data array 73/147273/4
authorDongsun Lee <ds73.lee@samsung.com>
Fri, 1 Sep 2017 07:01:11 +0000 (16:01 +0900)
committerDong Sun Lee <ds73.lee@samsung.com>
Wed, 27 Sep 2017 09:11:23 +0000 (09:11 +0000)
Change-Id: Icd98852c1d8e59a6d7b8cf73e7cdca65da73a36d
Signed-off-by: Dongsun Lee <ds73.lee@samsung.com>
src/Tizen.Security.TEEC/Tizen.Security.TEEC/Libteec.cs

index b61527e..91030d4 100644 (file)
@@ -16,6 +16,7 @@
 
 using System;
 using System.Collections.Generic;
+using System.Runtime.InteropServices;
 using System.Threading;
 using System.Threading.Tasks;
 
@@ -137,7 +138,7 @@ namespace Tizen.Security.TEEC
         public void SetData(byte[] data, int dstOffs)
         {
             if ((shm.flags & (uint)SharedMemoryFlags.Output) == 0) throw new InvalidOperationException("No write access");
-            //TODO copy data into shared memory starting at given offset
+            Marshal.Copy(data, 0, shm.buffer + dstOffs, data.Length);
         }
         /// <summary>
         /// This function makes a copy and is designed for convenient operations on small buffers.
@@ -150,7 +151,7 @@ namespace Tizen.Security.TEEC
         public void GetData(byte[] data, int srcOffs)
         {
             if ((shm.flags & (uint)SharedMemoryFlags.Input) == 0) throw new InvalidOperationException("No read access");
-            //TODO copy data from shared memory starting at given offset
+            Marshal.Copy(shm.buffer + srcOffs, data, 0, data.Length);
         }
     };