# Re: \[PATCH\] capabilities: Ambient capability set V1

- From: Christoph Lameter \<hidden\>
- Date: 2015-02-24 17:28:52 
- List: linux-api
- Page: https://ratatoskr.run/linux-api/2015/02/4436691
- Thread: https://ratatoskr.run/linux-api/2015/02/4426512/t.md

```text
On Tue, 24 Feb 2015, Serge Hallyn wrote:

> Unless I'm misunderstanding what you are saying, apps do have surprises.
> They drop capabilities, execute a file, and the result has capabilities
> which the app couldn't have expected.  At least if the bits have to be
> in fI to become part of pP', the app has a clue.

Well yes but the surprises do not occur in the cap bits they are
manipulating or inspecting via prctl.

> To be clear, I'm suggesting that the rules at exec become:
>
> pI' = pI

Ok that is new and on its own may solve the issue?

> pA' = pA  (pA is ambient)

Thats what this patch does

> pP' = (X & fP) | (pI & (fI | pA))

Hmmm... fP is empty for the file not having caps. so

pP' = pI & pA

> pE' = pP' & fE

fE? So the inherited caps are not effective? fE would be empty for a file
not having caps thus the ambient caps would not be available in the child.
```
