付録G.4 dbrGetUserInformation

機能
ユーザ情報の取得
形式

int dbrGetUserInformation(
    void          *pvhLibrary,     /* UOCライブラリハンドル   */
    void          *pvhSession,     /* UOCセッションハンドル   */
    const char    *pszUserName,    /* ログインユーザ名         */
    char          **ppszUserId,    /* ユーザ識別子             */
    char          **ppszPriGrpId,  /* プライマリグループ       */
                                   /*          識別子返却領域  */
    char          ***pppszGrpIds,  /* グループ識別子返却領域   */
    int           *piGrpCount,     /* 返却グループ識別子要素数 */
    char          *pszErrMessage   /* エラーメッセージ         */
)

機能説明
引数pszUserNameで指定されたログインユーザ名に対応するユーザの情報を返却します。
引数
pvhLibrary(入力)
ライブラリ固有のハンドルを指定します。このパラメタにはdbrinitLibrary()で返却された値を指定してください。
pvhSession(入力)
セッションハンドルを指定します。このパラメタには,dbrinitSession()で返却された値を指定してください。
pszUserName(入力)
CdbrSession::Connect()で指定されたユーザ名を指定します。NULLまたは""(空文字列)が指定された場合,エラーになります。
ppszUserId(出力)
返却されるユーザ識別子を指すポインタのアドレスを指定します。返却された領域は,関数の使用者がfree()を使用して解放してください。
ppszPriGrpId(出力)
返却されるプライマリグループ識別子を指すポインタのアドレスを指定します。返却された領域は,関数の使用者がfree()を使用して解放してください。プライマリグループ識別子を使用しない場合は,NULLを指定してください。なお,この領域に返却された識別子は,*pppszGrpIdsが指すグループ識別子返却領域に返却されることはありません。また,この引数にNULL以外を指定した場合,引数piGrpCountの値が0以下であっても,ログインユーザはこの引数に示されるプライマリグループに属しているとみなします。
pppszGrpIds(出力)
返却されるグループ情報を指すポインタのアドレスを指定します。返却された領域は,関数の使用者がfree()を使用して解放してください。
piGrpCount(出力)
実際に格納された要素数を格納するための領域を指定します。この引数には,引数ppszPriGrpIdで返却されたグループを含みません。
pszErrMessage(出力)
エラーが発生した場合,エラーの詳細を示すメッセージの格納領域を指定します。メッセージの格納領域は,1,024バイト以上を確保しておく必要があります。この引数にNULLを指定した場合,詳細を示すメッセージは返却されません。
戻り値

0            正常終了
-1            ライブラリハンドルが不正です
-2            セッションハンドルが不正です
-3            pszUserNameがNULLまたは""です
-4            指定されたユーザは存在しません
-5            引数が不正です

上記以外の値は,UOCによって定義されます
注意事項
この関数は,マルチスレッド環境で発行されます。そのため,スレッドセーフにしておく必要があります。