gethostent(3NSL) に定義されているように、インターネットホスト名からアドレスへのマッピングは 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]
インターネットホスト名を hostent 構造体にマッピングする
インターネットホストアドレスを hostent 構造体にマッピングする
hostent 構造体のメモリーを解放する
インターネットホストアドレスを表示可能な文字列にマッピングする
このルーチンは、ホストの名前、その別名、アドレスタイプ、および NULL で終わる可変長アドレスのリストを含む hostent 構造体を返します。このアドレスリストが必要なのは、ホストが多くのアドレスを持つことができるためです。h_addr 定義は下位互換性のためであり、この定義は hostent 構造体のアドレスリストの最初のアドレスです。