Expand description
Bindings for the Linux prctl
system call.
There are similarities (but also differences) with FreeBSDβs procctl
system call, whose interface is located in the procctl.rs
file.
StructsΒ§
- Floating
Point Emulation Control PR_FPEMU_*
flags for use withfloating_point_emulation_control
andset_floating_point_emulation_control
.- Floating
Point Exception Mode - Zero means floating point exceptions are disabled.
- Prctl
MmMap - This structure provides new memory descriptor map which mostly modifies
/proc/pid/stat[m]
output for a task. This mostly done in a sake of checkpoint/restore functionality. - Speculation
Feature Control PR_SPEC_*
flags for use withcontrol_speculative_feature
.- Speculation
Feature State - Zero means the processors are not vulnerable.
- Unaligned
Access Control PR_UNALIGN_*
flags for use withunaligned_access_control
andset_unaligned_access_control
.
EnumsΒ§
- Dumpable
Behavior SUID_DUMP_*
values for use withdumpable_behavior
andset_dumpable_behavior
.- Endian
Mode PR_ENDIAN_*
values for use withendian_mode
.- Floating
Point Mode PR_FP_MODE_*
values for use withfloating_point_mode
andset_floating_point_mode
.- Machine
Check Memory Corruption Kill Policy PR_MCE_KILL_*
values for use withmachine_check_memory_corruption_kill_policy
andset_machine_check_memory_corruption_kill_policy
.- PTracer
- Process ptracer.
- Speculation
Feature PR_SPEC_*
values for use withspeculative_feature_state
andcontrol_speculative_feature
.- Time
Stamp Counter Readability PR_TSC_*
values for use withtime_stamp_counter_readability
andset_time_stamp_counter_readability
.- Timing
Method PR_TIMING_*
values for use withtiming_method
andset_timing_method
.- Virtual
Memory MapAddress PR_SET_MM_*
values for use withset_virtual_memory_map_address
.
ConstantsΒ§
- PR_
ENDIAN_ πBIG - PR_
ENDIAN_ πLITTLE - PR_
ENDIAN_ πPPC_ LITTLE - PR_
FP_ πMODE_ FR - PR_
FP_ πMODE_ FRE - PR_
GET_ πCHILD_ SUBREAPER - PR_
GET_ πDUMPABLE - PR_
GET_ πENDIAN - PR_
GET_ πFPEMU - PR_
GET_ πFPEXC - PR_
GET_ πFP_ MODE - PR_
GET_ πIO_ FLUSHER - PR_
GET_ πPDEATHSIG - PR_
GET_ πSPECULATION_ CTRL - PR_
GET_ πTIMING - PR_
GET_ πTSC - PR_
GET_ πUNALIGN - PR_
MCE_ πKILL - PR_
MCE_ πKILL_ CLEAR - PR_
MCE_ πKILL_ DEFAULT - PR_
MCE_ πKILL_ EARLY - PR_
MCE_ πKILL_ GET - PR_
MCE_ πKILL_ LATE - PR_
MCE_ πKILL_ SET - PR_
PAC_ πGET_ ENABLED_ KEYS - PR_
PAC_ πSET_ ENABLED_ KEYS - PR_
SET_ πCHILD_ SUBREAPER - PR_
SET_ πDUMPABLE - PR_
SET_ πENDIAN - PR_
SET_ πFPEMU - PR_
SET_ πFPEXC - PR_
SET_ πFP_ MODE - PR_
SET_ πIO_ FLUSHER - PR_
SET_ πMM - PR_
SET_ πMM_ ARG_ END - PR_
SET_ πMM_ ARG_ START - PR_
SET_ πMM_ AUXV - PR_
SET_ πMM_ BRK - PR_
SET_ πMM_ END_ CODE - PR_
SET_ πMM_ END_ DATA - PR_
SET_ πMM_ ENV_ END - PR_
SET_ πMM_ ENV_ START - PR_
SET_ πMM_ EXE_ FILE - PR_
SET_ πMM_ MAP - PR_
SET_ πMM_ MAP_ SIZE - PR_
SET_ πMM_ START_ BRK - PR_
SET_ πMM_ START_ CODE - PR_
SET_ πMM_ START_ DATA - PR_
SET_ πMM_ START_ STACK - PR_
SET_ πPDEATHSIG - PR_
SET_ πPTRACER - PR_
SET_ πPTRACER_ ANY - PR_
SET_ πSPECULATION_ CTRL - PR_
SET_ πTIMING - PR_
SET_ πTSC - PR_
SET_ πUNALIGN - PR_
SET_ πVMA - PR_
SET_ πVMA_ ANON_ NAME - PR_
SPEC_ πINDIRECT_ BRANCH - PR_
SPEC_ πL1D_ FLUSH - PR_
SPEC_ πSTORE_ BYPASS - PR_
TASK_ πPERF_ EVENTS_ DISABLE - PR_
TASK_ πPERF_ EVENTS_ ENABLE - PR_
TIMING_ πSTATISTICAL - PR_
TIMING_ πTIMESTAMP - PR_
TSC_ πENABLE - PR_
TSC_ πSIGSEGV - SUID_
DUMP_ πDISABLE - SUID_
DUMP_ πROOT - SUID_
DUMP_ πUSER
FunctionsΒ§
- child_
subreaper - Get the
child subreaper
setting of the calling process. - configure_
io_ flusher_ behavior - Put the process in the
IO_FLUSHER
state, allowing it to make progress when allocating memory. - configure_
performance_ counters - Enable or disable all performance counters attached to the calling process.
- configure_
pointer_ βauthentication_ keys - Set enabled pointer authentication keys.
- configure_
virtual_ βmemory_ map - Provides one-shot access to all the addresses by passing in a
PrctlMmMap
. - control_
speculative_ feature - Sets the state of the speculation misfeature.
- dumpable_
behavior - Get the current state of the calling processβ
dumpable
attribute. - enabled_
pointer_ authentication_ keys - Get enabled pointer authentication keys.
- endian_
mode - Get the endianness of the calling process.
- floating_
point_ emulation_ control - Get floating point emulation control bits.
- floating_
point_ exception_ mode - Get floating point exception mode.
- floating_
point_ mode - Get the current floating point mode.
- is_
io_ flusher - Get the
IO_FLUSHER
state of the caller. - machine_
check_ memory_ corruption_ kill_ policy - Get the current per-process machine check kill policy.
- parent_
process_ death_ signal - Get the current value of the parent process death signal.
- set_
auxiliary_ βvector - Set a new auxiliary vector.
- set_
child_ subreaper - Set the
child subreaper
attribute of the calling process. - set_
dumpable_ behavior - Set the state of the
dumpable
attribute. - set_
endian_ βmode - Set the endianness of the calling process.
- set_
executable_ file - Supersede the
/proc/pid/exe
symbolic link with a new one pointing to a new executable file. - set_
floating_ point_ emulation_ control - Set floating point emulation control bits.
- set_
floating_ point_ exception_ mode - Set floating point exception mode.
- set_
floating_ point_ mode - Allow control of the floating point mode from user space.
- set_
machine_ check_ memory_ corruption_ kill_ policy - Set the machine check memory corruption kill policy for the calling thread.
- set_
parent_ process_ death_ signal - Set the parent-death signal of the calling process.
- set_
ptracer - Declare that the ptracer process can
ptrace
the calling process as if it were a direct process ancestor. - set_
time_ stamp_ counter_ readability - Set the state of the flag determining if the timestamp counter can be read by the process.
- set_
timing_ method - Set whether to use (normal, traditional) statistical process timing or accurate timestamp-based process timing.
- set_
unaligned_ access_ control - Set unaligned access control bits.
- set_
virtual_ βmemory_ map_ address - Modify certain kernel memory map descriptor addresses of the calling process.
- set_
virtual_ memory_ region_ name - Set the name for a virtual memory region.
- speculative_
feature_ state - Get the state of the speculation misfeature.
- time_
stamp_ counter_ readability - Get the state of the flag determining if the timestamp counter can be read.
- timing_
method - Get which process timing method is currently in use.
- unaligned_
access_ control - Get unaligned access control bits.
- virtual_
memory_ map_ config_ struct_ size - Get the size of the
PrctlMmMap
the kernel expects.