ネットワークインタフェース

hostent - ホスト名

インターネットホスト名からアドレスへの割り当ては、次のように hostent 構造体で示されます。

struct hostent {
	   char  *h_name;            /* ホストの正式名称 */
	   char  **h_aliases;        /* 別名リスト */
	   int   h_addrtype;         /* ホストアドレスのタイプ (AF_INET6 など) */
	   int   h_length;           /* アドレスの長さ */
	   char  **h_addr_list;      /* NULL で終わるアドレスのリスト */
};
/* 最初のアドレス、ネットワークバイトオーダー */
#define h_addr h_addr_list[0]

getipnodebyname(3SOCKET) は、インターネットホスト名を hostent 構造体に割り当てます。getipnodebyaddr(3SOCKET) は、インターネットホストアドレスを hostent 構造体に割り当てます。freehostent(3SOCKET) は、hostent 構造体のメモリーを解放します。inet_ntop(3SOCKET) は、インターネットホストアドレスを表示可能な文字列に割り当てます。

このルーチンは、ホストの名前、その別名、アドレスタイプ (アドレスファミリ)、および NULL で終わる可変長アドレスのリストを含む hostent 構造体を返します。このアドレスリストが必要なのは、ホストが多くのアドレスを持つことができるためです。h_addr 定義は下位互換性のためであり、この定義は hostent 構造体のアドレスリストの最初のアドレスです。