Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Net / System / Net / NetworkInformation / SystemIcmpV6Statistics.cs / 1 / SystemIcmpV6Statistics.cs
////// namespace System.Net.NetworkInformation { using System.Net.Sockets; using System; using System.ComponentModel; internal enum IcmpV6StatType { DestinationUnreachable = 1, PacketTooBig = 2, TimeExceeded = 3, ParameterProblem = 4, EchoRequest = 128, EchoReply = 129, MembershipQuery = 130, MembershipReport = 131, MembershipReduction = 132, RouterSolicit = 133, RouterAdvertisement = 134, NeighborSolict = 135, NeighborAdvertisement = 136, Redirect = 137, }; /// /// Provides support for ip configuation information and statistics. /// Icmp statistics for Ipv6. internal class SystemIcmpV6Statistics:IcmpV6Statistics { MibIcmpInfoEx stats; internal SystemIcmpV6Statistics(){ if (!ComNetOS.IsPostWin2K){ throw new PlatformNotSupportedException(SR.GetString(SR.WinXPRequired)); } uint result = UnsafeNetInfoNativeMethods.GetIcmpStatisticsEx(out stats,AddressFamily.InterNetworkV6); if (result != IpHelperErrors.Success) { throw new NetworkInformationException((int)result); } } public override long MessagesSent{get {return (long)stats.outStats.dwMsgs;}} public override long MessagesReceived{get {return (long)stats.inStats.dwMsgs;}} public override long ErrorsSent{get {return (long)stats.outStats.dwErrors;}} public override long ErrorsReceived{get {return (long)stats.inStats.dwErrors;}} public override long DestinationUnreachableMessagesSent{ get { return stats.outStats.rgdwTypeCount[(long)IcmpV6StatType.DestinationUnreachable]; } } public override long DestinationUnreachableMessagesReceived{ get { return stats.inStats.rgdwTypeCount[(long)IcmpV6StatType.DestinationUnreachable]; } } public override long PacketTooBigMessagesSent{ get { return stats.outStats.rgdwTypeCount[(long)IcmpV6StatType.PacketTooBig]; } } public override long PacketTooBigMessagesReceived{ get { return stats.inStats.rgdwTypeCount[(long)IcmpV6StatType.PacketTooBig]; } } public override long TimeExceededMessagesSent{ get { return stats.outStats.rgdwTypeCount[(long)IcmpV6StatType.TimeExceeded]; } } public override long TimeExceededMessagesReceived{ get { return stats.inStats.rgdwTypeCount[(long)IcmpV6StatType.TimeExceeded]; } } public override long ParameterProblemsSent{ get { return stats.outStats.rgdwTypeCount[(long)IcmpV6StatType.ParameterProblem]; } } public override long ParameterProblemsReceived{ get { return stats.inStats.rgdwTypeCount[(long)IcmpV6StatType.ParameterProblem]; } } public override long EchoRequestsSent{ get { return stats.outStats.rgdwTypeCount[(long)IcmpV6StatType.EchoRequest]; } } public override long EchoRequestsReceived{ get { return stats.inStats.rgdwTypeCount[(long)IcmpV6StatType.EchoRequest]; } } public override long EchoRepliesSent{ get { return stats.outStats.rgdwTypeCount[(long)IcmpV6StatType.EchoReply]; } } public override long EchoRepliesReceived{ get { return stats.inStats.rgdwTypeCount[(long)IcmpV6StatType.EchoReply]; } } public override long MembershipQueriesSent{ get { return stats.outStats.rgdwTypeCount[(long)IcmpV6StatType.MembershipQuery]; } } public override long MembershipQueriesReceived{ get { return stats.inStats.rgdwTypeCount[(long)IcmpV6StatType.MembershipQuery]; } } public override long MembershipReportsSent{ get { return stats.outStats.rgdwTypeCount[(long)IcmpV6StatType.MembershipReport]; } } public override long MembershipReportsReceived{ get { return stats.inStats.rgdwTypeCount[(long)IcmpV6StatType.MembershipReport]; } } public override long MembershipReductionsSent{ get { return stats.outStats.rgdwTypeCount[(long)IcmpV6StatType.MembershipReduction]; } } public override long MembershipReductionsReceived{ get { return stats.inStats.rgdwTypeCount[(long)IcmpV6StatType.MembershipReduction]; } } public override long RouterAdvertisementsSent{ get { return stats.outStats.rgdwTypeCount[(long)IcmpV6StatType.RouterAdvertisement]; } } public override long RouterAdvertisementsReceived{ get { return stats.inStats.rgdwTypeCount[(long)IcmpV6StatType.RouterAdvertisement]; } } public override long RouterSolicitsSent{ get { return stats.outStats.rgdwTypeCount[(long)IcmpV6StatType.RouterSolicit]; } } public override long RouterSolicitsReceived{ get { return stats.inStats.rgdwTypeCount[(long)IcmpV6StatType.RouterSolicit]; } } public override long NeighborAdvertisementsSent{ get { return stats.outStats.rgdwTypeCount[(long)IcmpV6StatType.NeighborAdvertisement]; } } public override long NeighborAdvertisementsReceived{ get { return stats.inStats.rgdwTypeCount[(long)IcmpV6StatType.NeighborAdvertisement]; } } public override long NeighborSolicitsSent{ get { return stats.outStats.rgdwTypeCount[(long)IcmpV6StatType.NeighborSolict]; } } public override long NeighborSolicitsReceived{ get { return stats.inStats.rgdwTypeCount[(long)IcmpV6StatType.NeighborSolict]; } } public override long RedirectsSent{ get { return stats.outStats.rgdwTypeCount[(long)IcmpV6StatType.Redirect]; } } public override long RedirectsReceived{ get { return stats.inStats.rgdwTypeCount[(long)IcmpV6StatType.Redirect]; } } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TTSEngineTypes.cs
- GlobalAllocSafeHandle.cs
- TextAnchor.cs
- BitVector32.cs
- NumberAction.cs
- DynamicArgumentDesigner.xaml.cs
- SessionPageStateSection.cs
- DetailsViewInsertEventArgs.cs
- SystemThemeKey.cs
- WasAdminWrapper.cs
- SystemNetworkInterface.cs
- EventHandlersStore.cs
- ByteConverter.cs
- ValidationResult.cs
- WindowsScroll.cs
- ToolBar.cs
- IdentityModelStringsVersion1.cs
- CapabilitiesUse.cs
- PersonalizationProviderHelper.cs
- OdbcPermission.cs
- PrintPreviewGraphics.cs
- BrowserCapabilitiesFactory.cs
- RepeatButtonAutomationPeer.cs
- XmlMapping.cs
- DependencyPropertyKind.cs
- WSDualHttpBinding.cs
- SizeAnimationBase.cs
- WebZone.cs
- TypeDescriptor.cs
- TagNameToTypeMapper.cs
- RequestCacheEntry.cs
- CodeArgumentReferenceExpression.cs
- MarkupProperty.cs
- MediaEntryAttribute.cs
- SiteMapNodeItem.cs
- SiteMembershipCondition.cs
- oledbconnectionstring.cs
- FieldMetadata.cs
- XmlQueryTypeFactory.cs
- ConstraintCollection.cs
- SystemIcons.cs
- PartEditor.cs
- DataServiceCollectionOfT.cs
- TranslateTransform.cs
- Stackframe.cs
- AvTraceDetails.cs
- DataGridTable.cs
- IPEndPointCollection.cs
- FrameworkElement.cs
- XmlCompatibilityReader.cs
- ScrollViewer.cs
- MessageLogger.cs
- OrderedHashRepartitionEnumerator.cs
- UncommonField.cs
- DataGridTablesFactory.cs
- TargetParameterCountException.cs
- IxmlLineInfo.cs
- InputLanguage.cs
- HebrewNumber.cs
- NameValueConfigurationElement.cs
- JsonReaderWriterFactory.cs
- Slider.cs
- AsymmetricAlgorithm.cs
- MediaContext.cs
- ClientRuntimeConfig.cs
- SimpleFileLog.cs
- AsyncDataRequest.cs
- FolderNameEditor.cs
- TextTreeRootTextBlock.cs
- ParallelSeparator.xaml.cs
- BindingsSection.cs
- TdsParserHelperClasses.cs
- WindowsUserNameSecurityTokenAuthenticator.cs
- FloaterParagraph.cs
- MetadataSerializer.cs
- DecimalAnimation.cs
- IssuanceLicense.cs
- AddressAccessDeniedException.cs
- PointAnimation.cs
- AudioFormatConverter.cs
- ActivityCodeDomSerializer.cs
- TableStyle.cs
- CrossContextChannel.cs
- ManagedWndProcTracker.cs
- CollectionExtensions.cs
- RealProxy.cs
- ClockController.cs
- Encoding.cs
- StringComparer.cs
- HandlerMappingMemo.cs
- Object.cs
- RenderingEventArgs.cs
- UserPreferenceChangingEventArgs.cs
- WSSecurityXXX2005.cs
- ProofTokenCryptoHandle.cs
- DataColumnMappingCollection.cs
- CompModSwitches.cs
- XmlDataSource.cs
- XmlSerializerNamespaces.cs
- LinkConverter.cs