public CreateSspiStateAsyncResult(EndpointAddress target, Uri via, TlsnegoTokenProvider tlsTokenProvider, TimeSpan timeout, AsyncCallback callback, object state) : base(callback, state)
            {
                this.tlsTokenProvider = tlsTokenProvider;
                IAsyncResult result = this.tlsTokenProvider.ClientTokenProvider.BeginGetToken(timeout, getTokensCallback, this);

                if (result.CompletedSynchronously)
                {
                    X509SecurityToken token = TlsnegoTokenProvider.ValidateToken(this.tlsTokenProvider.ClientTokenProvider.EndGetToken(result));
                    this.sspiState = this.tlsTokenProvider.CreateTlsSspiState(token);
                    base.Complete(true);
                }
            }
        protected override IAsyncResult BeginCreateNegotiationState(EndpointAddress target, Uri via, TimeSpan timeout, AsyncCallback callback, object state)
        {
            SspiNegotiationTokenProviderState sspiState = this.CreateNegotiationState(target, via, timeout);

            return(new CompletedAsyncResult <SspiNegotiationTokenProviderState>(sspiState, callback, state));
        }
 public CreateSspiStateAsyncResult(EndpointAddress target, Uri via, TlsnegoTokenProvider tlsTokenProvider, TimeSpan timeout, AsyncCallback callback, object state)
     : base(callback, state)
 {
     this.tlsTokenProvider = tlsTokenProvider;
     IAsyncResult result = this.tlsTokenProvider.ClientTokenProvider.BeginGetToken(timeout, getTokensCallback, this);
     if (!result.CompletedSynchronously)
     {
         return;
     }
     SecurityToken token = this.tlsTokenProvider.ClientTokenProvider.EndGetToken(result);
     X509SecurityToken clientToken = ValidateToken(token);
     this.sspiState = this.tlsTokenProvider.CreateTlsSspiState(clientToken);
     base.Complete(true);
 }
Пример #4
0
 public GetOutgoingBlobProxy(SspiNegotiationTokenProviderState sspiState, SspiNegotiationTokenProvider sspiProvider, RequestSecurityToken rst)
 {
     this._sspiState    = sspiState;
     this._sspiProvider = sspiProvider;
     this._rst          = rst;
 }