PROCCONTROL(1)

πŸ“¦
version 15.1 Β· 2 versions
, in freebsd 15.1

πŸ’… PROCCONTROL(1) β€” like, the General Commands Manual era πŸŽ€

okay bestie, buckle up β€” this one's a little sysadmin baddie and she controls process execution aspects. that's literally the whole vibe. ✨


🌸 NAME 🌸

proccontrol β€” control some process execution aspects. yes that's it, that's the girl. she tweaks how a process is allowed to exist. iconic behavior tbh.


πŸ¦‹ SYNOPSIS πŸ¦‹

proccontrol -m mode -s control -p pid | command
proccontrol -m mode -q [-p pid | command]

two whole moods, pick your fighter πŸ’–


✨ DESCRIPTION ✨

so the proccontrol command does one of two things, and honestly she's flexible:

  • it modifies the execution parameter of an existing process β€” the one you point at with the pid argument, or
  • it starts execution of the new program command, with that execution parameter already set for it from the jump. main character energy from birth, no cap. πŸ‘‘

which execution parameter gets changed? that's the mandatory mode parameter's whole job. here's the full roster, no gatekeeping:

  • aslr β€” controls the Address Space Layout Randomization. note: only applicable to the new process spawned. (so like, it's giving "new baby only" 🍼)
  • trace β€” controls the permission for debuggers to attach. important caveat bestie: a process is only allowed to enable tracing for itself, not for any other process. no meddling in other people's business, periodt.
  • trapcap β€” controls the signalling of capability mode access violations.
  • protmax β€” controls the implicit PROT_MAX application for mmap(2).
  • nonewprivs β€” controls disabling the setuid and sgid bits for execve(2).
  • wxmap β€” controls the write exclusive execute mode for mappings.
  • kpti β€” controls the KPTI enable, AMD64 only.
  • la48 β€” controls limiting usermode process address space to 48 bits of address, AMD64 only, and only on machines capable of 57-bit addressing. very specific queen. πŸ’…
  • logsigexit β€” controls the logging of exits due to a signal that would normally cause a core dump.

now, the control bit β€” that's what says whether the selected mode should be turned on or off. possible values are enable and disable, and lowkey the default is enable if you don't specify anything. slay, defaults. 🌈

heads up: hit up procctl(2) for the detailed description of each mode's effects and how it interacts with other process control facilities. she's the source of truth, i'm just the group chat.

and the -q switch? that makes the utility query and print the current setting for the selected mode β€” no changes, just receipts. πŸ“‹ but -q requires the query target process specification with -p. no -p, no query, them's the rules.


πŸ’€ EXIT STATUS πŸ’€

the proccontrol utility exits 0 on success, and >0 if an error occurs. simple. clean. either she ate or she didn't. πŸ“


πŸ”₯ EXAMPLES πŸ”₯

  • to disable debuggers attachment to the process 1020, execute:
proccontrol -m trace -s disable -p 1020
  • to execute the uniq(1) program in a mode where capability access violations cause SIGTRAP delivery, do:
proccontrol -m trapcap uniq
  • to query the current ASLR enablement mode for the running process 1020, do:
proccontrol -m aslr -q -p 1020

see? she's versatile. 🫢


πŸ‘‘ SEE ALSO πŸ‘‘

kill(2), procctl(2), ptrace(2), mitigations(7)

(the friend group ✨)


🧚 HISTORY 🧚

the proccontrol command appeared in FreeBSD 10.0. a legend was born. πŸ’œ


πŸ’– AUTHORS πŸ’–

the proccontrol command and this manual page were written by Konstantin Belousov <kib@freebsd.org> under sponsorship from The FreeBSD Foundation. we stan a sponsored king. πŸ™ˆ


okay so that's the whole page bestie, every single flag and caveat accounted for, nothing dropped, iykyk πŸ¦‹ β€” this cutie came from the Debian edition of the manual, dated December 14, 2024, and yes she's still serving PROCCONTROL(1) energy. mwah πŸ’…β­

πŸ“¦ where this page comes from
  • freebsd 15.1: base 15.1
  • πŸ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms