Code:
/ FX-1434 / FX-1434 / 1.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
- TranslateTransform3D.cs
- Calendar.cs
- ClientSideQueueItem.cs
- ModuleBuilder.cs
- ListSortDescription.cs
- CompilerTypeWithParams.cs
- WindowsFormsHelpers.cs
- dataobject.cs
- VBCodeProvider.cs
- CodeTypeReferenceCollection.cs
- LightweightCodeGenerator.cs
- EllipseGeometry.cs
- FormsAuthenticationUserCollection.cs
- MimeTypeMapper.cs
- ConsoleKeyInfo.cs
- HuffCodec.cs
- NoClickablePointException.cs
- SessionPageStatePersister.cs
- EtwTrace.cs
- MultiPageTextView.cs
- EDesignUtil.cs
- PublisherMembershipCondition.cs
- BaseParser.cs
- CopyAttributesAction.cs
- MediaTimeline.cs
- TrustLevelCollection.cs
- DynamicILGenerator.cs
- SafeRightsManagementHandle.cs
- BrowserCapabilitiesFactory.cs
- ReaderWriterLockSlim.cs
- ToolStripItem.cs
- SiteMap.cs
- Update.cs
- FormsIdentity.cs
- OdbcHandle.cs
- MenuItem.cs
- DesignTimeParseData.cs
- SelectionRangeConverter.cs
- XmlNode.cs
- XmlSortKey.cs
- SqlDataSourceCommandParser.cs
- GetPageCompletedEventArgs.cs
- TextFormatterContext.cs
- ColorConvertedBitmap.cs
- ContainerControl.cs
- RtType.cs
- AttributeUsageAttribute.cs
- InitializingNewItemEventArgs.cs
- GroupBox.cs
- Vector3DAnimationBase.cs
- Bold.cs
- StylusDevice.cs
- SoapFault.cs
- NetMsmqSecurityMode.cs
- Funcletizer.cs
- BinaryCommonClasses.cs
- PermissionSetTriple.cs
- CacheMemory.cs
- SecurityAlgorithmSuite.cs
- LabelInfo.cs
- Shared.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- ExceptionUtil.cs
- FixedTextPointer.cs
- PropertyConverter.cs
- AnnotationService.cs
- StorageEntityContainerMapping.cs
- ObjectDataSourceStatusEventArgs.cs
- ToolBarDesigner.cs
- SpellerInterop.cs
- HtmlControl.cs
- Annotation.cs
- Base64Stream.cs
- GetCardDetailsRequest.cs
- GraphicsState.cs
- Compiler.cs
- SpellerInterop.cs
- ChangeToolStripParentVerb.cs
- StreamUpgradeInitiator.cs
- CommonProperties.cs
- ObjectNotFoundException.cs
- SelectionWordBreaker.cs
- ByteStack.cs
- DataGridSortCommandEventArgs.cs
- NativeCompoundFileAPIs.cs
- ShaderEffect.cs
- CreateWorkflowOwnerCommand.cs
- IInstanceTable.cs
- CallbackHandler.cs
- XmlnsPrefixAttribute.cs
- ExpandCollapseProviderWrapper.cs
- InfoCardSymmetricCrypto.cs
- SafeEventLogReadHandle.cs
- InputReport.cs
- MatrixValueSerializer.cs
- RectangleHotSpot.cs
- AssemblySettingAttributes.cs
- FormViewDeleteEventArgs.cs
- HostingPreferredMapPath.cs
- DocumentationServerProtocol.cs