Should you check the return value and produce something from sysexits.h instead?