fix all missing instances of __cplusplus checks/extern "C" in headers
[musl] / include / sys / resource.h
1 #ifndef _SYS_RESOURCE_H
2 #define _SYS_RESOURCE_H
3
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7
8 #define __NEED_id_t
9 #define __NEED_time_t
10 #define __NEED_struct_timeval
11
12 #include <bits/alltypes.h>
13
14 typedef unsigned long long rlim_t;
15
16 struct rlimit
17 {
18         rlim_t rlim_cur;
19         rlim_t rlim_max;
20 };
21
22 struct rusage
23 {
24         struct timeval ru_utime;
25         struct timeval ru_stime;
26         /* linux extentions, but useful */
27         long    ru_maxrss;
28         long    ru_ixrss;
29         long    ru_idrss;
30         long    ru_isrss;
31         long    ru_minflt;
32         long    ru_majflt;
33         long    ru_nswap;
34         long    ru_inblock;
35         long    ru_oublock;
36         long    ru_msgsnd;
37         long    ru_msgrcv;
38         long    ru_nsignals;
39         long    ru_nvcsw;
40         long    ru_nivcsw;
41         /* room for more... */
42         long    __reserved[16];
43 };
44
45 int getrlimit (int, struct rlimit *);
46 int setrlimit (int, const struct rlimit *);
47 int getrusage (int, struct rusage *);
48
49 int getpriority (int, id_t);
50 int setpriority (int, id_t, int);
51
52 #define PRIO_PROCESS 0
53 #define PRIO_PGRP    1
54 #define PRIO_USER    2
55
56 #define RUSAGE_SELF     0
57 #define RUSAGE_CHILDREN 1
58
59 #define RLIM_INFINITY (~0ULL)
60 #define RLIM_SAVED_CUR RLIM_INFINITY
61 #define RLIM_SAVED_MAX RLIM_INFINITY
62
63 #define RLIMIT_CPU     0
64 #define RLIMIT_FSIZE   1
65 #define RLIMIT_DATA    2
66 #define RLIMIT_STACK   3
67 #define RLIMIT_CORE    4
68 #define RLIMIT_RSS     5
69 #define RLIMIT_NOFILE  7
70 #define RLIMIT_AS      9
71 #define RLIMIT_NPROC   6
72 #define RLIMIT_MEMLOCK 8
73 #define RLIMIT_LOCKS   10
74 #define RLIMIT_SIGPENDING 11
75 #define RLIMIT_MSGQUEUE 12
76 #define RLIMIT_NICE    13
77 #define RLIMIT_RTPRIO  14
78 #define RLIMIT_NLIMITS 15
79
80 #define RLIM_NLIMITS RLIMIT_NLIMITS
81
82
83 #ifdef __cplusplus
84 }
85 #endif
86
87 #endif