Win32 API 日本語リファレンス
ホームNetworking.WinSock › NL_PREFIX_ORIGIN

NL_PREFIX_ORIGIN

列挙型
基底型i4

メンバー 6

名前10進16進説明
IpPrefixOriginOther00x0IP プレフィックスは、この列挙型で定義されている以外の提供元から提供されました。
IpPrefixOriginManual10x1IP アドレスプレフィックスは手動で指定されました。
IpPrefixOriginWellKnown20x2IP アドレスプレフィックスは、よく知られた提供元によるものです。
IpPrefixOriginDhcp30x3IP アドレスプレフィックスは DHCP の設定によって提供されました。
IpPrefixOriginRouterAdvertisement40x4IP アドレスプレフィックスは、ルーター アドバタイズメント (RA) によって取得されました。
IpPrefixOriginUnchanged160x10

IP アドレスプレフィックスは変更しないでください。この値は、ユニキャスト IP インターフェイスのプロパティを設定する際に、IP プレフィックスの生成元の値を変更しないでおく場合に使用します。

Note この列挙値は Windows Vista 以降でのみ使用できます。

公式ドキュメント

IP_PREFIX_ORIGIN 列挙型は、IPv4 または IPv6 アドレスプレフィックスの生成元を指定します。IP_ADAPTER_UNICAST_ADDRESS 構造体で使用されます。

解説(Remarks)

IP_PREFIX_ORIGIN 列挙型は、IP_ADAPTER_UNICAST_ADDRESS 構造体の PrefixOrigin メンバーで使用されます。

Windows Vista 以降向けにリリースされた Microsoft Windows Software Development Kit (SDK) では、ヘッダーファイルの構成が変更され、IP_PREFIX_ORIGIN 列挙型は Nldef.h ヘッダーファイルで定義されています。このヘッダーファイルは Iptypes.h ヘッダーファイルによって自動的にインクルードされます。IP_PREFIX_ORIGIN 列挙型を使用するには、Iptypes.h ヘッダーファイルよりも前に Winsock2.h ヘッダーファイルをインクルードする必要があります。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum NL_PREFIX_ORIGIN : int {
    IpPrefixOriginOther = 0,
    IpPrefixOriginManual = 1,
    IpPrefixOriginWellKnown = 2,
    IpPrefixOriginDhcp = 3,
    IpPrefixOriginRouterAdvertisement = 4,
    IpPrefixOriginUnchanged = 16
} NL_PREFIX_ORIGIN;
public enum NL_PREFIX_ORIGIN : int
{
    IpPrefixOriginOther = 0,
    IpPrefixOriginManual = 1,
    IpPrefixOriginWellKnown = 2,
    IpPrefixOriginDhcp = 3,
    IpPrefixOriginRouterAdvertisement = 4,
    IpPrefixOriginUnchanged = 16,
}
Public Enum NL_PREFIX_ORIGIN As Integer
    IpPrefixOriginOther = 0
    IpPrefixOriginManual = 1
    IpPrefixOriginWellKnown = 2
    IpPrefixOriginDhcp = 3
    IpPrefixOriginRouterAdvertisement = 4
    IpPrefixOriginUnchanged = 16
End Enum
import enum

class NL_PREFIX_ORIGIN(enum.IntEnum):
    IpPrefixOriginOther = 0
    IpPrefixOriginManual = 1
    IpPrefixOriginWellKnown = 2
    IpPrefixOriginDhcp = 3
    IpPrefixOriginRouterAdvertisement = 4
    IpPrefixOriginUnchanged = 16
// NL_PREFIX_ORIGIN
pub const IpPrefixOriginOther: i32 = 0;
pub const IpPrefixOriginManual: i32 = 1;
pub const IpPrefixOriginWellKnown: i32 = 2;
pub const IpPrefixOriginDhcp: i32 = 3;
pub const IpPrefixOriginRouterAdvertisement: i32 = 4;
pub const IpPrefixOriginUnchanged: i32 = 16;
// NL_PREFIX_ORIGIN
const (
	IpPrefixOriginOther int32 = 0
	IpPrefixOriginManual int32 = 1
	IpPrefixOriginWellKnown int32 = 2
	IpPrefixOriginDhcp int32 = 3
	IpPrefixOriginRouterAdvertisement int32 = 4
	IpPrefixOriginUnchanged int32 = 16
)
const
  IpPrefixOriginOther = 0;
  IpPrefixOriginManual = 1;
  IpPrefixOriginWellKnown = 2;
  IpPrefixOriginDhcp = 3;
  IpPrefixOriginRouterAdvertisement = 4;
  IpPrefixOriginUnchanged = 16;
// NL_PREFIX_ORIGIN
pub const IpPrefixOriginOther: i32 = 0;
pub const IpPrefixOriginManual: i32 = 1;
pub const IpPrefixOriginWellKnown: i32 = 2;
pub const IpPrefixOriginDhcp: i32 = 3;
pub const IpPrefixOriginRouterAdvertisement: i32 = 4;
pub const IpPrefixOriginUnchanged: i32 = 16;
const
  IpPrefixOriginOther* = 0
  IpPrefixOriginManual* = 1
  IpPrefixOriginWellKnown* = 2
  IpPrefixOriginDhcp* = 3
  IpPrefixOriginRouterAdvertisement* = 4
  IpPrefixOriginUnchanged* = 16
enum NL_PREFIX_ORIGIN : int {
    IpPrefixOriginOther = 0,
    IpPrefixOriginManual = 1,
    IpPrefixOriginWellKnown = 2,
    IpPrefixOriginDhcp = 3,
    IpPrefixOriginRouterAdvertisement = 4,
    IpPrefixOriginUnchanged = 16,
}
#define global IpPrefixOriginOther               0x0
#define global IpPrefixOriginManual              0x1
#define global IpPrefixOriginWellKnown           0x2
#define global IpPrefixOriginDhcp                0x3
#define global IpPrefixOriginRouterAdvertisement 0x4
#define global IpPrefixOriginUnchanged           0x10