目的
Oracle ACFSファイルに割り当てられたタグ名をリストします。詳細は、「acfsutil tag info」を参照してください。
構文
sb8 acfslisttags(const oratext *path, oratext *list, size_t size, ub4 flags);
表18-3に、acfslisttags
コマンドで使用可能なオプションを示します。
表18-4 acfslisttagsコマンドのオプション
オプション | 説明 |
---|---|
|
ファイルまたはディレクトリのパス名へのポインタを指定します。 |
|
Oracle ACFSタグ名のリストを含むメモリー・バッファへのポインタを指定します。 |
|
戻されたOracle ACFSタグ名リストを保持するメモリー・バッファのサイズ(バイト)を指定します。 |
|
将来の使用のために予約されています。0に設定する必要があります。 |
説明
acfslisttags
ライブラリ・コールは、Oracle ACFSファイルに割り当てられたすべてのタグ名を取得します。acfslisttags
は、list
メモリー・バッファにタグ名のリストを戻します。リスト内の各タグ名は、NULLで終了します。ファイルにタグ名がない場合、リフトは空になります。メモリー・バッファは、Oracle ACFSファイルに割り当てられたすべてのタグ名を保持するのに十分な大きさにする必要があります。
アプリケーションは、バッファを割り当て、Oracle ACFSファイルに割り当てられたすべてのタグ名を保持するのに十分なリスト・サイズの大きさを指定する必要があります。acfslisttags
を、バッファ・サイズをゼロ値、リスト・バッファをNULLで最初にコールすることによって、アプリケーションは、必要なリスト・バッファ・サイズを必要に応じて取得できます。アプリケーションは、ゼロ以外の正のリスト・サイズの戻り値をチェックして、リスト・バッファを割り当て、acfslisttags
をコールして、実際のタグ名リストを取得します。
成功すると、戻り値は、タグ名リストの正のバイト・サイズとなり、ファイルにタグ名がない場合は0
になります。失敗した場合、戻り値はACFS_TAG_FAIL
です。ACFS_TAG_FAIL
が戻されたときに取得する、オペレーティング・システム固有の詳細なエラー情報の値の詳細は、「Oracle ACFSタグ付けのエラー値」を参照してください。
例
例18-4に、acfslisttags
ファンクション・コールの使用例を示します。
例18-4 ファイルのタグのリスト
sb8 listsize; sb8 listsize2; const oratext *path = "/mnt/dir1/dir2/file2"; oratext *list; /* Determine size of buffer to store list */ listsize = acfslisttags (path, NULL, 0, 0); if (listsize == ACFS_TAG_FAIL) /* retrieve the error code and return */ if (listsize) { list = malloc(listsize) /* Retrieve list of tag names */ listsize2 = acfslisttags (path, list, listsize, 0); if (listsize2 == ACFS_TAG_FAIL) /* check errno or GetLastError() to process error returns */ if (listsize2 > 0) /* file has a list of tag names to process */ else /* file has no tag names. */ } else /* file has no tag names. */