Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Net / System / Net / Sockets / MulticastOption.cs / 1 / MulticastOption.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net.Sockets { using System.Net; ////// public class MulticastOption { IPAddress group; IPAddress localAddress; int ifIndex; ////// Contains option values /// for IP multicast packets. /// ////// public MulticastOption(IPAddress group, IPAddress mcint) { if (group == null) { throw new ArgumentNullException("group"); } if (mcint == null) { throw new ArgumentNullException("mcint"); } Group = group; LocalAddress = mcint; } public MulticastOption(IPAddress group, int interfaceIndex) { if (group == null) { throw new ArgumentNullException("group"); } if ( interfaceIndex < 0 || interfaceIndex > 0x00FFFFFF ) { throw new ArgumentOutOfRangeException("interfaceIndex"); } #if !FEATURE_PAL if (!ComNetOS.IsPostWin2K){ throw new PlatformNotSupportedException(SR.GetString(SR.WinXPRequired)); } #endif // !FEATURE_PAL Group = group; ifIndex = interfaceIndex; } ////// Creates a new instance of the MulticaseOption class with the specified IP /// address group and local address. /// ////// public MulticastOption(IPAddress group) { if (group == null) { throw new ArgumentNullException("group"); } Group = group; LocalAddress = IPAddress.Any; } ////// Creates a new version of the MulticastOption class for the specified /// group. /// ////// public IPAddress Group { get { return group; } set { group = value; } } ////// Sets the IP address of a multicast group. /// ////// public IPAddress LocalAddress { get { return localAddress; } set { ifIndex = 0; localAddress = value; } } public int InterfaceIndex { get { return ifIndex; } set { if ( value < 0 || value > 0x00FFFFFF ) { throw new ArgumentOutOfRangeException("value"); } #if !FEATURE_PAL if (!ComNetOS.IsPostWin2K){ throw new PlatformNotSupportedException(SR.GetString(SR.WinXPRequired)); } #endif // !FEATURE_PAL localAddress = null; ifIndex = value; } } } // class MulticastOption ////// Sets the local address of a multicast group. /// ////// public class IPv6MulticastOption { IPAddress m_Group; long m_Interface; ////// Contains option values for joining an IPv6 multicast group. /// ////// public IPv6MulticastOption(IPAddress group, long ifindex) { if (group == null) { throw new ArgumentNullException("group"); } if ( ifindex < 0 || ifindex > 0x00000000FFFFFFFF ) { throw new ArgumentOutOfRangeException("ifindex"); } Group = group; InterfaceIndex = ifindex; } ////// Creates a new instance of the MulticaseOption class with the specified IP /// address group and local address. /// ////// public IPv6MulticastOption(IPAddress group) { if (group == null) { throw new ArgumentNullException("group"); } Group = group; InterfaceIndex = 0; } ////// Creates a new version of the MulticastOption class for the specified /// group. /// ////// public IPAddress Group { get { return m_Group; } set { if (value == null) { throw new ArgumentNullException("value"); } m_Group = value; } } ////// Sets the IP address of a multicast group. /// ////// public long InterfaceIndex { get { return m_Interface; } set { if ( value < 0 || value > 0x00000000FFFFFFFF ) { throw new ArgumentOutOfRangeException("value"); } m_Interface = value; } } } // class MulticastOptionIPv6 } // namespace System.Net.Sockets/// Sets the interface index. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MsmqTransportSecurity.cs
- TextFormatterContext.cs
- Baml2006SchemaContext.cs
- EventLog.cs
- Normalization.cs
- Tablet.cs
- WebRequestModulesSection.cs
- HtmlMobileTextWriter.cs
- WebPartConnectionCollection.cs
- SmiTypedGetterSetter.cs
- StrokeNodeOperations.cs
- FileIOPermission.cs
- ToolStripRenderer.cs
- XPathChildIterator.cs
- UserPreferenceChangedEventArgs.cs
- CodeConditionStatement.cs
- HashAlgorithm.cs
- ConfigXmlCDataSection.cs
- loginstatus.cs
- HyperLinkStyle.cs
- Mouse.cs
- SoapReflectionImporter.cs
- XmlTextWriter.cs
- CallContext.cs
- BinaryObjectInfo.cs
- EmptyControlCollection.cs
- PreservationFileWriter.cs
- BitmapDownload.cs
- TemplateBaseAction.cs
- ScrollViewer.cs
- StrokeCollectionConverter.cs
- DataGridPreparingCellForEditEventArgs.cs
- DesignerCalendarAdapter.cs
- InstalledVoice.cs
- TdsValueSetter.cs
- DataColumn.cs
- MissingSatelliteAssemblyException.cs
- CodeArrayCreateExpression.cs
- SamlDelegatingWriter.cs
- PersonalizationState.cs
- WinFormsSecurity.cs
- CompilerGlobalScopeAttribute.cs
- SQLDecimal.cs
- VSWCFServiceContractGenerator.cs
- TreeNodeCollectionEditor.cs
- OleCmdHelper.cs
- BitVector32.cs
- AppSecurityManager.cs
- TargetInvocationException.cs
- EventDescriptor.cs
- SoapElementAttribute.cs
- MatchingStyle.cs
- HiddenFieldPageStatePersister.cs
- AuthenticationModuleElementCollection.cs
- SvcMapFileLoader.cs
- ListViewInsertedEventArgs.cs
- SoapSchemaMember.cs
- UnionExpr.cs
- XamlStyleSerializer.cs
- PrimitiveCodeDomSerializer.cs
- ChildChangedEventArgs.cs
- EventArgs.cs
- ColumnWidthChangingEvent.cs
- BindingCompleteEventArgs.cs
- SchemaElement.cs
- MouseActionConverter.cs
- DateTimeStorage.cs
- StretchValidation.cs
- PrintControllerWithStatusDialog.cs
- EventlogProvider.cs
- safesecurityhelperavalon.cs
- HtmlGenericControl.cs
- HelpKeywordAttribute.cs
- LoginView.cs
- WebBrowserDocumentCompletedEventHandler.cs
- XsdDuration.cs
- FileDialogCustomPlacesCollection.cs
- StreamInfo.cs
- PersonalizableTypeEntry.cs
- Marshal.cs
- DisplayMemberTemplateSelector.cs
- CodeDefaultValueExpression.cs
- Object.cs
- FileDialogCustomPlacesCollection.cs
- SharedDp.cs
- OpenFileDialog.cs
- TypeToArgumentTypeConverter.cs
- TextModifierScope.cs
- StaticSiteMapProvider.cs
- RegisteredArrayDeclaration.cs
- Int16Animation.cs
- TemplateBindingExpression.cs
- SizeF.cs
- UserCancellationException.cs
- FixUpCollection.cs
- SetterBase.cs
- ListViewInsertionMark.cs
- BuildResultCache.cs
- UnSafeCharBuffer.cs
- XComponentModel.cs