.\" Copyright (c) 2009 Linux Foundation, written by Michael Kerrisk
.\" <mtk.manpages@gmail.com>
.\"
+.\" %%%LICENSE_START(VERBATIM)
.\" Permission is granted to make and distribute verbatim copies of this
.\" manual provided the copyright notice and this permission notice are
.\" preserved on all copies.
.\"
.\" Formatted or processed versions of this manual, if unaccompanied by
.\" the source, must acknowledge the copyright and authors of this work.
+.\" %%%LICENSE_END
.\"
.\" 2009-01-12, mtk, Created
.\"
-.TH RTLD-AUDIT 7 2010-09-10 "Linux" "Linux Programmer's Manual"
+.TH RTLD-AUDIT 7 2012-07-07 "Linux" "Linux Programmer's Manual"
.SH NAME
rtld-audit \- auditing API for the dynamic linker
.SH SYNOPSIS
.SS la_objclose()
\&
.nf
-.BI "unsigned int la_objclose(uintptr_t *" cookie);
+.BI "unsigned int la_objclose(uintptr_t *" cookie );
.fi
.PP
The dynamic linker invokes this function after any finalization
is the address to which control should be passed after the function returns.
If the auditing library is simply monitoring symbol bindings,
then it should return
-.IR sym\->st_name .
+.IR sym\->st_value .
A different value may be returned if the library wishes to direct control
to an alternate location.
.SS la_pltenter()
and can be used to modify subsequent auditing of, this PLT entry, as for
.BR la_symbind* ().
-.\" FIXME is the following correct?
+.\" FIXME . Is the following correct?
The
.IR framesizep
argument points to a
then the maximum returned value is used.
The
.BR la_pltenter ()
-function is only called if this buffer is
+function is called only if this buffer is
explicitly set to a suitable value.
The return value of
and the changes will be visible to the caller of the PLT entry.
In the current GNU implementation, the return value of
-.BR la_pltexit()
+.BR la_pltexit ()
is ignored.
.\" This differs from Solaris, where an audit library that monitors
.\" symbol binding should return the value of the 'retval' argument
.\" (not provided by GNU, but equivalent to returning outregs->lrv_eax
.\" on (say) x86-32).
-.SH "CONFORMING TO"
+.SH CONFORMING TO
This API is nonstandard, but very similar to the Solaris API,
described in the Solaris
.IR "Linker and Libraries Guide" ,
arguments (but does provide a
.IR retval
argument with the function return value).
+.SH BUGS
+In glibc versions up to and include 2.9,
+specifying more than one audit library in
+.B LD_AUDIT
+results in a run-time crash.
+This is reportedly fixed in glibc 2.10.
+.\" FIXME . Specifying multiple audit libraries doesn't work on GNU.
+.\" My simple tests on Solaris work okay, but not on Linux -- mtk, Jan 2009
+.\" glibc bug filed: http://sourceware.org/bugzilla/show_bug.cgi?id=9733
+.\" Reportedly, this is fixed on 16 Mar 2009 (i.e., for glibc 2.10)
.SH EXAMPLE
.nf
#include <link.h>
return sym\->st_value;
}
.fi
-.SH BUGS
-In glibc versions up to and include 2.9,
-specifying more than one audit library in
-.B LD_AUDIT
-results in a run-time crash.
-This is reportedly fixed in glibc 2.10.
-.\" FIXME Specifying multiple audit libraries doesn't work on GNU.
-.\" My simple tests on Solaris work okay, but not on Linux -- mtk, Jan 2009
-.\" glibc bug filed: http://sourceware.org/bugzilla/show_bug.cgi?id=9733
-.\" Reportedly, this is fixed on 16 Mar 2009 (i.e., for glibc 2.10)
-.SH "SEE ALSO"
+.SH SEE ALSO
.BR ldd (1),
.BR dlopen (3),
.BR ld.so (8),
.BR ldconfig (8)
+.SH COLOPHON
+This page is part of release 3.79 of the Linux
+.I man-pages
+project.
+A description of the project,
+information about reporting bugs,
+and the latest version of this page,
+can be found at
+\%http://www.kernel.org/doc/man\-pages/.