private void QueryBufferSizes(out SecurityPackageContextSizes sizes) { var contextAddRefSuccess = false; RuntimeHelpers.PrepareConstrainedRegions(); try { DangerousAddRef(ref contextAddRefSuccess); } catch (Exception ex) { if (contextAddRefSuccess) { DangerousRelease(); contextAddRefSuccess = false; } if (!(ex is ObjectDisposedException)) { throw; } } finally { var result = NativeMethods.QueryContextAttributes(ref _handle, QueryContextAttributes.Sizes, out sizes); DangerousRelease(); if (result != NativeMethods.SEC_E_OK) { throw Win32Exception.Create(result, "Unable to get the query context attribute sizes."); } } }
public static extern uint QueryContextAttributes(ref SspiHandle inContextHandle, QueryContextAttributes attribute, out SecurityPackageContextSizes sizes);
private void QueryBufferSizes(out SecurityPackageContextSizes sizes) { var contextAddRefSuccess = false; RuntimeHelpers.PrepareConstrainedRegions(); try { DangerousAddRef(ref contextAddRefSuccess); } catch (Exception ex) { if (contextAddRefSuccess) { DangerousRelease(); contextAddRefSuccess = false; } if (!(ex is ObjectDisposedException)) throw; } finally { var result = NativeMethods.QueryContextAttributes(ref _handle, QueryContextAttributes.Sizes, out sizes); DangerousRelease(); if (result != NativeMethods.SEC_E_OK) { throw Win32Exception.Create(result, "Unable to get the query context attribute sizes."); } } }