Hi Aaron,

On Mon, Aug 04, 2025 at 11:24:41PM -0400, Aaron Merey wrote:
> Signed-off-by: Aaron Merey <ame...@redhat.com>
> ---
> v2: Some rewording.  Also remove comment about elf_rand affecting
> subsequent calls to elf_next. I will post a patch that prevents this
> behavior.

Thanks, that patch is now in. commit cc459edf "elf_getarhdr: Replace
per-archive Elf_Arhdr storage with per-member storage"

>  doc/Makefile.am |  1 +
>  doc/elf_rand.3  | 71 +++++++++++++++++++++++++++++++++++++++++++++++++
>  2 files changed, 72 insertions(+)
>  create mode 100644 doc/elf_rand.3
> 
> diff --git a/doc/Makefile.am b/doc/Makefile.am
> index 103f9d05..f1e074f9 100644
> --- a/doc/Makefile.am
> +++ b/doc/Makefile.am
> @@ -83,6 +83,7 @@ notrans_dist_man3_MANS= elf32_checksum.3 \
>                       elf_newdata.3 \
>                       elf_newscn.3 \
>                       elf_nextscn.3 \
> +                     elf_rand.3 \
>                       elf_rawfile.3 \
>                       elf_scnshndx.3 \
>                       elf_strptr.3 \

OK.

> diff --git a/doc/elf_rand.3 b/doc/elf_rand.3
> new file mode 100644
> index 00000000..5c07a920
> --- /dev/null
> +++ b/doc/elf_rand.3
> @@ -0,0 +1,71 @@
> +.TH ELF_RAND 3 2025-06-30 "Libelf" "Libelf Programmer's Manual"
> +
> +.SH NAME
> +elf_rand - Set the offset for the next archive member in an ELF file.
> +
> +.SH SYNOPSIS
> +.nf
> +#include <libelf.h>
> +
> +.BI "size_t elf_rand(Elf *" elf ", size_t " offset ");"
> +.fi

OK.

> +.SH DESCRIPTION
> +The
> +.BR elf_rand ()
> +function sets the current archive member offset for the ELF archive 
> descriptor
> +.I elf
> +to
> +.IR offset .
> +
> +This function is only valid when
> +.I elf
> +refers to an archive descriptor (i.e., its kind is
> +.BR ELF_K_AR ).
> +
> +Archive member offsets can be acquired from the
> +.I Elf_Arsym
> +array returned by
> +.BR elf_getarsym (3).
> +
> +If the archive header at the given offset cannot be parsed or validated,
> +then 0 is returned.

OK.

> +.SH PARAMETERS
> +.TP
> +.I elf
> +A pointer to an ELF archive descriptor.
> +
> +.TP
> +.I offset
> +A byte offset to the archive header, indicating the desired member position.

OK.

> +.SH RETURN VALUE
> +Returns the input
> +.I offset
> +if successful. Returns 0 if
> +.I elf
> +is NULL, is not an archive descriptor, or if an error occurs while reading 
> the member at
> +.IR offset .

OK.

> +.SH SEE ALSO
> +.BR elf_getarsym (3),
> +.BR elf_next (3),
> +.BR libelf (3),
> +.BR elf (5)

OK.

> +.SH ATTRIBUTES
> +.TS
> +allbox;
> +lbx lb lb
> +l l l.
> +Interface    Attribute       Value
> +T{
> +.na
> +.nh
> +.BR elf_rand ()
> +T}   Thread safety   MT-Safe
> +.TE
> +
> +.SH REPORTING BUGS
> +Report bugs to <elfutils-devel@sourceware.org> or 
> https://sourceware.org/bugzilla/.

OK.

Thanks,

Mark

Reply via email to