mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-20 21:31:28 +02:00
MEDIUM: cfgparse: warn when using user/group when built statically
In issue #3013, an user observed a crash at startup of haproxy when building statically and using the "user" global section. This is a known problem of the glibc and the linker even warn about this: > warning: Using 'getgrnam' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking > warning: Using 'getpwnam' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking Let's emit a warning when using user/group in this case.
This commit is contained in:
parent
3354719709
commit
554a15562f
@ -226,6 +226,15 @@ int cfg_parse_global(const char *file, int linenum, char **args, int kwm)
|
||||
err_code |= ERR_ALERT;
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (build_is_static) {
|
||||
ha_warning("parsing [%s:%d] : haproxy is built statically, the "
|
||||
"libc might crash when resolving \"user %s\", "
|
||||
"please use \"uid\" instead\n",
|
||||
file, linenum, args[1]);
|
||||
err_code |= ERR_WARN;
|
||||
}
|
||||
|
||||
errno = 0;
|
||||
ha_user = getpwnam(args[1]);
|
||||
if (ha_user != NULL) {
|
||||
@ -245,6 +254,16 @@ int cfg_parse_global(const char *file, int linenum, char **args, int kwm)
|
||||
err_code |= ERR_ALERT;
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (build_is_static) {
|
||||
ha_warning("parsing [%s:%d] : haproxy is built statically, the "
|
||||
"libc might crash when resolving \"group %s\", "
|
||||
"please use \"gid\" instead\n",
|
||||
file, linenum, args[1]);
|
||||
err_code |= ERR_WARN;
|
||||
}
|
||||
|
||||
|
||||
errno = 0;
|
||||
ha_group = getgrnam(args[1]);
|
||||
if (ha_group != NULL) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user