8322 nl: misleading-indentation
[unleashed/tickless.git] / usr / src / man / man3proc / pr_setrlimit.3proc
blobb7658278d223891a4dfd8d88be883555208a0c03
1 .\"
2 .\" This file and its contents are supplied under the terms of the
3 .\" Common Development and Distribution License ("CDDL"), version 1.0.
4 .\" You may only use this file in accordance with the terms of version
5 .\" 1.0 of the CDDL.
6 .\"
7 .\" A full copy of the text of the CDDL should have accompanied this
8 .\" source.  A copy of the CDDL is also available via the Internet at
9 .\" http://www.illumos.org/license/CDDL.
10 .\"
11 .\"
12 .\" Copyright 2015 Joyent, Inc.
13 .\"
14 .Dd May 11, 2016
15 .Dt PR_SETRLIMIT 3PROC
16 .Os
17 .Sh NAME
18 .Nm pr_setrlimit ,
19 .Nm pr_setrlimit64
20 .Nd inject setrlimit system call into victim process
21 .Sh SYNOPSIS
22 .Lb libproc
23 .In libproc.h
24 .Ft int
25 .Fo pr_setrlimit
26 .Fa "struct ps_prochandle *P"
27 .Fa "int resource"
28 .Fa "const struct rlimit *rlp"
29 .Fc
30 .Ft int
31 .Fo pr_setrlimit64
32 .Fa "struct ps_prochandle *P"
33 .Fa "int resource"
34 .Fa "struct rlimit64 *rlp"
35 .Fc
36 .Sh DESCRIPTION
37 The
38 .Fn pr_setrlimit
39 function injects the
40 .Xr setrlimit 2
41 system call into the target process
42 .Fa P
43 by means of the agent LWP.
44 If the process handle
45 .Fa P
46 is the value
47 .Dv NULL
48 then this will be equivalent to calling
49 .Xr setrlimit 2
50 on the currently running process.
51 .Pp
52 The arguments
53 .Fa resource
54 and
55 .Fa rlp
56 have the same meaning as in
57 .Xr setrlimit 2 .
58 See
59 .Xr setrlimit 2
60 for the full description and purpose of the
61 .Sy setrlimit
62 system call and its arguments.
63 .Pp
64 The
65 .Fn pr_setrlimit
66 function only works on active processes.
67 Process handles that correspond to core files, zombie processes, or ELF objects
68 do not support system call injection.
69 .Pp
70 The
71 .Fn pr_setrlimit64
72 function is equivalent to
73 .Fn pr_setrlimit ;
74 however, rather than having the rlimit information be subject to the data model
75 of the target process, they always provide 64-bit rlimit information.
76 See
77 .Xr lf64 5
78 for more information.
79 .Sh RETURN VALUES
80 Upon successful completion, the
81 .Fn pr_setrlimit
82 function's return value is that described in
83 .Xr setrlimit 2 .
84 Otherwise,
85 .Sy -1
86 is returned and
87 .Sy errno
88 is set to
89 .Er ENOSYS
90 to indicate that the system call could not be injected.
91 .Sh ERRORS
92 For the full list of errors see the
93 .Sy ERRORS
94 section in
95 .Xr setrlimit 2 .
96 .Pp
97 The
98 .Fn pr_setrlimit
99 function will fail if:
100 .Bl -tag -width Er
101 .It Er ENOSYS
102 An error occurred while trying to invoke the agent LWP and inject a
103 system call in the process handle
104 .Fa P
105 or the process handle
106 .Fa P
107 does not support system call injection.
109 .Sh INTERFACE STABILITY
110 .Sy Uncommitted
111 .Sh MT-LEVEL
113 .Sy LOCKING
115 .Xr libproc 3LIB .
116 .Sh SEE ALSO
117 .Xr setrlimit 2 ,
118 .Xr libproc 3LIB ,
119 .Xr proc 4 ,
120 .Xr lf64 5