rem: if (fd == FERROR) {
add: if (code == FERROR) {
context: void rwrite(int fd, char *buf, int len){	FILE *f=NULL;	extern int am_daemon;	extern int quiet;	/* recursion can happen with certain fatal conditions */	if (quiet != 0 && fd == FINFO) return;	if (len < 0) exit_cleanup(RERR_MESSAGEIO);	buf[len] = 0;	if (fd == FLOG) {		if (am_daemon) logit(LOG_INFO, buf);		return;	}	if (am_daemon) {		static int depth;		int priority = LOG_INFO;		if (fd == FERROR) priority = LOG_WARNING;		if (depth) return;		depth++;		log_open();		if (!io_error_write(log_error_fd, buf, strlen(buf)) &&		    !io_multiplex_write(fd, buf, strlen(buf))) {			logit(priority, buf);		}		depth--;		return;	}	if (fd == FERROR) {		f = stderr;	} 	if (fd == FINFO) {		extern int am_server;		if (am_server) 			f = stderr;		else			f = stdout;	} 	if (!f) exit_cleanup(RERR_MESSAGEIO);	if (fwrite(buf, len, 1, f) != 1) exit_cleanup(RERR_MESSAGEIO);	if (buf[len-1] == '\r' || buf[len-1] == '\n') fflush(f);}