総合手引 | セクション 3 | English | オプション |
#include <sys/types.h>
#include <sys/socket.h>
#include <net/ethernet.h>
/* * イーサネット(MAC)アドレスのバイト数 */ #define ETHER_ADDR_LEN 6/* * 48 ビットイーサネットアドレスの構造体 */ struct ether_addr { u_char octet[ETHER_ADDR_LEN]; };
ether_line() 関数は、 ethers(5) 形式の ASCII 文字列である l を走査し、文字列で指定されたイーサネットアドレスを e に設定し、ホスト名を h に設定します。 この関数は、 /etc/ethers の行をその構成部分にパースするのに使用されます。
ether_aton() 関数は、イーサネットアドレスの ASCII 表現を ether_addr 構造体に変換します。 同様に、 ether_ntoa() は、 ether_addr 構造体として指定されたイーサネットアドレスを ASCII 文字列に変換します。
ether_ntohost() 関数と ether_hostton() 関数は、イーサネットアドレスを /etc/ethers データベースで指定された対応するホスト名にマップします。 ether_ntohost() は、イーサネットアドレスからホスト名への変換を行い、 ether_hostton() は、ホスト名からイーサネットアドレスへの変換を行います。
ether_ntoa() は、処理が成功するとイーサネットアドレスの ASCII 表現が入った文字列へのポインタを返します。 与えられた ether_addr 構造体を変換できなかった場合は、 NULL ポインタを返します。 同じように、 ether_aton() は成功すると ether_addr 構造体へのポインタを返し、失敗すると NULL ポインタを返します。
ether_ntohost() 関数と ether_hostton() 関数は両方とも、成功した場合は 0 を返し、 /etc/ethers データベース内に一致するものを見つけられなかった場合は 0 でない値を返します。
ETHERS (3) | April 12, 1995 |
総合手引 | セクション 3 | English | オプション |
このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.
“ | This philosophy, in the hands of amateurs, leads to inexplicably mind-numbing botches like the existence of two programs, “head” and “tail,” which print the first part or the last part of a file, depending. Even though their operations are duals of one another, “head” and “tail” are different programs, written by different authors, and take different options! | ” |
— The Unix Haters' handbook |