On an old embedded linux platform (kernel 2.6.32 running with busybox), I have configured the system to send coredumps using netcat to a remote server using echo "| /usr/bin/nc and by setting ulimit -c unlimited in the shell that launches the program.
Now, if the program crashes by itself, coredumps are generated and sent correctly. However, if I manually trigger the program to crash using kill -11 or any other signal, the program stops but no coredump is generated or sent. What could be the reason for this?
I have tried by setting different limits like ulimit -c 8192 or registered or not signal handlers on different signals like SIGSEGV or SIGABORT, but it did not make any difference. What else could I try, look for?