---
name: "shisa_enumerate_principals"
section: "3"
platform: "linux"
package: "libshisa-dev"
version: "1.0.3-5+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/shisa_enumerate_principals"
---

# shisa\_enumerate\_principals(3)

API function

## NAME

shisa\_enumerate\_principals - API function

## SYNOPSIS

**#include \<shisa.h\>**

**int shisa\_enumerate\_principals(Shisa \*** *dbh***, const char \*** *realm***, char \*\*\*** *principals***, size\_t \*** *nprincipals***);**

## ARGUMENTS

- Shisa \* dbh

  Shisa library handle created by **shisa()**.

- const char \* realm

  Name of realm, as null-terminated UTF-8 string.

- char \*\*\* principals

  Returned pointer to newly allocated array of just allocated null-terminated UTF-8 strings with principal names.

- size\_t \* nprincipals

  Pointer to an integer updated with the number of just allocated and returned principal names.

## DESCRIPTION

Extracts a list of all principal names in backend belonging to the realm *realm*, as null-terminated UTF-8 strings.  The caller is responsible for deallocating all strings and the array \**principals*.

## RETURN VALUE

Returns **SHISA\_OK** on success, **SHISA\_NO\_REALM** if the specified realm does not exist, or an error code otherwise.

## REPORTING BUGS

Report bugs to \<bug-shishi@gnu.org\>. GNU Shishi home page: http://www.gnu.org/software/shishi/ General help using GNU software: http://www.gnu.org/gethelp/

## COPYRIGHT

Copyright © 2002-2022 Simon Josefsson.\
 Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.

## SEE ALSO

The full documentation for **shishi** is maintained as a Texinfo manual.  If the **info** and **shishi** programs are properly installed at your site, the command

-

  **info shishi**

should give you access to the complete manual.
