Ejemplo n.º 1
0
void wpacket_write_binary(wpacket_t w,const void *value,uint32_t size)
{
	assert(value);
	if(!w->raw)
		wpacket_write_uint32(w,size);
	wpacket_write(w,(int8_t*)value,size);
}
Ejemplo n.º 2
0
void on_process_packet(struct connection *c,rpacket_t r)
{
	uint32_t coro_id = rpacket_read_uint32(r);
	const  char *function_name = rpacket_read_string(r);
	int32_t arg1 = rpacket_read_uint32(r);
	int32_t arg2 = rpacket_read_uint32(r);
	uint32_t i = 0;
	wpacket_t w = wpacket_create(SINGLE_THREAD,wpacket_allocator,64,0);
	wpacket_write_uint32(w,coro_id);
	if(strcmp(function_name,"sum") == 0)
		wpacket_write_uint32(w,arg1+arg2);
	else
		wpacket_write_uint32(w,arg1*arg2);
	assert(w);
	connection_send(c,w,NULL);
	rpacket_destroy(&r);
}