KRB5\_GET\_KRBHST(3) Library Functions Manual KRB5\_GET\_KRBHST(3)

# [NAME](#NAME)

`krb5_get_krbhst`, `krb5_get_krb_admin_hst`, `krb5_get_krb_changepw_hst`, `krb5_get_krb524hst`, `krb5_free_krbhst` — lookup Kerberos KDC hosts

# [LIBRARY](#LIBRARY)

Kerberos 5 Library (libkrb5, -lkrb5)

# [SYNOPSIS](#SYNOPSIS)

`#include <krb5.h>`

`krb5_error_code`  
`krb5_get_krbhst`(`krb5_context context`, `const krb5_realm *realm`, `char ***hostlist`);

`krb5_error_code`  
`krb5_get_krb_admin_hst`(`krb5_context context`, `const krb5_realm *realm`, `char ***hostlist`);

`krb5_error_code`  
`krb5_get_krb_changepw_hst`(`krb5_context context`, `const krb5_realm *realm`, `char ***hostlist`);

`krb5_error_code`  
`krb5_get_krb524hst`(`krb5_context context`, `const krb5_realm *realm`, `char ***hostlist`);

`krb5_error_code`  
`krb5_free_krbhst`(`krb5_context context`, `char **hostlist`);

# [DESCRIPTION](#DESCRIPTION)

These functions implement the old API to get a list of Kerberos hosts, and are thus similar to the [`krb5_krbhst_init`](#krb5_krbhst_init)() functions. However, since these functions returns [*all*](#all) hosts in one go, they potentially have to do more lookups than necessary. These functions remain for compatibility reasons.

After a call to one of these functions, `hostlist` is a `NULL` terminated list of strings, pointing to the requested Kerberos hosts. These should be freed with [`krb5_free_krbhst`](#krb5_free_krbhst)() when done with.

# [EXAMPLES](#EXAMPLES)

The following code will print the KDCs of the realm “MY.REALM”.

```
char **hosts, **p;
krb5_get_krbhst(context, "MY.REALM", &hosts);
for(p = hosts; *p; p++)
    printf("%s\n", *p);
krb5_free_krbhst(context, hosts);
```

# [SEE ALSO](#SEE_ALSO)

[krb5\_krbhst\_init(3)](/man/os/heimdal/krb5_krbhst_init.3)

April 24, 2005 HEIMDAL

---

Document: krb5_get_krb524hst(3) from heimdal 7.8.0-r55 (Chainguard OS)
Source: https://github.com/heimdal/heimdal
