rem: DBG("!!!!! ref_counter: %d\n", t->ref_count);
context: static void fifo_callback( struct cell *t, int type, struct tmcb_params *ps ){		char *filename;	FILE* f;	str text;	DBG("!!!!! ref_counter: %d\n", t->ref_count);	DBG("DEBUG: fifo UAC completed with status %d\n", ps->code);	if (!*ps->param) {		LOG(L_INFO, "INFO: fifo UAC completed with status %d\n", ps->code);		return;	}	filename=(char *)(*ps->param);	if (ps->rpl==FAKED_REPLY) {		get_reply_status( &text, ps->rpl, ps->code);		if (text.s==0) {			LOG(L_ERR, "ERROR: fifo_callback: get_reply_status failed\n");			fifo_reply( filename,				"500 fifo_callback: get_reply_status failed\n");			goto done;		}		fifo_reply(filename, "%.*s\n", text.len, text.s );		pkg_free(text.s);	} else {		text.s = ps->rpl->first_line.u.reply.reason.s;		text.len = ps->rpl->first_line.u.reply.reason.len;		f = open_reply_pipe(filename);		if (!f) return;		fprintf(f, "%d %.*s\n", ps->rpl->first_line.u.reply.statuscode, text.len, text.s);		print_uris(f, ps->rpl);		fprintf(f, "%s\n", ps->rpl->headers->name.s);		fclose(f);	}	DBG("DEBUG: fifo_callback successfully completed\n");done:	shm_free(filename);}