public static Task <ulong> EncSecretKeyNewAsync(List <byte> asymSecKeyBytes) { var tcs = new TaskCompletionSource <ulong>(); var asymSecKeyPtr = asymSecKeyBytes.ToIntPtr(); EncSecretKeyNewCb callback = null; callback = (self, result, encSecKeyHandle) => { if (result.ErrorCode != 0) { tcs.SetException(result.ToException()); CallbackManager.Unregister(callback); return; } tcs.SetResult(encSecKeyHandle); CallbackManager.Unregister(callback); }; CallbackManager.Register(callback); NativeBindings.EncSecretKeyNew(Session.AppPtr, asymSecKeyPtr, Session.UserData, callback); return(tcs.Task); }
public static extern void EncSecretKeyNewNative(IntPtr appPtr, IntPtr asymSecretKey, IntPtr self, EncSecretKeyNewCb callback);
public void EncSecretKeyNew(IntPtr appPtr, IntPtr asymSecretKey, IntPtr self, EncSecretKeyNewCb callback) { EncSecretKeyNewNative(appPtr, asymSecretKey, self, callback); }