the logic of which FDs to propagate to be kept at the place where the FD is created - likely a totally different piece of code to that which does the fork/exec The code that calls fork()/exec() ought ...
The strings utility is commonly used to scan binary files for "interesting" strings. But, as Michał Zalewski found out when fuzz testing the tool, it does a lot more than just loop through the file ...