リンカーとライブラリ

監査インタフェースの呼び出し

rtld_audit インタフェースは、次のいずれかの方法によって有効になります。それぞれの方法は、監視対象のオブジェクトの範囲を意味します。

それぞれの呼び出し方法は、dlmopen(3DL) によって読み込まれる共有オブジェクトをコロンで区切ったリストを含む文字列で構成されています。各オブジェクトは、各自の監査リンクマップリストに読み込まれます。また、各オブジェクトは、dlsym(3DL) によって、監査ルーチンがないか検索されます。検出された監査ルーチンは、アプリケーション実行中に各段階で呼び出されます。

rtld_audit インタフェースを使用すると、複数の監査ライブラリを与えることができます。この方法で使用される監査ライブラリは、通常実行時リンカーによって返される結合を変更することはできません。もし変更すると、後に続く監査ライブラリで予期しない結果が生じます。

安全なアプリケーション (「動的依存関係のレイジーローディング」を参照) は、トラストディレクトリから監査ライブラリだけを取得できます。現在監査ライブラリに使用できるトラストディレクトリは、32 ビットオブジェクトの場合は /usr/lib/secure と 、64 ビットオブジェクトの場合は /usr/lib/secure/64 だけです。