Ejemplo n.º 1
0
        public unsafe static SecurityStatus SafeDecryptMessage(
            ref SafeCtxtHandle context,
            ref SecBufferDescEx message,
            uint MessageSeqNo,
            void *pfQOP)
        {
            try
            {
                message.Pin();

                int error = Secur32Dll.DecryptMessage(
                    ref context.Handle,
                    ref message.SecBufferDesc,
                    MessageSeqNo,
                    pfQOP);

                return(Convert(error));
            }
            catch
            {
                return(SecurityStatus.SEC_E_UNKNOW_ERROR);
            }
            finally
            {
                message.Free();
            }
        }
Ejemplo n.º 2
0
        public unsafe static SecurityStatus SafeDecryptMessage(ref SafeCtxtHandle context, ref SecBufferDescEx message, uint MessageSeqNo, void *pfQOP)
        {
            SecurityStatus result;

            try
            {
                message.Pin();
                int error = Secur32Dll.DecryptMessage(ref context.Handle, ref message.SecBufferDesc, MessageSeqNo, pfQOP);
                result = Sspi.Convert(error);
            }
            catch
            {
                result = (SecurityStatus)4294967295u;
            }
            finally
            {
                message.Free();
            }
            return(result);
        }