EN JA
GELF_GETEHDR(3)
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 バージョン番号がありました。
December 16, 2006 FreeBSD