---
name: "gelf_update_syminfo"
section: "3"
platform: "linux"
package: "libelf"
version: "0.197-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux", "freebsd"]
url: "https://new.carta.tech/gelf_update_syminfo"
---

# gelf\_update\_syminfo(3)

Update additional symbol information in the symbol table at the given index

## NAME

gelf\_update\_syminfo - Update additional symbol information in the symbol table at the given index

## SYNOPSIS

```
#include <gelf.h>
int gelf_update_syminfo (Elf_Data *data, int ndx, GElf_Syminfo *src);
```

## DESCRIPTION

Copy a class-independent additional symbol information entry from *src* into the **SHT\_SUNW\_syminfo** section associated with *data* at entry index *ndx*.

*data* should be associated with an ELF section with type **SHT\_SUNW\_syminfo** and data type **ELF\_T\_SYMINFO**. These types are Sun/Solaris extensions and are not typically used in GNU/Linux ELF files.

## PARAMETERS

- *data*

  Pointer to an **Elf\_Data** associated with an ELF section with type for a section with type **SHT\_SUNW\_syminfo** and data type **ELF\_T\_SYMINFO**.

- *ndx*

  Zero-based index of the entry in *data* to be updated.

- *src*

  Pointer to a caller-provided additional symbol information entry.  Must not be NULL.

## RETURN VALUE

On success, this function returns a non-zero value and updates *data* with *src* at index *ndx*. The section associated with *data* is flagged with **ELF\_F\_DIRTY**. On failure, zero is returned and elf\_errno is set.  If *data* is NULL, then zero is returned without setting elf\_errno.

## SEE ALSO

[**gelf\_getsym**(3)](/gelf_getsym/3.md), [**gelf\_getsyminfo**(3)](/gelf_getsyminfo/3.md), [**libelf**(3)](/libelf/3.md), [**elf**(5)](/elf/5.md)

## ATTRIBUTES

| | | |
| --- | --- | --- |
| **Interface** | **Attribute** | **Value** |
| **gelf\_update\_syminfo**() | Thread safety | MT-Safe |

## REPORTING BUGS

Report bugs to \<elfutils-devel@sourceware.org\> or https://sourceware.org/bugzilla/.
