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
- TextRangeBase.cs
- Query.cs
- NavigationWindow.cs
- PerspectiveCamera.cs
- BinaryObjectWriter.cs
- AudioLevelUpdatedEventArgs.cs
- RenderData.cs
- CommandID.cs
- ResourceProviderFactory.cs
- NativeCompoundFileAPIs.cs
- HostedTcpTransportManager.cs
- ObjectTokenCategory.cs
- ToolbarAUtomationPeer.cs
- RegistrySecurity.cs
- CodeMemberProperty.cs
- BinaryExpression.cs
- Point3DCollection.cs
- CircleHotSpot.cs
- SqlExpressionNullability.cs
- SystemParameters.cs
- RemotingException.cs
- ChannelBinding.cs
- EditorPart.cs
- LogicalTreeHelper.cs
- PlatformCulture.cs
- OdbcError.cs
- GenericTypeParameterBuilder.cs
- ListComponentEditor.cs
- DesignObjectWrapper.cs
- StorageConditionPropertyMapping.cs
- SimpleApplicationHost.cs
- XmlFileEditor.cs
- TraceUtility.cs
- Relationship.cs
- IntSecurity.cs
- ResXResourceSet.cs
- XmlDigitalSignatureProcessor.cs
- SqlWriter.cs
- TraceLog.cs
- EntityDataSourceWrapper.cs
- ProtocolImporter.cs
- Trace.cs
- BypassElement.cs
- InputMethod.cs
- EnumerableCollectionView.cs
- Control.cs
- Point3DCollectionValueSerializer.cs
- BuildProviderAppliesToAttribute.cs
- DataControlButton.cs
- DependentTransaction.cs
- DecoderFallbackWithFailureFlag.cs
- Border.cs
- ValidationEventArgs.cs
- RoutedEventConverter.cs
- TargetInvocationException.cs
- RoutedEventConverter.cs
- ResourceProperty.cs
- WebMessageBodyStyleHelper.cs
- TextServicesCompartmentContext.cs
- DecimalStorage.cs
- ImageSourceConverter.cs
- AddInPipelineAttributes.cs
- LoggedException.cs
- NamespaceQuery.cs
- Vector3DAnimationBase.cs
- NameTable.cs
- ProviderConnectionPoint.cs
- SystemColorTracker.cs
- FrameworkPropertyMetadata.cs
- WebPartManagerInternals.cs
- OptimalTextSource.cs
- QueryOperator.cs
- GridViewCommandEventArgs.cs
- PrintPageEvent.cs
- JoinQueryOperator.cs
- GridViewDeletedEventArgs.cs
- SchemaTableOptionalColumn.cs
- XmlSchemaObjectTable.cs
- BamlLocalizationDictionary.cs
- Activator.cs
- DragCompletedEventArgs.cs
- Image.cs
- CorrelationManager.cs
- ReversePositionQuery.cs
- XmlCompatibilityReader.cs
- DataControlButton.cs
- mda.cs
- ProviderBase.cs
- Registration.cs
- Region.cs
- PreservationFileWriter.cs
- counter.cs
- CodeGroup.cs
- EpmSyndicationContentSerializer.cs
- XmlSchemaType.cs
- DependencyObject.cs
- MenuRendererStandards.cs
- XPathChildIterator.cs
- CellNormalizer.cs
- CollectionContainer.cs