EN JA
ELF_NEXT(3)
ELF_NEXT(3) FreeBSD Library Functions Manual ELF_NEXT(3)

名称

elf_next次のアーカイブメンバへの逐次アクセスを提供する

ライブラリ

ELF Access Library (libelf, -lelf)

書式

#include < libelf.h>

Elf_Cmd
elf_next( Elf *elf);

解説

elf_next() 関数によって、引数 elf 対応する ELF アーカイブ記述子は、 elf_begin() へのその後の呼び出しでアーカイブの次のメンバへのアクセスを提供するために調整されます。

elf_next() の返り値は、 elf_begin() を呼び出すループでの使用に適しています。

戻り値

成功するなら、関数 elf_next() は、値 ELF_C_READ を返します。そうでなければ、引数 elf がアーカイブに関連づけられていないか、またはそれが NULL であったか、または他のエラーが起こったなら、値 ELF_C_NULL が返されます。

使用例

使用されたいるアーカイブのすべてのメンバを処理するためには:

Elf_Cmd cmd; 
Elf *archive, *e; 
... 
cmd = ELF_C_READ; 
archive = elf_begin(fd, cmd, NULL); 
while ((e = elf_begin(fd, cmd, archive)) != (Elf *) 0) 
{ 
 ... process `e' here ... 
 
 cmd = elf_next(e); 
 elf_end(e); 
} 
elf_end(archive);

エラー

関数 elf_next() は、次のエラーで失敗します:
[ ELF_E_ARGUMENT]
引数 elf は、含んでいる ar(1) アーカイブに関連づけられていませんでした。
June 17, 2006 FreeBSD