Ejemplo n.º 1
0
        public static bool pair_loop(Shared shared, string servicename, string extraData, PicoBuffer returnedStoredData, QrCallback qrCallback, object data, int loopVerifier)
        {
            IntPtr sharedPtr = IntPtr.Zero;

            if (shared != null)
            {
                sharedPtr = shared.getIntPtr();
            }
            IntPtr storedDataPtr = IntPtr.Zero;

            if (returnedStoredData != null)
            {
                storedDataPtr = returnedStoredData.getIntPtr();
            }

            PicoDLL.QrCallbackFunctionInternal internalDelegate = delegate(string qrData, IntPtr intPtr)
            {
                return(qrCallback(qrData, ((GCHandle)intPtr).Target));
            };

            return(PicoDLL.pair_loop(sharedPtr, servicename, extraData, storedDataPtr, internalDelegate, (IntPtr)GCHandle.Alloc(data), loopVerifier));
        }
Ejemplo n.º 2
0
        public static bool auth(Shared shared, Users authorizedUsers, PicoBuffer returnedStoredData, QrCallback qrCallback, object data, PicoBuffer localSymmetricKey)
        {
            IntPtr sharedPtr = IntPtr.Zero;

            if (shared != null)
            {
                sharedPtr = shared.getIntPtr();
            }
            IntPtr usersPtr = IntPtr.Zero;

            if (authorizedUsers != null)
            {
                usersPtr = authorizedUsers.getIntPtr();
            }
            IntPtr storedDataPtr = IntPtr.Zero;

            if (returnedStoredData != null)
            {
                storedDataPtr = returnedStoredData.getIntPtr();
            }
            IntPtr localSymmetricKeyPtr = IntPtr.Zero;

            if (localSymmetricKey != null)
            {
                localSymmetricKeyPtr = localSymmetricKey.getIntPtr();
            }

            PicoDLL.QrCallbackFunctionInternal internalDelegate = delegate(string qrData, IntPtr intPtr)
            {
                return(qrCallback(qrData, ((GCHandle)intPtr).Target));
            };

            return(PicoDLL.auth(sharedPtr, usersPtr, storedDataPtr, internalDelegate, (IntPtr)GCHandle.Alloc(data), localSymmetricKeyPtr));
        }