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

# radcli\_dae\_req\_attrs(3)

Return the request's decoded attributes.

## NAME

radcli\_dae\_req\_attrs - Return the request's decoded attributes.

## SYNOPSIS

```
#include <radcli/>

const radcli_avp_list * radcli_dae_req_attrs(
    const radcli_dae_request  *req
);
```

## DESCRIPTION

## PARAMETERS

- **req**

  a request passed to a radcli\_dae\_handler.

## RETURN VALUE

the attribute list, owned by req and valid until it is freed; NULL if req is NULL. Never NULL for a request the handler actually received: an attribute-free Disconnect-Request/CoA-Request still yields a valid, empty list.

## SEE ALSO

[*radcli\_ctx\_dispatch*(3)](/radcli_ctx_dispatch/3.md), [*radcli\_ctx\_get\_poll*(3)](/radcli_ctx_get_poll/3.md), [*radcli\_dae\_free*(3)](/radcli_dae_free/3.md), [*radcli\_dae\_new*(3)](/radcli_dae_new/3.md), [*radcli\_dae\_process*(3)](/radcli_dae_process/3.md), [*radcli\_dae\_reply*(3)](/radcli_dae_reply/3.md), [*radcli\_dae\_reply\_error*(3)](/radcli_dae_reply_error/3.md), [*radcli\_dae\_reply\_to\_buffer*(3)](/radcli_dae_reply_to_buffer/3.md), [*radcli\_dae\_req\_code*(3)](/radcli_dae_req_code/3.md), [*radcli\_dae\_req\_framed\_ip*(3)](/radcli_dae_req_framed_ip/3.md), [*radcli\_dae\_req\_nas\_port*(3)](/radcli_dae_req_nas_port/3.md), [*radcli\_dae\_req\_session\_id*(3)](/radcli_dae_req_session_id/3.md), [*radcli\_dae\_req\_user\_name*(3)](/radcli_dae_req_user_name/3.md), [*radcli\_dae\_request\_free*(3)](/radcli_dae_request_free/3.md), [*radcli\_dae\_set\_handler*(3)](/radcli_dae_set_handler/3.md), [*radcli\_dae\_start*(3)](/radcli_dae_start/3.md)
