Import Upstream version 20180207
[hcoop/debian/mlton.git] / runtime / basis / MLton / Rlimit / rlimit.c
1 #include "platform.h"
2
3 static struct rlimit MLton_RLimit_rlimit;
4
5 C_Errno_t(C_Int_t) MLton_Rlimit_get (C_Int_t r) {
6 return getrlimit (r, &MLton_RLimit_rlimit);
7 }
8
9 C_RLim_t MLton_Rlimit_getHard (void) {
10 return MLton_RLimit_rlimit.rlim_max;
11 }
12
13 C_RLim_t MLton_Rlimit_getSoft (void) {
14 return MLton_RLimit_rlimit.rlim_cur;
15 }
16
17 C_Errno_t(C_Int_t) MLton_Rlimit_set (C_Int_t r, C_RLim_t hard, C_RLim_t soft) {
18 MLton_RLimit_rlimit.rlim_max = hard;
19 MLton_RLimit_rlimit.rlim_cur = soft;
20 return setrlimit (r, &MLton_RLimit_rlimit);
21 }