Example #1
0
void yahoo_callback(struct conn_handler *c, yahoo_input_condition cond)
{
	LOG("yahoo_callback\n");
	int ret=1;
	char buff[1024]={0};

	if(c->id < 0) {
		connect_complete(c->data, c->con, cond);
	} else {
		if(cond & YAHOO_INPUT_READ)
			ret = yahoo_read_ready(c->id, c->con, c->data);
		if(ret>0 && cond & YAHOO_INPUT_WRITE)
			ret = yahoo_write_ready(c->id, c->con, c->data);

		if(ret == -1)
			snprintf(buff, sizeof(buff), 
				"Yahoo read error (%d): %s", errno, strerror(errno));
		else if(ret == 0)
			snprintf(buff, sizeof(buff), 
				"Yahoo read error: Server closed socket");

		if(buff[0])
			LOG((buff));
	}
}
Example #2
0
void yahoo_callback(struct fd_conn *c, yahoo_input_condition cond)
{
	int ret=1;
	char buff[1024]={0};
	
	if(c->id < 0) {
		connect_complete(c->data, c->fd, cond);
		LOG(kProtocolName, liDebug, "calling connect_complete()");
	} else {
		if(cond & YAHOO_INPUT_READ) {
			ret = yahoo_read_ready(c->id, c->fd, c->data);
//			LOG(kProtocolName, liDebug, "Data read fd: %d, tag: %d, cond: %d", c->fd, c->tag, c->cond);
		}
		if(ret>0 && cond & YAHOO_INPUT_WRITE) {
			ret = yahoo_write_ready(c->id, c->fd, c->data);
//			LOG(kProtocolName, liDebug, "Data written fd: %d, tag: %d, cond: %d", c->fd, c->tag, c->cond);
		}

		if(ret == -1)
			snprintf(buff, sizeof(buff), 
				"Yahoo read error (%d): %s", errno, strerror(errno));
		else if(ret == 0)
			snprintf(buff, sizeof(buff), 
				"Yahoo read error: Server closed socket");
		
		if(buff[0])
			LOG(kProtocolName, liDebug, "Error: %s", buff);
	}
}