LibSecRm can do nothing if:
- a program is using direct kernel calls or non-standard calls, thus bypassing even the C library,
- LibSecRm is not loaded (read the "Installing" chapter in the "info" docs),
- a program is linked statically (so it doesn't use shared libraries and has all the functions compiled in it),
- the operating system doesn't support shared libraries (like DOS),
- the operating system doesn't support preloading shared libraries before system libraries,
- LibSecRm is enabled by setting environment variables and a program is launched by another program, which clears the environment variables used by the dynamic linker, so the dynamic linker doesn't preload LibSecRm. Some Java Runtime Environments seem to do this.