Exemple #1
0
        public SecBufferDesc(byte[] secBufferBytes)
        {
            ulVersion = (int)SecBufferType.SECBUFFER_VERSION;
            cBuffers  = 1;
            SecBuffer secBuffer = new SecBuffer(secBufferBytes);

            pBuffers = Marshal.AllocHGlobal(Marshal.SizeOf(secBuffer));
            Marshal.StructureToPtr(secBuffer, pBuffers, false);
        }
Exemple #2
0
        public byte[] GetSecBufferBytes()
        {
            if (pBuffers == IntPtr.Zero)
            {
                throw new ObjectDisposedException("SecBufferDesc");
            }
            SecBuffer secBuffer = (SecBuffer)Marshal.PtrToStructure(pBuffers, typeof(SecBuffer));

            return(secBuffer.GetBytes());
        }
Exemple #3
0
 public void Dispose()
 {
     if (pBuffers != IntPtr.Zero)
     {
         SecBuffer secBuffer = (SecBuffer)Marshal.PtrToStructure(pBuffers, typeof(SecBuffer));
         secBuffer.Dispose();
         Marshal.FreeHGlobal(pBuffers);
         pBuffers = IntPtr.Zero;
     }
 }