---
name: "pam_xauth_data"
section: "3"
platform: "linux"
package: "pam"
version: "1.7.3-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/pam_xauth_data"
---

# pam\_xauth\_data(3)

structure containing X authentication data

## NAME

pam\_xauth\_data - structure containing X authentication data

## SYNOPSIS

```
#include <security/pam_appl.h>
```

```
struct pam_xauth_data {
    int namelen;
    char *name;
    int datalen;
    char *data;
};
```

## DESCRIPTION

The **pam\_xauth\_data** structure contains X authentication data used to make a connection to an X display. Using this mechanism, an application can communicate X authentication data to PAM service modules. This allows modules to make a connection to the user's X display in order to label the user's session on login, display visual feedback or for other purposes.

The *name* field contains the name of the authentication method, such as "MIT-MAGIC-COOKIE-1". The *namelen* field contains the length of this string, not including the trailing NUL character.

The *data* field contains the authentication method-specific data corresponding to the specified name. The *datalen* field contains its length in bytes.

The X authentication data can be changed with the *PAM\_XAUTH\_DATA* item. It can be queried and set with [**pam\_get\_item**(3)](/pam_get_item/3.md) and **pam\_set\_item** (3) respectively. The value used to set it should be a pointer to a pam\_xauth\_data structure. An internal copy of both the structure itself and its fields is made by PAM when setting the item.

## SEE ALSO

[**pam\_start**(3)](/pam_start/3.md), [**pam\_get\_item**(3)](/pam_get_item/3.md),

## STANDARDS

The **pam\_xauth\_data** structure and *PAM\_XAUTH\_DATA* item are Linux-PAM extensions.
