Rechercher une page de manuel
inet_pton
Langue: ja
Version: 2000-12-18 (fedora - 25/11/07)
Section: 3 (Bibliothèques de fonctions)
名前
inet_pton - ネットワークアドレス構造体を生成する書式
#include <sys/types.h> #include <sys/socket.h> #include <arpa/inet.h> int inet_pton(int af, const char *src, void *dst);
説明
この関数は文字列 src を、アドレスファミリー af のネットワークアドレス構造体に変換し、 dst にコピーする。inet_pton(3) は inet_addr(3) 関数を拡張して複数のアドレスファミリーを扱えるようにしたものである。 今後は inet_addr(3) は使わず、 inet_pton(3) を使うようにすると良いだろう。 現在サポートされているアドレスファミリーは以下の通り:
- AF_INET
- この場合 src はドット区切り 4 分割形式 "ddd.ddd.ddd.ddd" の IPv4 ネットワークアドレス文字列へのポインタとみなされる。 このアドレスは struct in_addr に変換されて dst にコピーされる。 dst は sizeof(struct in_addr) バイトの長さを持たなければならない。
- AF_INET6
- この場合 src は IPv6 ネットワークアドレスの文字列へのポインタとみなされる。 IPv6 アドレスの形式はどんなものでも構わない。 このアドレスは struct in6_addr に変換されて dst にコピーされる。 dst は sizeof(struct in6_addr) バイトの長さを持たなければならない。
古い 16 進形式や 8 進形式のいくつかは、 AF_INET のアドレスに指定することができない (inet_pton() はこれらの形式を拒否する)。
返り値
af がサポートされているアドレスファミリーでない場合には inet_pton() は負の値を返し、 errno に EAFNOSUPPORT を代入する。 src が指定されたアドレスファミリーに対する 正しいネットワークアドレス表記でない場合には inet_pton() は 0 を返す。 ネットワークアドレスの変換に成功した場合には inet_pton() は正の値を返す。準拠
POSIX.1-2001.バグ
AF_INET6 は IPv4 アドレスを認識しない。 そのような場合には IPv6 に明示的にマップされた IPv4 アドレスを src に与えなければならない。関連項目
inet_ntop(3)Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre