Hi. We got this bug report: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1069486 I was able to reproduce this on an armel machine. This may be another 32-bit vs 64-bit file offset problem. Any ideas? /Simon
priv_wrapper doesn't implement setrlimit64 nor __prctl_time64.
It seems priv-wrapper is binding setrlimit somehow, and on #debian-arm it was suggested that the following patch would solve this on 32-bit arm's. Thoughts? --- orig/priv-wrapper-1.0.1/src/priv_wrapper.c 2022-11-24 14:06:06.000000000 +0000 +++ priv-wrapper-1.0.1/src/priv_wrapper.c 2024-09-25 20:28:52.994318068 +0000 @@ -335,11 +335,18 @@ _privwrap_bind_symbol(PRIVWRAP_LIBC, #sym_name); \ } + +#define privwrap_bind_symbol_libc2(sym_name, libc_sym_name) \ + if (privwrap.libc.symbols._libc_##sym_name.obj == NULL) { \ + privwrap.libc.symbols._libc_##sym_name.obj = \ + _privwrap_bind_symbol(PRIVWRAP_LIBC, #libc_sym_name); \ + } + DO_NOT_SANITIZE_ADDRESS_ATTRIBUTE static void __pwrap_bind_symbol_all_once(void) { #ifdef HAVE_SETRLIMIT - privwrap_bind_symbol_libc(setrlimit); + privwrap_bind_symbol_libc2(setrlimit, setrlimit64); #endif privwrap_bind_symbol_libc(chroot); #ifdef HAVE_PRCTL
This is not the right thing to do. It needs to work with binaries compiled with 64bit file support and without. So you need to implement setrlimit64 in priv_wrapper. See also like socket_wrapper is doing it.