getattr 装置構成サブルーチン

目的

属性オブジェクトの現行値を戻します。

ライブラリー

オブジェクト・データ・マネージャー・ライブラリー (libodm.a)

構文

#include <cf.h>
#include <sys/cfgodm.h>
#include <sys/cfgdb.h>
struct CuAt *getattr (devname, attrname, getall, how_many)
char *  devname;
char *  attrname;
int  getall;
int *  how_many;

パラメーター

項目 説明
devname デバイスの論理名を指定します。
attrname 属性名を指定します。
GETALL True に設定すると、属性のリストが呼び出しルーチンに戻されることを示すブール・フラグを指定します。
How_many Getattr サブルーチンが検出した属性の数を指します。

説明

getattr デバイス構成サブルーチンは、属性オブジェクトの現行値、または属性オブジェクトの現行値のリストを、カスタマイズ属性 (CuAt) オブジェクト・クラスまたは事前定義属性 (PdAt) オブジェクト・クラスから戻します。 getattr デバイス構成サブルーチンは、 CuAt オブジェクト・クラス に対して、デバイスの論理名と属性名が一致する属性オブジェクトを照会します。 デバイス構成オブジェクト・クラスロック するのは、アプリケーションの責任です。

getattr サブルーチンは、戻される CuAt オブジェクト・クラス構造体にメモリーを割り当てます。 このメモリーは、アプリケーションの終了時に自動的に解放されます。 ただし、アプリケーションが Getattr を複数回呼び出して長時間実行する場合は、このメモリーを解放する必要があります。

単一の属性を取得するには、 ギア パラメーターを False に設定する必要があります。 オブジェクトが CuAt オブジェクト・クラスに存在する場合、この構造体へのポインターが呼び出しルーチンに戻されます。

ただし、オブジェクトが見つからない場合、 getattr サブルーチンは、属性が PdAt オブジェクト・クラスにあるデフォルト値を取ると想定します。 この場合、属性情報について PdAt オブジェクト・クラスが照会されます。 この情報が見つかると、関連する属性値 (つまり、デフォルト値、フラグ情報、および NLS 索引) が CuAt 構造にコピーされます。 その後、この構造体は呼び出しルーチンに戻されます。 それ以外の場合は、エラーを示す NULL ポインターが戻されます。

デバイス名のカスタマイズされた属性をすべて取得するには、 ギア パラメーターを True に設定する必要があります。 この場合、 属性名 パラメーターは無視されます。 PdAt オブジェクト・クラスと CuAt オブジェクト・クラスが照会され、 CuAt 構造のリストが返されます。 PdAt オブジェクトは、1 つのリストを返すことができるように CuAt 構造にコピーされます。

注: 最初に odm_initialize サブルーチンを呼び出さない限り、 Getattr デバイス構成サブルーチンは失敗します。

戻り値

正常終了すると、 getattr サブルーチンは、 CuAt 構造体のリストを指すポインターを戻します。 操作が正常に行われなかった場合は、NULL ポインターが戻されます。

ファイル

項目 説明
/usr/lib/libcfg.a 装置構成サブルーチンのアーカイブ。