#include #include #include #include "test.h" int t_setrlim(int r, long lim) { struct rlimit rl; if (getrlimit(r, &rl)) { t_error("getrlimit %d: %s\n", r, strerror(errno)); return -1; } if (lim > rl.rlim_max) return -1; if (lim == rl.rlim_max && lim == rl.rlim_cur) return 0; rl.rlim_max = lim; rl.rlim_cur = lim; if (setrlimit(r, &rl)) { t_error("setrlimit(%d, %ld): %s\n", r, lim, strerror(errno)); return -1; } return 0; }