LINK_ADDR

Section: C Library Functions (3)
索引 jman

BSD mandoc
 

索引

名称

link_addr link_ntoa - リンクレベルアクセス用基本アドレス指定ルーチン  

索引

ライブラリ

Lb libc  

索引

書式

In sys/types.h In sys/socket.h In net/if_dl.h Ft void Fn link_addr const char *addr struct sockaddr_dl *sdl Ft char * Fn link_ntoa const struct sockaddr_dl *sdl  

索引

解説

Fn link_addr ルーチンは、リンクレベルアドレスを表す文字列を解釈し、 システムコールで使用するのに適したバイナリ情報を返します。 Fn link_ntoa ルーチンは、リンクレベルアドレスを引数に取り、リンクレベルアドレス自身、 存在する場合はそのインタフェース名や番号などを含んだ、現在の情報を示す ASCII 文字列を返します。 この機能はまだ試用段階であり、変更される可能性があります。

Fn link_addr に対して、文字列 Fa addr には、 ifconfig(8) の第一引数となりうる ``name unit-number'' という形の任意指定のネットワークインタフェース識別子を含むことができ、 その後にコロン、そしてピリオドで区切られた 16 進数の組の形の インタフェースアドレスが続きます。 それぞれの組はアドレスの 1 バイトを示しており、 アドレスバイトは左から右へ、低位のバイトから高位のバイトへと占められます。

つまり le0:8.0.9.13.d.30 は 1 つ目の Lance イーサネットインタフェースへ転送される イーサネットアドレスを表します。

これらの関数を直接使うのは避けられる傾向があり、むしろ addr2ascii(3) インタフェースが使われます。 しかし、このインタフェースはまだ広くは実装されていないので、 移植性のあるプログラムでは、このインタフェースに依存するわけにはいきません。  

索引

戻り値

Fn link_ntoa は、常にヌルで終了する文字列を返します。 Fn link_addr 関数は戻り値を返しません ( Sx バグ 参照のこと)。  

索引

関連項目

addr2ascii(3)  

索引

歴史

Fn link_addr および Fn link_ntoa 関数は BSD 4.3 Reno で登場しました。  

索引

バグ

Fn link_ntoa の戻り値は静的なメモリ領域にあります。

関数 Fn link_addr は、不適切な形式の入力を診断する機能が必要であり、 これを認識するあいまいでない方法が必要となります。

リンクソケットアドレスの sdl_len フィールドが 0 の場合、 Fn link_ntoa は、インタフェースアドレスバイトの前にコロンを挿入しません。 変換されたアドレスが、最初のコロンが挿入されずに Fn link_addr に渡された場合、この関数はアドレスを正しく解釈しないでしょう。


 

索引

Index

名称
ライブラリ
書式
解説
戻り値
関連項目
歴史
バグ

jman



Time: 07:06:57 GMT, January 12, 2009