KVM_NLIST(3)

名称
kvm_nlist - カーネルイメージからシンボルテーブルを検索する

ライブラリ
libkvm

書式
<kvm.h> <nlist.h> int kvm_nlist(kvm_t *kd, struct nlist *nl)

解説
kvm_nlist() はネームリスト引数 nl で示されるシンボルテーブルのエントリを検索します。 この引数は nlist 構造体の配列を指し示し、 n_name フィールドが NULL (nlist(3) 参照) であるエントリで終了しています。 各シンボルは n_name フィールドを使って調べられます。 そしてもし見つけられたら、 対応する n_type フィールドと n_value フィールドが記載されます。 シンボルが見つからなければ、これらのフィールドは 0 にされます。

シンボルを見つけるに、 kldsym(2) を使用しています。 nlist 値のエミュレートに関しては完全ではありませんが、 カーネルモジュールを考慮していてかなり高速であるという利点があります。

戻り値
kvm_nlist() 関数は見つけた無効エントリ数を返します。 カーネルシンボルテーブルが読めなければ、-1 を返します。

関連項目
kldsym(2), kvm(3), kvm_close(3), kvm_getargv(3), kvm_getenvv(3), kvm_geterr(3), kvm_getprocs(3), kvm_open(3), kvm_openfiles(3), kvm_read(3), kvm_write(3)