syslogd: Use closefrom() instead of getdtablesize()/close() loop.

When syslogd forks a process for '|' destinations, it closes all file
descriptors greater than 2.

Use closefrom() for this instead of a getdtablesize()/close() loop because
it is both faster and avoids leaving file descriptors open because the limit
was lowered after they were opened.

MFC after:	1 week
sh: Don't consider jobs -s/-p as reporting the status of jobs.

This ensures that something like j=$(jobs -p) does not prevent any
status from being written to the terminal.