Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Net / System / Net / SecureProtocols / AuthenticatedStream.cs / 1305376 / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HierarchicalDataSourceControl.cs
- DataGridViewLinkCell.cs
- XPathDescendantIterator.cs
- PagePropertiesChangingEventArgs.cs
- IpcServerChannel.cs
- WeakReadOnlyCollection.cs
- SpellerHighlightLayer.cs
- DataControlImageButton.cs
- SizeF.cs
- SslStreamSecurityUpgradeProvider.cs
- DataReceivedEventArgs.cs
- ToolStripDropDownMenu.cs
- ConfigurationSectionGroupCollection.cs
- SqlDataSourceParameterParser.cs
- TimeSpanHelper.cs
- DataDocumentXPathNavigator.cs
- OptimizedTemplateContent.cs
- DetailsViewRowCollection.cs
- TextEndOfParagraph.cs
- ConfigurationStrings.cs
- SettingsAttributeDictionary.cs
- RegexCaptureCollection.cs
- EntityAdapter.cs
- RowVisual.cs
- WebServicesInteroperability.cs
- PrimitiveCodeDomSerializer.cs
- FixedSchema.cs
- IsolatedStorageSecurityState.cs
- ListViewDeleteEventArgs.cs
- FormViewUpdatedEventArgs.cs
- CodeNamespaceCollection.cs
- FlowLayout.cs
- CollectionViewSource.cs
- DbDataRecord.cs
- InstanceData.cs
- TableLayoutRowStyleCollection.cs
- HttpProfileGroupBase.cs
- BinaryEditor.cs
- TypeSystemProvider.cs
- DataBinding.cs
- Registry.cs
- PagesChangedEventArgs.cs
- LogLogRecord.cs
- invalidudtexception.cs
- DefaultParameterValueAttribute.cs
- DiscardableAttribute.cs
- Size.cs
- SmiContext.cs
- DataSourceExpression.cs
- OSFeature.cs
- XmlSecureResolver.cs
- HandlerFactoryWrapper.cs
- Triangle.cs
- GridProviderWrapper.cs
- PanelStyle.cs
- SqlCharStream.cs
- Activation.cs
- SettingsBindableAttribute.cs
- OperationContractAttribute.cs
- BeginStoryboard.cs
- SqlDataSourceView.cs
- Win32Native.cs
- IDQuery.cs
- CapabilitiesUse.cs
- XmlNamespaceManager.cs
- CodeIterationStatement.cs
- ExpandSegmentCollection.cs
- ObjectDataSourceMethodEventArgs.cs
- ProxyWebPartConnectionCollection.cs
- ComboBox.cs
- BinaryFormatter.cs
- UIElement3DAutomationPeer.cs
- DataGridViewLayoutData.cs
- XmlNodeList.cs
- NotImplementedException.cs
- GridLengthConverter.cs
- ProfileEventArgs.cs
- X509SecurityToken.cs
- WebPartDescription.cs
- RetrieveVirtualItemEventArgs.cs
- StreamInfo.cs
- HttpsHostedTransportConfiguration.cs
- DataBindEngine.cs
- MessageSmuggler.cs
- PerformanceCounterManager.cs
- DataControlFieldCell.cs
- ControlPersister.cs
- XPathExpr.cs
- SqlConnection.cs
- TraceHandler.cs
- CategoryAttribute.cs
- RelationshipEndCollection.cs
- StreamMarshaler.cs
- QilStrConcatenator.cs
- DNS.cs
- DataGridRowHeaderAutomationPeer.cs
- NTAccount.cs
- BrowserDefinition.cs
- BrowserCapabilitiesFactoryBase.cs
- RequestResizeEvent.cs