GELF_GETEHDR(3) | FreeBSD Library Functions Manual | GELF_GETEHDR(3) |
名称
elf32_getehdr, elf64_getehdr, gelf_getehdr — オブジェクトファイルヘッダを検索するライブラリ
ELF Access Library (libelf, -lelf)書式
#include < libelf.h> Elf32_Ehdr *
elf32_getehdr( Elf *elf);
Elf64_Ehdr *
elf64_getehdr( Elf *elf);
#include < gelf.h>
GElf_Ehdr *
gelf_getehdr( Elf *elf, GElf_Ehdr *dst);
解説
これらの関数は、ELF 記述子 elf から ELF オブジェクトファイルヘッダを検索し、それらの呼び出し側への変換されたヘッダ記述子を返します。関数 elf32_getehdr() と elf64_getehdr() は、記述子 elf によって参照されたファイルに存在しているなら、適切なクラス特有のヘッダ記述子へのポインタを返します。これらの関数は、ELF ヘッダが、ファイル elf で見つけられなかったなら、 NULL を返します。
関数 gelf_getehdr() は、ELF ファイル elf のためにヘッダの変換されたコピーを引数 dst によって指された記述子に格納します。成功したなら、引数 dst を返し、失敗の場合は NULL を返します。
戻り値
これらの関数は、成功するなら、変換されたヘッダ記述子へのポインタを返し、失敗で NULL を返します。エラー
これらの関数は、次のエラーで失敗するかもしれません:- [ ELF_E_ARGUMENT]
- 引数 elf は、NULL でした。
- [ ELF_E_ARGUMENT]
- 引数 elf は、ELF ファイルのための記述子ではありませんでした。
- [ ELF_E_ARGUMENT]
- 記述子 elf の elf クラスが、認識されませんでした。
- [ ELF_E_ARGUMENT]
- 引数 dst は、NULL でした。
- [ ELF_E_CLASS]
- 記述子 elf の ELF クラスが、呼び出される API 関数のものに適合しませんでした。
- [ ELF_E_HEADER]
- ELF 記述子 elf には、関連ヘッダがありません。
- [ ELF_E_RESOURCE]
- メモリ不足状態が、実行の間に検出されました。
- [ ELF_E_SECTION]
- 引数 elf の ELF 記述子が、拡張された番号付けに使用される規約を順守しませんでした。
- [ ELF_E_VERSION]
- ELF 記述子 elf には、サポートされない ELF バージョン番号がありました。
関連項目
elf(3), elf32_newehdr(3), elf64_newehdr(3), elf_flagehdr(3), elf_getident(3), gelf(3), gelf_newehdr(3), elf(5)December 16, 2006 | FreeBSD |