Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Net / System / Net / Mail / SmtpAuthenticationManager.cs / 1305376 / SmtpAuthenticationManager.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Net.Mail
{
using System;
using System.Collections;
using System.IO;
using System.Net;
internal static class SmtpAuthenticationManager
{
static ArrayList modules = new ArrayList();
static SmtpAuthenticationManager()
{
//
#if !FEATURE_PAL
if (ComNetOS.IsWin2K)
{
// Negotiate supported only if Win2K or later
Register(new SmtpNegotiateAuthenticationModule());
}
Register(new SmtpNtlmAuthenticationModule());
Register(new SmtpDigestAuthenticationModule());
#endif // !FEATURE_PAL
Register(new SmtpLoginAuthenticationModule());
}
internal static void Register(ISmtpAuthenticationModule module)
{
if (module == null)
throw new ArgumentNullException("module");
lock (modules)
{
modules.Add(module);
}
}
/*
// Consider removing.
internal static void Unregister(ISmtpAuthenticationModule module)
{
if (module == null)
throw new ArgumentNullException("module");
lock (modules)
{
modules.Remove(module);
}
}
*/
/*
// Consider removing.
internal static void Unregister(string authenticationType)
{
if (authenticationType == null)
throw new ArgumentNullException("authenticationType");
lock (modules)
{
foreach (ISmtpAuthenticationModule module in modules)
{
if (0 == string.Compare(module.AuthenticationType, authenticationType, StringComparison.OrdinalIgnoreCase))
{
modules.Remove(module);
}
}
}
}
*/
internal static ISmtpAuthenticationModule[] GetModules()
{
lock (modules)
{
ISmtpAuthenticationModule[] copy = new ISmtpAuthenticationModule[modules.Count];
modules.CopyTo(0, copy, 0, modules.Count);
return copy;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Net.Mail
{
using System;
using System.Collections;
using System.IO;
using System.Net;
internal static class SmtpAuthenticationManager
{
static ArrayList modules = new ArrayList();
static SmtpAuthenticationManager()
{
//
#if !FEATURE_PAL
if (ComNetOS.IsWin2K)
{
// Negotiate supported only if Win2K or later
Register(new SmtpNegotiateAuthenticationModule());
}
Register(new SmtpNtlmAuthenticationModule());
Register(new SmtpDigestAuthenticationModule());
#endif // !FEATURE_PAL
Register(new SmtpLoginAuthenticationModule());
}
internal static void Register(ISmtpAuthenticationModule module)
{
if (module == null)
throw new ArgumentNullException("module");
lock (modules)
{
modules.Add(module);
}
}
/*
// Consider removing.
internal static void Unregister(ISmtpAuthenticationModule module)
{
if (module == null)
throw new ArgumentNullException("module");
lock (modules)
{
modules.Remove(module);
}
}
*/
/*
// Consider removing.
internal static void Unregister(string authenticationType)
{
if (authenticationType == null)
throw new ArgumentNullException("authenticationType");
lock (modules)
{
foreach (ISmtpAuthenticationModule module in modules)
{
if (0 == string.Compare(module.AuthenticationType, authenticationType, StringComparison.OrdinalIgnoreCase))
{
modules.Remove(module);
}
}
}
}
*/
internal static ISmtpAuthenticationModule[] GetModules()
{
lock (modules)
{
ISmtpAuthenticationModule[] copy = new ISmtpAuthenticationModule[modules.Count];
modules.CopyTo(0, copy, 0, modules.Count);
return copy;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- EncodingInfo.cs
- DataGridViewButtonColumn.cs
- BinaryNode.cs
- UnrecognizedAssertionsBindingElement.cs
- Line.cs
- UnsafeCollabNativeMethods.cs
- XmlNode.cs
- XmlValueConverter.cs
- XmlSchemaIdentityConstraint.cs
- SingleResultAttribute.cs
- HtmlTextArea.cs
- Transform3D.cs
- StringFreezingAttribute.cs
- AssociationEndMember.cs
- PostBackOptions.cs
- SmtpNtlmAuthenticationModule.cs
- printdlgexmarshaler.cs
- NoneExcludedImageIndexConverter.cs
- XPathCompileException.cs
- LocationUpdates.cs
- SchemaMapping.cs
- RoleService.cs
- Image.cs
- JoinTreeSlot.cs
- BasicAsyncResult.cs
- HScrollProperties.cs
- UnknownBitmapDecoder.cs
- NativeMethods.cs
- EmptyImpersonationContext.cs
- ExpressionVisitor.cs
- UnsafePeerToPeerMethods.cs
- DBPropSet.cs
- DataGridPagerStyle.cs
- ValidationPropertyAttribute.cs
- CodeNamespace.cs
- DependencyPropertyConverter.cs
- QilBinary.cs
- Grant.cs
- PartialToken.cs
- RNGCryptoServiceProvider.cs
- CodeEntryPointMethod.cs
- IPEndPoint.cs
- ImageAnimator.cs
- DetailsViewInsertedEventArgs.cs
- List.cs
- WpfXamlType.cs
- BamlMapTable.cs
- UniqueIdentifierService.cs
- DataGridViewColumnDividerDoubleClickEventArgs.cs
- ErrorTableItemStyle.cs
- Canvas.cs
- SiteMap.cs
- RecognitionEventArgs.cs
- EntityStoreSchemaGenerator.cs
- DoubleAnimation.cs
- CommandTreeTypeHelper.cs
- ReferenceService.cs
- PropertyExpression.cs
- CodeLinePragma.cs
- ScriptingJsonSerializationSection.cs
- PersonalizableAttribute.cs
- TransformerInfoCollection.cs
- PeerNode.cs
- XmlImplementation.cs
- ReadWriteObjectLock.cs
- SafeBitVector32.cs
- CachingParameterInspector.cs
- AutomationElement.cs
- SHA384Managed.cs
- ZipIOFileItemStream.cs
- SubstitutionList.cs
- SByteStorage.cs
- CorruptingExceptionCommon.cs
- Selector.cs
- ExtentKey.cs
- MenuItemStyleCollection.cs
- QilTargetType.cs
- FrameworkPropertyMetadata.cs
- EntityContainerEntitySetDefiningQuery.cs
- ReadOnlyHierarchicalDataSourceView.cs
- COM2IDispatchConverter.cs
- FileUtil.cs
- CancelEventArgs.cs
- FontNamesConverter.cs
- DataExpression.cs
- XmlComplianceUtil.cs
- ExtentKey.cs
- DropDownList.cs
- CursorConverter.cs
- DefaultShape.cs
- SourceFileBuildProvider.cs
- ResourceAssociationTypeEnd.cs
- KeyPressEvent.cs
- RangeValuePattern.cs
- SingleAnimation.cs
- ObjectConverter.cs
- AssemblyBuilderData.cs
- CmsInterop.cs
- BooleanToSelectiveScrollingOrientationConverter.cs
- ParameterCollection.cs