IPX

Section: C Library Functions (3)
索引 jman

BSD mandoc
 

索引

名称

ipx_addr ipx_ntoa - IPX アドレス変換ルーチン  

索引

ライブラリ

Lb libipx  

索引

書式

In sys/types.h In netipx/ipx.h Ft struct ipx_addr Fn ipx_addr const char *cp Ft char * Fn ipx_ntoa struct ipx_addr ipx  

索引

解説

Fn ipx_addr ルーチンは IPX アドレスを表現する文字列を解釈し、 システムコールに渡すのに適したバイナリ情報を返します。 Fn ipx_ntoa ルーチンは IPX アドレスを引数にとり、 アドレスを一般に使われる次のような表記法で記述した ASCII 文字列として返します:
<ネットワーク番号>.<ホスト番号>.<ポート番号>

後につく 0 となるフィールドは抑制され、各番号は Fn ipx_addr の入力に適した 16 進数の形式で印字されます。 10 進数を越える数字が現れないフィールドは最後に `H' が付加されます。

Fn ipx_addr と一般に使用される大部分の形式との互換性の確保に努力が注がれてきました。 最初に、アドレスは ピリオド `.' 、コロン `:' 、ポンド記号 `#' の中から選んだ単一のセパレータで 1 フィールドから 3 フィールドに分割されます。 次に、各フィールドについてバイトセパレータ ( コロンまたはピリオド ) の有無を調べます。 バイトセパレータがある場合は、 分離されたバイトフィールドは 16 進数のニブルとして解釈されます。 全体はネットワーク順でのバイト上位に 0 を拡張したバイト列が ネットワークのバイト順で解釈されます。 次に、フィールドでのハイフンの有無を調べます。 ハイフンがある場合はフィールドはハイフンで 1000 の位を 区切る 10 進数表記の数であると見なされます。 次に、フィールドは以下のようなやり方で数として解釈されます。 すなわち、 (C のように ) 先行する `0x' や、 (Mesa のように ) 後続の `H' がある場合、または 10 進数を越える数字がある場合には、 フィールドは 16 進数であると解釈されます。 先行する `0' があり、かつ 8 進数を越える数字が無い場合には、 フィールドは 8 進数であると解釈されます。 いずれにも該当しない場合には、 10 進数として変換されます。  

索引

戻り値

なし ( Sx バグ を参照 ) 。  

索引

関連項目

hosts(5), networks(5)  

索引

歴史

前身である Fn ns_addr 関数と Fn ns_toa 関数は BSD 4.3 で登場しました。  

索引

バグ

Fn ipx_ntoa 関数が返す文字列は static メモリ領域に存在します。 Fn ipx_addr 関数は入力の不適切な形式を診断すべきです。 更に、このバグ診断を知るための曖昧さのない方策が必要です。


 

索引

Index

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

jman



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