プログラミングインタフェース

ホスト名 – hostent

インターネットホスト名とアドレスのマッピングは、gethostent(3NSL) に定義するように hostent 構造体によって表現されます。

struct hostent {
    char  *h_name;            /* official name of host */
    char  **h_aliases;        /* alias list */
    int   h_addrtype;         /* hostaddrtype(e.g.,AF_INET6) */
    int   h_length;           /* length of address */
    char  **h_addr_list;      /* list of addrs, null terminated */
};
/*1st addr, net byte order*/
#define h_addr h_addr_list[0]
getipnodebyname(3SOCKET)

インターネットホスト名を hostent 構造体にマッピングする

getipnodebyaddr(3SOCKET)

インターネットホストアドレスを hostent 構造体にマッピングする

freehostent(3SOCKET)

hostent 構造体のメモリーを解放する

inet_ntop(3SOCKET)

インターネットホストアドレスを文字列にマッピングする

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