inet_makeaddr サブルーチン

目的

アプリケーションによって提供されるネットワーク ID とホスト ID に基づく Internet Protocol アドレスを含む構造体を戻します。

ライブラリー

標準 C ライブラリー (libc.a)

構文

#include <sys/socket.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
struct in_addr inet_makeaddr ( Net,  LocalNetAddr)
int Net, LocalNetAddr;

説明

inet_makeaddr サブルーチンは、アプリケーションによって (整数型として) 提供されるネットワーク ID とホスト ID から Internet Protocol (IP) アドレスを形成します。 アプリケーションがクラス A ネットワーク ID を提供する場合、 inet_makeaddr サブルーチンは、最上位バイトのネット ID、ホスト ID の論理積、および最下位 3 バイトの 0x00FFFFFF を使用して、IP アドレスを形成します。 アプリケーションがクラス B ネットワーク ID を提供する場合、 inet_makeaddr サブルーチンは、2 つの最上位バイトのネット ID と、ホスト ID と 0x0000FFFF の論理積を使用して、最下位の 2 バイトの順序で IP アドレスを形成します。 アプリケーションがクラス A またはクラス B のいずれのネットワーク ID も提供しない場合、 inet_makeaddr サブルーチンは、上位 3 バイトのネットワーク ID、ホスト ID の論理積、および最下位バイトの 0x0000FFFF を使用して IP アドレスを形成します。

inet_makeaddr サブルーチンは、IP アドレス・フォーマットがネットワーク順序に準拠していることを確認します。最初のバイトは上位バイトを表します。 inet_makeaddr サブルーチンは、IP アドレスを符号なし long 値として構造体に保管します。

アプリケーションは、IP アドレスのネットワーク ID とホスト ID がクラス A、B、または C に準拠していることを確認する必要があります。 inet_makeaddr サブルーチンは、非準拠番号をクラス C アドレスとして処理します。

inet_makeaddr サブルーチンは、 アドレス内 構造体に IP アドレス・フィールドのみが含まれていることを予期します。 アプリケーションが アドレス内 構造体を定義していない場合、 inet_makeaddr サブルーチンによって アドレス内 に戻される値は未定義です。

inet_makeaddr サブルーチンを含むすべてのアプリケーションは、 BSD (_BSD) マクロを特定の値に設定してコンパイルする必要があります。 許容値は 43 および 44 です。 さらに、すべてのソケット・アプリケーションに BSD libbsd.a ライブラリーを組み込む必要があります。

パラメーター

項目 説明
正味 インターネット・ネットワーク番号が入っています。
LocalNetAddr ローカル・ネットワーク・アドレスが入っています。

戻り値

正常終了すると、 inet_makeaddr サブルーチンは IP アドレスを含む構造体を戻します。

inet_makeaddrサブルーチンが失敗した場合、サブルーチンは-1を返す。

ファイル

項目 説明
 /etc/hosts ホスト名が入っています。