From rtld.c: case 10: /* Mask for the important hardware capabilities. */ if (memcmp (envline, "HWCAP_MASK", 10) == 0) GLRO(dl_hwcap_mask) = __strtoul_internal (&envline[11], NULL, 0, 0); As far as I can see, there is no check that makes sure that the tenth byte isn't already the terminating nullbyte.
Ah, didn't see the `if (envline[len] != '=')`. Sorry.