Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Net / System / Net / Mail / SmtpAuthenticationManager.cs / 1 / 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; } } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CodeArrayCreateExpression.cs
- UpdateCompiler.cs
- SymmetricCryptoHandle.cs
- ZipIOEndOfCentralDirectoryBlock.cs
- ObjectCacheSettings.cs
- WebPartCollection.cs
- SelectionHighlightInfo.cs
- SqlError.cs
- SymLanguageType.cs
- MergablePropertyAttribute.cs
- WindowProviderWrapper.cs
- Subtree.cs
- WindowProviderWrapper.cs
- Grid.cs
- DataTableTypeConverter.cs
- CaseInsensitiveComparer.cs
- TimeStampChecker.cs
- SafeNativeMethodsMilCoreApi.cs
- DataBindingExpressionBuilder.cs
- HtmlTableCell.cs
- StylusSystemGestureEventArgs.cs
- XPathNodeList.cs
- OpenTypeLayoutCache.cs
- FormParameter.cs
- SharedUtils.cs
- SynchronizationContext.cs
- SiblingIterators.cs
- DataSourceCacheDurationConverter.cs
- SchemaLookupTable.cs
- EditorPartCollection.cs
- WebPartConnectionsDisconnectVerb.cs
- ImageConverter.cs
- WebPartConnectionsCancelVerb.cs
- CannotUnloadAppDomainException.cs
- Shared.cs
- Context.cs
- QilName.cs
- ToolStripTextBox.cs
- ServiceModelConfigurationSection.cs
- Signature.cs
- MultiView.cs
- DataControlPagerLinkButton.cs
- ContainerUtilities.cs
- NativeMethods.cs
- HitTestParameters3D.cs
- Expander.cs
- TrimSurroundingWhitespaceAttribute.cs
- DataGridRowHeader.cs
- BamlLocalizableResourceKey.cs
- UserPersonalizationStateInfo.cs
- Directory.cs
- Underline.cs
- WorkflowDefinitionDispenser.cs
- SpanIndex.cs
- DynamicMetaObject.cs
- WebPartUserCapability.cs
- TextParentUndoUnit.cs
- DPAPIProtectedConfigurationProvider.cs
- ReflectionHelper.cs
- PagedDataSource.cs
- WebPartPersonalization.cs
- FrameworkContextData.cs
- ElementMarkupObject.cs
- ClientConvert.cs
- ConfigurationManagerHelperFactory.cs
- TemplatePagerField.cs
- HtmlContainerControl.cs
- TypeCodeDomSerializer.cs
- NullExtension.cs
- HttpClientCertificate.cs
- NavigatorInput.cs
- DynamicRendererThreadManager.cs
- TagMapCollection.cs
- MetricEntry.cs
- TripleDESCryptoServiceProvider.cs
- Menu.cs
- DbProviderFactory.cs
- NameTable.cs
- CheckableControlBaseAdapter.cs
- MobileListItem.cs
- SAPIEngineTypes.cs
- ToolStripDropDownMenu.cs
- CustomExpressionEventArgs.cs
- Transactions.cs
- RegexCode.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- streamingZipPartStream.cs
- ToolStripManager.cs
- X509Extension.cs
- InlineCollection.cs
- AutomationAttributeInfo.cs
- HandlerFactoryWrapper.cs
- ResourceProviderFactory.cs
- FlowNode.cs
- XmlSchemaComplexType.cs
- VirtualizingPanel.cs
- VectorCollection.cs
- SoapFault.cs
- RelationshipSet.cs
- SecurityElementBase.cs