AU_BSM_TO_ERRNO(3) | FreeBSD Library Functions Manual | AU_BSM_TO_ERRNO(3) |
名称
au_bsm_to_errno, au_errno_to_bsm, au_strerror — BSM とローカルエラー番号の間で変換するライブラリ
Basic Security Module User Library (libbsm, -lbsm)書式
#include < bsm/libbsm.h> int
au_bsm_to_errno( u_char bsm_error, int *errorp);
u_char
au_errno_to_bsm( int error);
const char *
au_strerror( int bsm_error);
解説
これらのインタフェースは、ローカル ( errno(2)) と BSM リターントークンで見つかった BSM エラー番号空間の間で変換するために使用されます。au_bsm_to_errno() 関数は、BSM エラー値、 bsm_error を受け付けて、成功するなら、 errorp によって指された整数に格納される、 errno(2) にそれを変換します。返されたトークンが、別のオペレーティングシステムで生成されたなら、起こるかもしれない、ローカルエラー番号に BSM エラーをマップできないなら、この呼び出しは、失敗します。
au_errno_to_bsm() 関数は、ローカルの errno(2) 値を受け付けて、それのための BSM エラー番号を返します。この呼び出しは、失敗できません、代わりにそのエラーをエンコードできなかった、後のデコーダを示す BSM エラー番号を返します。
au_strerror() 関数は、一般的に、最初に、ローカルなエラー番号を変換することによって、またはローカルの strerror(3) 関数を使用して変換することによって、BSM エラー値を文字列に変換しますが、ローカルに定義されていないエラーにも機能します。
戻り値
成功すれば、 au_bsm_to_errno() は、0 と変換されたエラー値を返します。失敗すれば、-1 を返しますが、 errno(2) を設定しません。成功すれば、 au_strerror() は、エラー文字列へのポインタを返します。失敗すれば、 NULL を返します。
歴史
au_bsm_to_errno() と au_errno_to_bsm() は、OpenBSM 1.1 で導入されました。作者
これらの関数は、Apple Inc. の契約に基づき によって実装されました。レコードを監査し、イベントストリーム形式を監査する Basic Security Module (BSM) インタフェースは、Sun Microsystems によって定義されました。
バグ
au_strerror は、ローカルのオペレーティングシステムで利用可能でないエラーに対して局所化された文字列を提供できません。December 8, 2008 | FreeBSD |