1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-18 21:35:06 +00:00

ProcFS: Expose process pledge promises in /proc/all

This commit is contained in:
Andreas Kling 2020-01-11 21:07:00 +01:00
parent 2f880a047f
commit b36608f47c

View file

@ -758,6 +758,17 @@ Optional<KBuffer> procfs$all(InodeIdentifier)
// Keep this in sync with CProcessStatistics.
auto build_process = [&](const Process& process) {
auto process_object = array.add_object();
StringBuilder pledge_builder;
#define __ENUMERATE_PLEDGE_PROMISE(promise) \
if (process.has_promised(Pledge::promise)) { \
pledge_builder.append(#promise " "); \
}
ENUMERATE_PLEDGE_PROMISES
#undef __ENUMERATE_PLEDGE_PROMISE
process_object.add("pledge", pledge_builder.to_string());
process_object.add("pid", process.pid());
process_object.add("pgid", process.tty() ? process.tty()->pgid() : 0);
process_object.add("pgp", process.pgid());