rem: if (am_server && io_error_write(log_error_fd, code, buf, len)) {
add: if (am_server && log_error_fd != -1) { err_list_add(code, buf, len); err_list_push();
context: void rwrite(enum logcode code, char *buf, int len){	FILE *f=NULL;	extern int am_daemon;	extern int am_server;	extern int quiet;	/* recursion can happen with certain fatal conditions */	if (quiet && code == FINFO) return;	if (len < 0) exit_cleanup(RERR_MESSAGEIO);	buf[len] = 0;	if (code == FLOG) {		if (am_daemon) logit(LOG_INFO, buf);		return;	}	/* first try to pass it off the our sibling */	if (am_server && io_error_write(log_error_fd, code, buf, len)) {		return;	}	/* if that fails, try to pass it to the other end */	if (am_server && io_multiplex_write(code, buf, len)) {		return;	}	if (am_daemon) {		static int depth;		int priority = LOG_INFO;		if (code == FERROR) priority = LOG_WARNING;		if (depth) return;		depth++;		log_init();		logit(priority, buf);		depth--;		return;	}	if (code == FERROR) {		f = stderr;	} 	if (code == FINFO) {		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);}