new helper: replace_fd()