daemon error handling: recursive_mkdir shouldn't need to set errno.