---
name: "krb5_check_transited_realms"
section: "3"
platform: "linux"
package: "heimdal-dev"
version: "7.8.git20221117.28daf24+dfsg-9+deb13u1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/krb5_check_transited_realms"
---

# krb5\_check\_transited\_realms(3)

realm transit verification and encoding/decoding functions

## NAME

**krb5\_check\_transited**, **krb5\_check\_transited\_realms**, **krb5\_domain\_x500\_decode**, **krb5\_domain\_x500\_encode** – realm transit verification and encoding/decoding functions

## LIBRARY

Kerberos 5 Library (libkrb5, -lkrb5)

## SYNOPSIS

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

*krb5\_error\_code*\

**krb5\_check\_transited**(*krb5\_context context*, *krb5\_const\_realm client\_realm*, *krb5\_const\_realm server\_realm*, *krb5\_realm \*realms*, *int num\_realms*, *int \*bad\_realm*);

*krb5\_error\_code*\

**krb5\_check\_transited\_realms**(*krb5\_context context*, *const char \*const \*realms*, *int num\_realms*, *int \*bad\_realm*);

*krb5\_error\_code*\

**krb5\_domain\_x500\_decode**(*krb5\_context context*, *krb5\_data tr*, *char \*\*\*realms*, *int \*num\_realms*, *const char \*client\_realm*, *const char \*server\_realm*);

*krb5\_error\_code*\

**krb5\_domain\_x500\_encode**(*char \*\*realms*, *int num\_realms*, *krb5\_data \*encoding*);

## DESCRIPTION

**krb5\_check\_transited**() checks the path from *client\_realm* to *server\_realm* where *realms* and *num\_realms* is the realms between them. If the function returns an error value, *bad\_realm* will be set to the realm in the list causing the error. **krb5\_check\_transited**() is used internally by the KDC and libkrb5 and should not be called by client applications.

**krb5\_check\_transited\_realms**() is deprecated.

**krb5\_domain\_x500\_encode**() and **krb5\_domain\_x500\_decode**() encodes and decodes the realm names in the X500 format that Kerberos uses to describe the transited realms in krbtgts.

## SEE ALSO

[krb5(3)](/krb5/3.md), [krb5.conf(5)](/krb5.conf/5.md)
