80 lines · 2.8 KB · C#
RawDownload
// Copyright (C) 2013 Lex Li// // Permission is hereby granted, free of charge, to any person obtaining a copy of this// software and associated documentation files (the "Software"), to deal in the Software// without restriction, including without limitation the rights to use, copy, modify, merge,// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons// to whom the Software is furnished to do so, subject to the following conditions://// The above copyright notice and this permission notice shall be included in all copies or// substantial portions of the Software.//// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER// DEALINGS IN THE SOFTWARE. /* * Created by SharpDevelop. * User: Lex * Date: 3/3/2013 * Time: 10:27 AM *  * To change this template use Tools | Options | Coding | Edit Standard Headers. */ using System.Net.NetworkInformation;using System;using GSF.Net.Snmp.Pipeline; namespace GSF.Net.Snmp.Objects{    /// <summary>    /// ifMtu object.    /// </summary>    internal sealed class IfMtu : ScalarObject    {        private readonly ISnmpData _data;         /// <summary>        /// Initializes a new instance of the <see cref="IfMtu"/> class.        /// </summary>        /// <param name="index">The index.</param>        /// <param name="networkInterface">The network interface.</param>        public IfMtu(int index, NetworkInterface networkInterface)            : base("1.3.6.1.2.1.2.2.1.4.{0}", index)        {            if (networkInterface.Supports(NetworkInterfaceComponent.IPv4))            {                IPv4InterfaceProperties pv4InterfaceProperties = networkInterface.GetIPProperties().GetIPv4Properties();                _data = new Integer32(pv4InterfaceProperties == null ? -1 : pv4InterfaceProperties.Mtu);            }            else            {                try                {                    _data = new Integer32(networkInterface.GetIPProperties().GetIPv6Properties().Mtu);                }				catch (NotImplementedException)				{					_data = new Integer32(0);				}            }        }         /// <summary>        /// Gets or sets the data.        /// </summary>        /// <value>        /// The data.        /// </value>        /// <exception cref="AccessFailureException"></exception>        public override ISnmpData Data        {            get { return _data; }            set { throw new AccessFailureException(); }        }    }}

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t