public static Task <List <byte> > EncPubKeyGetAsync(ulong encPubKeyH) { var tcs = new TaskCompletionSource <List <byte> >(); EncPubKeyGetCb callback = null; callback = (pVoid, result, encPubKeyPtr) => { if (result.ErrorCode != 0) { tcs.SetException(result.ToException()); CallbackManager.Unregister(callback); return; } tcs.SetResult(encPubKeyPtr.ToList <byte>((IntPtr)KeyLen)); CallbackManager.Unregister(callback); }; CallbackManager.Register(callback); NativeBindings.EncPubKeyGet(Session.AppPtr, encPubKeyH, Session.UserData, callback); return(tcs.Task); }
public static extern void EncPubKeyGetNative(IntPtr appPtr, ulong encryptPubKeyHandle, IntPtr self, EncPubKeyGetCb callback);
public void EncPubKeyGet(IntPtr appPtr, ulong encryptPubKeyHandle, IntPtr self, EncPubKeyGetCb callback) { EncPubKeyGetNative(appPtr, encryptPubKeyHandle, self, callback); }