Kerberos 5 Library (libkrb5, -lkrb5)
krb5_get_all_client_addrs(krb5_context context, krb5_addresses *addrs);
krb5_get_all_server_addrs(krb5_context context, krb5_addresses *addrs);
These functions return in addrs a list of addresses associated with the local host.
The server variant returns all configured interface addresses (if possible), including loop-back addresses. This is useful if you want to create sockets to listen to.
The client version will also scan local interfaces (can be turned off by setting
libdefaults/scan_interfaces to false in
krb5.conf), but will not include loop-back addresses, unless there are no other addresses found. It will remove all addresses included in
libdefaults/ignore_addresses but will unconditionally include addresses in
The returned addresses should be freed by calling
The man page krb5_get_all_server_addrs(3) is an alias of krb5_get_all_client_addrs(3).