On 2023-11-26 10:28:28+0100, Willy Tarreau wrote: > Hi Thomas, > > > +int test_rlimit(void) > > +{ > > + struct rlimit rlim = { > > + .rlim_cur = 1 << 20, > > + .rlim_max = 1 << 20, > > + }; > > + int ret; > > + > > + ret = setrlimit(RLIMIT_CORE, &rlim); > > + if (ret) > > + return -1; > > + > > + rlim.rlim_cur = 0; > > + rlim.rlim_max = 0; > > + > > + ret = getrlimit(RLIMIT_CORE, &rlim); > > + if (ret) > > + return -1; > > + > > + if (rlim.rlim_cur != 1 << 20) > > + return -1; > > + if (rlim.rlim_max != 1 << 20) > > + return -1; > > I think you should used two different values here for cur and max so > that you can also detect stupid API bugs such as a union being used > instead of a struct, or copy-pastes in the implementation etc. For > example using 1<<20 and 1<<21 should do the trick. Good point, I incorporated the suggestion. > Otherwise Ack-by me for the whole series, of course. Thanks! FYI I retested and pushed the series. Thomas