ETHER_ATON

Section: Linux Programmer's Manual (3)
Updated: 2014-07-08
IndexJM Home Page
 

名前

ether_aton, ether_ntoa, ether_ntohost, ether_hostton, ether_line, ether_ntoa_r, ether_aton_r - Ethernet アドレスの操作用関数 

書式

#include <netinet/ether.h>char *ether_ntoa(const struct ether_addr *addr);struct ether_addr *ether_aton(const char *asc);int ether_ntohost(char *hostname, const struct ether_addr *addr);int ether_hostton(const char *hostname, struct ether_addr *addr);int ether_line(const char *line, struct ether_addr *addr, char *hostname);
char *ether_ntoa_r(const struct ether_addr *addr, char *buf);struct ether_addr *ether_aton_r(const char *asc, struct ether_addr *addr);
 

説明

関数 ether_aton() は、標準的な 16進数とコロンの形式で書かれた 48ビットの Ethernet ホストアドレス ascを、ネットワークでのバイト順 (byte order) のバイナリデータに変換し、静的に割り当てられたバッファーに格納されたデータ へのポインターを返す。このバッファーは、これ以降の関数呼び出しで上書きされる。 アドレスが不正な場合、 ether_aton() は NULL を返す。

関数 ether_ntoa() は、ネットワークのバイト順で表された Ethernet ホストアドレス addr を、標準的な 16進数とコロンの形式の文字列に変換する。 但し、先頭の 0 は省略される。変換後の文字列は静的に割り当てられたバッファー に格納されて返される。このバッファーは、これ以降の関数呼び出しで上書きされる。

関数 ether_ntohost() は、Ethernet アドレスに対応するホスト名を /etc/ethersを検索して割り当てる。対応するホスト名が見つからなかった場合は、 非 0 を返す。

関数 ether_hostton() は、ホスト名に対応する Ethernet アドレスを /etc/ethersを検索して割り当てる。対応するホスト名が見つからなかった場合は、 非 0 を返す。

関数 ether_line() は、 /etc/ethers 形式になった行を解析し、 アドレスとホスト名の組を返す (/etc/ethers 形式は、Ethernet アドレス、ホスト名が空白文字 (whitespace) で区切られた書式で、'#' 以降はコメントとみなされる)。 解析できなかった場合は、非 0 を返す。 hostnameで指定されたバッファーは十分な長さが必要である。つまり、 line と同じ長さでなければならない。

関数 ether_ntoa_r() と ether_aton_r() は、 それぞれ ether_ntoa() とether_aton() の リエントラントでスレッドセーフなバージョンであり、 静的なバッファーを使用しない。

ether_addr 構造体は <net/ethernet.h> で次のように定義されている:

struct ether_addr { uint8_t ether_addr_octet[6];
}
 

属性

この節で使用されている用語の説明は attributes(7) を参照のこと。
InterfaceAttributeValue
ether_aton(),ether_ntoa()Thread safetyMT-Unsafe
ether_ntohost(),ether_hostton(),ether_line(),ether_ntoa_r(),ether_aton_r()Thread safetyMT-Safe
 

準拠

4.3BSD, SunOS. 

バグ

glibc 2.2.5 以前では、 ether_line() の実装はおかしい。 

関連項目

ethers(5) 

この文書について

この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報はhttp://www.kernel.org/doc/man-pages/ に書かれている。


関連キーワード

ether,addr,struct,ntoa,char,ETHER,アドレス,ホスト,ATON,aton 

Index

名前
書式
説明
属性
準拠
バグ
関連項目
この文書について

This document was created byman2html, using the manual pages.
Time: 20:43:04 GMT, August 08, 2017