Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / Net / System / Net / SecureProtocols / AuthenticatedStream.cs / 1 / AuthenticatedStream.cs
/*++ Copyright (c) 2003 Microsoft Corporation Module Name: AuthenticatedStream.cs Abstract: A public contact for a base abstract authenticated stream. Author: Alexei Vopilov Sept 28-2003 Revision History: --*/ namespace System.Net.Security { using System; using System.IO; using System.Threading; using System.Security.Permissions; using System.Security.Principal; public abstract class AuthenticatedStream: Stream { private Stream _InnerStream; private bool _LeaveStreamOpen; protected AuthenticatedStream(Stream innerStream, bool leaveInnerStreamOpen) { if (innerStream == null || innerStream == Stream.Null) { throw new ArgumentNullException("innerStream"); } if (!innerStream.CanRead || !innerStream.CanWrite) { throw new ArgumentException(SR.GetString(SR.net_io_must_be_rw_stream), "innerStream"); } _InnerStream = innerStream; _LeaveStreamOpen = leaveInnerStreamOpen; } public bool LeaveInnerStreamOpen { get { return _LeaveStreamOpen; } } // // protected Stream InnerStream { get { return _InnerStream; } } // // protected override void Dispose(bool disposing) { #if DEBUG using (GlobalLog.SetThreadKind(ThreadKinds.User)) { #endif try { if (disposing) { if (_LeaveStreamOpen) { _InnerStream.Flush(); } else { _InnerStream.Close(); } } } finally { base.Dispose(disposing); } #if DEBUG } #endif } // // General informational properties // public abstract bool IsAuthenticated {get;} public abstract bool IsMutuallyAuthenticated {get;} public abstract bool IsEncrypted {get;} public abstract bool IsSigned {get;} public abstract bool IsServer {get;} } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. /*++ Copyright (c) 2003 Microsoft Corporation Module Name: AuthenticatedStream.cs Abstract: A public contact for a base abstract authenticated stream. Author: Alexei Vopilov Sept 28-2003 Revision History: --*/ namespace System.Net.Security { using System; using System.IO; using System.Threading; using System.Security.Permissions; using System.Security.Principal; public abstract class AuthenticatedStream: Stream { private Stream _InnerStream; private bool _LeaveStreamOpen; protected AuthenticatedStream(Stream innerStream, bool leaveInnerStreamOpen) { if (innerStream == null || innerStream == Stream.Null) { throw new ArgumentNullException("innerStream"); } if (!innerStream.CanRead || !innerStream.CanWrite) { throw new ArgumentException(SR.GetString(SR.net_io_must_be_rw_stream), "innerStream"); } _InnerStream = innerStream; _LeaveStreamOpen = leaveInnerStreamOpen; } public bool LeaveInnerStreamOpen { get { return _LeaveStreamOpen; } } // // protected Stream InnerStream { get { return _InnerStream; } } // // protected override void Dispose(bool disposing) { #if DEBUG using (GlobalLog.SetThreadKind(ThreadKinds.User)) { #endif try { if (disposing) { if (_LeaveStreamOpen) { _InnerStream.Flush(); } else { _InnerStream.Close(); } } } finally { base.Dispose(disposing); } #if DEBUG } #endif } // // General informational properties // public abstract bool IsAuthenticated {get;} public abstract bool IsMutuallyAuthenticated {get;} public abstract bool IsEncrypted {get;} public abstract bool IsSigned {get;} public abstract bool IsServer {get;} } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlSchemaChoice.cs
- PartManifestEntry.cs
- ConditionalBranch.cs
- Compiler.cs
- IntegerCollectionEditor.cs
- PriorityItem.cs
- ViewGenResults.cs
- PagerSettings.cs
- JavaScriptSerializer.cs
- ComContractElement.cs
- XamlUtilities.cs
- OverflowException.cs
- DataGridViewSelectedCellCollection.cs
- Vector3DKeyFrameCollection.cs
- DesignerDataParameter.cs
- ExpressionBinding.cs
- DocumentViewerBase.cs
- HelpFileFileNameEditor.cs
- MessageQueue.cs
- DeflateStream.cs
- Rect.cs
- _ProxyChain.cs
- EditCommandColumn.cs
- AsyncOperation.cs
- EntityTypeBase.cs
- String.cs
- AsymmetricKeyExchangeDeformatter.cs
- LocalValueEnumerator.cs
- ScrollChrome.cs
- EncoderNLS.cs
- GetWinFXPath.cs
- CodeSubDirectory.cs
- DefaultIfEmptyQueryOperator.cs
- SQLDoubleStorage.cs
- TextDecorationCollectionConverter.cs
- WebConvert.cs
- Quaternion.cs
- XmlSchemaParticle.cs
- RepeatButton.cs
- MutexSecurity.cs
- MetaColumn.cs
- TextRenderer.cs
- EventSourceCreationData.cs
- GetUserPreferenceRequest.cs
- ByteStack.cs
- RNGCryptoServiceProvider.cs
- UnsafeNativeMethods.cs
- EditingScopeUndoUnit.cs
- LOSFormatter.cs
- LocalsItemDescription.cs
- SynchronizedDisposablePool.cs
- StaticContext.cs
- HashSet.cs
- RuleSet.cs
- AnnotationStore.cs
- DataGridCaption.cs
- AttributedMetaModel.cs
- Permission.cs
- ReadContentAsBinaryHelper.cs
- keycontainerpermission.cs
- BufferModesCollection.cs
- UrlPath.cs
- ContextMenu.cs
- Int16Converter.cs
- ConfigPathUtility.cs
- Stream.cs
- RegexNode.cs
- NullableDoubleMinMaxAggregationOperator.cs
- BmpBitmapDecoder.cs
- InitializationEventAttribute.cs
- ConfigurationSectionCollection.cs
- TypeSystemHelpers.cs
- ControlParameter.cs
- Vector.cs
- SingleAnimationUsingKeyFrames.cs
- TemplatedWizardStep.cs
- WebPartConnectVerb.cs
- HttpCookie.cs
- UIElement.cs
- SerializationInfoEnumerator.cs
- DataList.cs
- InertiaTranslationBehavior.cs
- CalendarDayButton.cs
- DownloadProgressEventArgs.cs
- TextDecorations.cs
- DeviceSpecificDesigner.cs
- HMACSHA1.cs
- XamlHostingSectionGroup.cs
- Int32Rect.cs
- WebPartPersonalization.cs
- WebPartEditorOkVerb.cs
- Quack.cs
- SiteMapDataSourceView.cs
- D3DImage.cs
- NativeCppClassAttribute.cs
- ArrayList.cs
- SoapDocumentMethodAttribute.cs
- PointKeyFrameCollection.cs
- ParsedAttributeCollection.cs
- UdpTransportBindingElement.cs