ONC+ 開発ガイド

フィルタ以外のプリミティブ

この節で説明するプリミティブを使って XDR ストリームを操作することができます。

u_int xdr_getpos(xdrs)
   XDR *xdrs;

bool_t xdr_setpos(xdrs, pos)
   XDR *xdrs;
  	u_int pos;

xdr_destroy(xdrs)
  	XDR *xdrs;

ルーチン xdr_getpos() は データストリーム内の現在の位置を記述する符号なし整数を返します。


注意 – 注意 –

XDR ストリームの中には、xdr_getpos()の返す値が意味を持たないものがあります。その場合は、-1 が返されます (ただし、-1 も正当な値です)。


ルーチン xdr_setpos() はストリーム位置を pos に設定します。 XDR ストリームの中には、xdr_setpos() で位置設定ができないものもあります。その場合は、FALSE が返されます。指定した位置が適用範囲外の場合もエラーとなります。設定位置の適用範囲はストリームごとに異なります。

XDR ストリームを廃棄するには、プリミティブ xdr_destroy() を使用します。このルーチンを呼び出した後で、ストリームを使用した場合の動作は不定です。