apache
"Misspelling of feature name induces undeclared struct field
Even if RLIMIT_NPROC is enabled the field limits of cgid_req_t will not be declared, since it is guarded by RLMIT_NPROC (missing an I). But this field is used by the send_req function if RLIMIT_NPROC is enabled."
Bug fixed by commit d0040a07aec
| Type | UndeclaredIdentifier |
| Config | "RLIMIT_NPROC && !RLIMIT_CPU && !RLIMIT_DATA && !RLIMIT_VMEM && !RLIMIT_AS" (5th degree) |
| Fix-in | mapping |
| Location | server/ |
#include <stdio.h>
#include <stdlib.h>
#if defined (RLIMIT_CPU) || defined (RLMIT_NPROC) || defined (RLIMIT_DATA) || defined(RLIMIT_VMEM) || defined(RLIMIT_AS)
int limits;
#endif
void send_req()
{
#ifdef RLIMIT_NPROC
limits = (rand() % 2) ? 1 : 0; // ERROR: limits not declared
printf("%d", limits);
#endif
}
int main(void)
{
send_req();
return 0;
}
diff --git a/apache/simple/d0040a0.c b/apache/simple/d0040a0.c --- a/apache/simple/d0040a0.c +++ b/apache/simple/d0040a0.c @@ -1,7 +1,7 @@ #include <stdio.h> #include <stdlib.h> -#if defined (RLIMIT_CPU) || defined (RLMIT_NPROC) || defined (RLIMIT_DATA) || defined(RLIMIT_VMEM) || defined(RLIMIT_AS) +#if defined (RLIMIT_CPU) || defined (RLIMIT_NPROC) || defined (RLIMIT_DATA) || defined(RLIMIT_VMEM) || defined(RLIMIT_AS) int limits; #endif
. modules/generators/mod_cgid.c:206: #if defined (RLIMIT_CPU) || defined (RLMIT_NPROC) || defined (RLIMIT_DATA) || defined(RLIMIT_VMEM) || defined(RLIMIT_AS) . modules/generators/mod_cgid.c:207: cgid_rlimit_t limits; . call modules/generators/mod_cgid.c :470:send_req() . modules/generators/mod_cgid.c:550: #ifdef RLIMIT_NPROC . ERROR modules/generators/mod_cgid.c:552: req.limits.limit_nproc = *(core_conf->limit_nproc);