---
name: "PR_CAPBSET_READ"
section: "2const"
platform: "linux"
package: "man-pages"
version: "6.19-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/PR_CAPBSET_READ"
---

# PR\_CAPBSET\_READ(2const)

read the calling thread's capability bounding set

## NAME

PR\_CAPBSET\_READ - read the calling thread's capability bounding set

## LIBRARY

Standard C library (*libc*, *-lc*)

## SYNOPSIS

```
#include <linux/prctl.h>  /* Definition of PR_* constants */
#include <sys/prctl.h>
```

**int prctl(PR\_CAPBSET\_READ, long** *cap***);**

## DESCRIPTION

Return 1 if the capability specified in *cap* is in the calling thread's capability bounding set, or 0 if it is not.

The capability constants are defined in *\<linux/capability.h\>*.

The capability bounding set dictates whether the process can receive the capability through a file's permitted capability set on a subsequent call to [**execve**(2)](/execve/2.md).

## RETURN VALUE

On success, this call returns the boolean value described above. On error, -1 is returned, and *errno* is set to indicate the error.

## ERRORS

- **EINVAL**

  *cap* does not specify a valid capability.

## VERSIONS

A higher-level interface layered on top of this operation is provided in the [**libcap**(3)](/libcap/3.md) library in the form of [**cap\_get\_bound**(3)](/cap_get_bound/3.md).

## STANDARDS

Linux.

## HISTORY

Linux 2.6.25.

## SEE ALSO

[**prctl**(2)](/prctl/2.md), [**PR\_CAPBSET\_DROP**(2const)](/PR_CAPBSET_DROP/2const.md), [**libcap**(3)](/libcap/3.md), [**cap\_get\_bound**(3)](/cap_get_bound/3.md)
