The problem seems to be that glibc (eglibc is identical in this regard, it seems) uses alloca when reading the /etc/hosts file, and does not do the complicated signal handling magic to handle the case when the stack gets full. The fix would be to rewrite the parsing logic to use safer memory allocation methods instead.
The problem seems to be that glibc (eglibc is identical in this regard, it seems) uses alloca when reading the /etc/hosts file, and does not do the complicated signal handling magic to handle the case when the stack gets full. The fix would be to rewrite the parsing logic to use safer memory allocation methods instead.