File: net\System\Net\NetworkInformation\SystemIPAddressInformation.cs
Project: ndp\fx\src\System.csproj (System)

    /// <summary><para>
    ///    Provides support for ip configuation information and statistics.
namespace System.Net.NetworkInformation {
    using System.Net;
    using System.Net.Sockets;
    using System;
    using System.Runtime.InteropServices;
    using System.Collections;
    using System.ComponentModel;
    using System.Security.Permissions;
    using Microsoft.Win32;
    //this is the main addressinformation class that contains the ipaddress
    //and other properties
    internal class SystemIPAddressInformation:IPAddressInformation{
        IPAddress address;
        internal bool transient = false;
        internal bool dnsEligible = true;
        internal SystemIPAddressInformation(IPAddress address, AdapterAddressFlags flags) {
            this.address = address;
            transient = (flags & AdapterAddressFlags.Transient) > 0;
            dnsEligible = (flags & AdapterAddressFlags.DnsEligible) > 0;
        public override IPAddress Address{get {return address;}}
        /// <summary>The address is a cluster address and shouldn't be used by most applications.</summary>
        public override bool IsTransient{
            get {
                return (transient);
        /// <summary>This address can be used for DNS.</summary>
        public override bool IsDnsEligible{
            get {
                return (dnsEligible);