Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
ELF_FLAGDATA(3)	       FreeBSD Library Functions Manual	       ELF_FLAGDATA(3)

NAME
     elf_flagdata, elf_flagehdr, elf_flagelf, elf_flagphdr, elf_flagscn,
     elf_flagshdr -- manipulate	flags associated with ELF(3) data structures

LIBRARY
     ELF Parsing Library (libelf, -lelf)

SYNOPSIS
     #include <libelf.h>

     unsigned int
     elf_flagdata(Elf_Data *data, Elf_Cmd cmd, unsigned	int flags);

     unsigned int
     elf_flagehdr(Elf *elf, Elf_Cmd cmd, unsigned int flags);

     unsigned int
     elf_flagelf(Elf *elf, Elf_Cmd cmd,	unsigned int flags);

     unsigned int
     elf_flagphdr(Elf *elf, Elf_Cmd cmd, unsigned int flags);

     unsigned int
     elf_flagscn(Elf_Scn *scn, Elf_Cmd cmd, unsigned int flags);

     unsigned int
     elf_flagshdr(Elf_Scn *scn,	Elf_Cmd	cmd, unsigned int flags);

DESCRIPTION
     These functions are used to query,	set or reset flags on data structures
     associated	with an	ELF file.

     Arguments data, elf and scn denote	the data structures whose flags	need
     to	be changed.  These values are allowed to be NULL to simplify error
     handling in application code.

     Argument cmd may have the following values:

     ELF_C_CLR	The argument flags specifies the flags to be cleared.

     ELF_C_SET	The argument flags specifies the flags to be set.

     The argument flags	is allowed to have the following flags set:

     ELF_F_DIRTY   Mark	the associated data structure as needing to be written
		   back	to the underlying file.	 A subsequent call to
		   elf_update(3) will resynchronize the	library's internal
		   data	structures.

     ELF_F_LAYOUT  This	flag is	only valid with	the elf_flagelf() API.	It
		   informs the library that the	application will take respon-
		   sibility for	the layout of the file and that	the library is
		   not to insert any padding in	between	sections.

     Marking a given data structure as ``dirty'' affects all of	its contained
     elements.	Thus marking an	ELF descriptor elf with	elf_flagelf(elf,
     ELF_C_SET,	ELF_F_DIRTY) means that	the entire contents of the descriptor
     are ``dirty''.

     Using a value of zero for argument	flags will return the current set of
     flags for the data	structure being	queried.

RETURN VALUES
     These functions return the	updated	flags is successful, and zero if an
     error is detected.

ERRORS
     These functions may fail with the following errors:

     [ELF_E_ARGUMENT]  An unsupported value was	used for the cmd argument.

     [ELF_E_ARGUMENT]  Argument	flags had unsupported flags set.

     [ELF_E_ARGUMENT]  The argument elf	was not	a descriptor for an ELF
		       object.

     [ELF_E_SEQUENCE]  Function	elf_flagehdr() was called without an exe-
		       cutable header being allocated.

     [ELF_E_SEQUENCE]  Function	elf_flagphdr() was called without a program
		       header being allocated.

SEE ALSO
     elf(3), elf32_newehdr(3), elf32_newphdr(3), elf32_newshdr(3),
     elf64_newehdr(3), elf64_newphdr(3), elf64_newshdr(3), elf_newdata(3),
     elf_update(3), gelf(3), gelf_newehdr(3), gelf_newphdr(3),
     gelf_newshdr(3), gelf_update_dyn(3), gelf_update_move(3),
     gelf_update_rel(3), gelf_update_rela(3), gelf_update_sym(3),
     gelf_update_syminfo(3)

FreeBSD	9.2		       October 22, 2007			   FreeBSD 9.2

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO

Want to link to this manual page? Use this URL:
<http://www.freebsd.org/cgi/man.cgi?query=elf_flagelf&sektion=3&manpath=FreeBSD+10.0-RELEASE>

home | help