From: Aurelien DARRAGON Date: Fri, 26 May 2023 12:04:18 +0000 (+0200) Subject: BUILD: init: print rlim_cur as regular integer X-Git-Tag: v2.8.0~21 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=33bbeecde3427ded13cf53c1ff99f4e6b1687b35;p=thirdparty%2Fhaproxy.git BUILD: init: print rlim_cur as regular integer haproxy does not compile anymore on macOS+clang since 425d7ad ("MINOR: init: pre-allocate kernel data structures on init"). This is due to rlim_cur being printed uncasted using %lu format specifier, with rlim_cur being stored as a rlim_t which is a typedef so its size may vary depending on the system's architecture. This is not the first time we need to dump rlim_cur in case of errors, there are already multiple occurences in the init code. Everywhere this happens, rlim is casted as a regular int and printed using the '%d' format specifier, so we do the same here as well to fix the build issue. No backport needed unless 425d7ad gets backported. --- diff --git a/src/haproxy.c b/src/haproxy.c index 0405647019..93b0780108 100644 --- a/src/haproxy.c +++ b/src/haproxy.c @@ -3524,8 +3524,8 @@ int main(int argc, char **argv) if (global.prealloc_fd && fcntl((int)limit.rlim_cur - 1, F_GETFD) == -1) { if (dup2(0, (int)limit.rlim_cur - 1) == -1) - ha_warning("[%s.main()] Unable to preallocate file descriptor %lu : %s", - argv[0], limit.rlim_cur-1, strerror(errno)); + ha_warning("[%s.main()] Unable to preallocate file descriptor %d : %s", + argv[0], (int)limit.rlim_cur - 1, strerror(errno)); else close((int)limit.rlim_cur - 1); }