static void lim_write(pid_t pid, unsigned int resource, __u64 cur, __u64 max) { struct rlimit64 r = { .rlim_cur = cur, .rlim_max = max }; unsigned int a; for (a = 0; a < LIMES_SIZE; a++) if (limes[a].res == resource) break; printf("Writing %20s cur=%.25llu max=%.25llu\n", limes[a].name, cur, max); if (setprlimit(pid, resource, &r)) err(1, "setprlimit"); }
inline int setrlimit(int resource, const struct rlimit *rlp){ return setprlimit(0, 0, resource, const_cast<struct rlimit*>(rlp)); }