Update of /cvsroot/playerstage/code/player/client_libs/libplayerc
In directory
sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13484/client_libs/libplayerc
Modified Files:
client.c playerc.h
Log Message:
post-CVS-screwup changes
Index: client.c
===================================================================
RCS file: /cvsroot/playerstage/code/player/client_libs/libplayerc/client.c,v
retrieving revision 1.68
retrieving revision 1.69
diff -C2 -d -r1.68 -r1.69
*** client.c 5 May 2006 06:19:59 -0000 1.68
--- client.c 12 May 2006 21:34:09 -0000 1.69
***************
*** 142,149 ****
// TODO: make this memory allocation more conservative
client->data = (char*)malloc(PLAYER_MAX_MESSAGE_SIZE);
! client->xdrdata = (char*)malloc(PLAYERXDR_MAX_MESSAGE_SIZE);
! client->xdrdata_len = 0;
assert(client->data);
! assert(client->xdrdata);
client->qfirst = 0;
--- 142,151 ----
// TODO: make this memory allocation more conservative
client->data = (char*)malloc(PLAYER_MAX_MESSAGE_SIZE);
! client->write_xdrdata = (char*)malloc(PLAYERXDR_MAX_MESSAGE_SIZE);
! client->read_xdrdata = (char*)malloc(PLAYERXDR_MAX_MESSAGE_SIZE);
! client->read_xdrdata_len = 0;
assert(client->data);
! assert(client->write_xdrdata);
! assert(client->read_xdrdata);
client->qfirst = 0;
***************
*** 156,161 ****
/* this is the server's default */
client->mode = PLAYER_DATAMODE_PUSH;
! client->request_timeout = 1.0;
return client;
--- 158,164 ----
/* this is the server's default */
client->mode = PLAYER_DATAMODE_PUSH;
+ client->transport = PLAYERC_TRANSPORT_TCP;
! client->request_timeout = 5.0;
return client;
***************
*** 167,171 ****
{
free(client->data);
! free(client->xdrdata);
free(client->host);
free(client);
--- 170,175 ----
{
free(client->data);
! free(client->write_xdrdata);
! free(client->read_xdrdata);
free(client->host);
free(client);
***************
*** 389,393 ****
{
PLAYERC_ERR1("poll returned error [%s]", strerror(errno));
! playerc_client_disconnect(client);
return -1;
}
--- 393,397 ----
{
PLAYERC_ERR1("poll returned error [%s]", strerror(errno));
! //playerc_client_disconnect(client);
return -1;
}
***************
*** 395,399 ****
{
PLAYERC_ERR("socket disconnected");
! playerc_client_disconnect(client);
return -1;
}
--- 399,403 ----
{
PLAYERC_ERR("socket disconnected");
! //playerc_client_disconnect(client);
return -1;
}
***************
*** 441,444 ****
--- 445,454 ----
default:
PLAYERC_WARN1 ("unexpected message type [%d]", header.type);
+ printf("address: %u:%u:%u:%u\nsize: %u",
+ header.addr.host,
+ header.addr.robot,
+ header.addr.interf,
+ header.addr.index,
+ header.size);
return NULL;
}
***************
*** 767,786 ****
}
! while(client->xdrdata_len < PLAYERXDR_MSGHDR_SIZE)
{
! nbytes = timed_recv(client->sock, client->xdrdata + client->xdrdata_len,
! PLAYERXDR_MAX_MESSAGE_SIZE - client->xdrdata_len,
0, client->request_timeout * 1e3);
if (nbytes <= 0)
{
PLAYERC_ERR1("recv failed with error [%s]", strerror(errno));
! playerc_client_disconnect(client);
return -1;
}
! client->xdrdata_len += nbytes;
}
// Unpack the header
! if(player_msghdr_pack(client->xdrdata,
PLAYERXDR_MSGHDR_SIZE,
header, PLAYERXDR_DECODE) < 0)
--- 777,797 ----
}
! while(client->read_xdrdata_len < PLAYERXDR_MSGHDR_SIZE)
{
! nbytes = timed_recv(client->sock,
! client->read_xdrdata + client->read_xdrdata_len,
! PLAYERXDR_MAX_MESSAGE_SIZE - client->read_xdrdata_len,
0, client->request_timeout * 1e3);
if (nbytes <= 0)
{
PLAYERC_ERR1("recv failed with error [%s]", strerror(errno));
! //playerc_client_disconnect(client);
return -1;
}
! client->read_xdrdata_len += nbytes;
}
// Unpack the header
! if(player_msghdr_pack(client->read_xdrdata,
PLAYERXDR_MSGHDR_SIZE,
header, PLAYERXDR_DECODE) < 0)
***************
*** 796,816 ****
// Slide over the header
! memmove(client->xdrdata,
! client->xdrdata + PLAYERXDR_MSGHDR_SIZE,
! client->xdrdata_len - PLAYERXDR_MSGHDR_SIZE);
! client->xdrdata_len -= PLAYERXDR_MSGHDR_SIZE;
! while(client->xdrdata_len < header->size)
{
! nbytes = timed_recv(client->sock, client->xdrdata + client->xdrdata_len,
! PLAYERXDR_MAX_MESSAGE_SIZE - client->xdrdata_len,
0, client->request_timeout*1e3);
if (nbytes <= 0)
{
PLAYERC_ERR1("recv failed with error [%s]", strerror(errno));
! playerc_client_disconnect(client);
return -1;
}
! client->xdrdata_len += nbytes;
}
--- 807,828 ----
// Slide over the header
! memmove(client->read_xdrdata,
! client->read_xdrdata + PLAYERXDR_MSGHDR_SIZE,
! client->read_xdrdata_len - PLAYERXDR_MSGHDR_SIZE);
! client->read_xdrdata_len -= PLAYERXDR_MSGHDR_SIZE;
! while(client->read_xdrdata_len < header->size)
{
! nbytes = timed_recv(client->sock,
! client->read_xdrdata + client->read_xdrdata_len,
! PLAYERXDR_MAX_MESSAGE_SIZE - client->read_xdrdata_len,
0, client->request_timeout*1e3);
if (nbytes <= 0)
{
PLAYERC_ERR1("recv failed with error [%s]", strerror(errno));
! //playerc_client_disconnect(client);
return -1;
}
! client->read_xdrdata_len += nbytes;
}
***************
*** 827,831 ****
// Unpack the body
! if((decode_msglen = (*packfunc)(client->xdrdata,
header->size, data, PLAYERXDR_DECODE)) < 0)
{
--- 839,843 ----
// Unpack the body
! if((decode_msglen = (*packfunc)(client->read_xdrdata,
header->size, data, PLAYERXDR_DECODE)) < 0)
{
***************
*** 836,848 ****
// Slide over the body
! memmove(client->xdrdata,
! client->xdrdata + header->size,
! client->xdrdata_len - header->size);
! client->xdrdata_len -= header->size;
// Rewrite the header with the decoded message length
header->size = decode_msglen;
-
return 0;
}
--- 848,859 ----
// Slide over the body
! memmove(client->read_xdrdata,
! client->read_xdrdata + header->size,
! client->read_xdrdata_len - header->size);
! client->read_xdrdata_len -= header->size;
// Rewrite the header with the decoded message length
header->size = decode_msglen;
return 0;
}
***************
*** 880,884 ****
if((encode_msglen =
! (*packfunc)(client->xdrdata + PLAYERXDR_MSGHDR_SIZE,
PLAYER_MAX_MESSAGE_SIZE - PLAYERXDR_MSGHDR_SIZE,
data, PLAYERXDR_ENCODE)) < 0)
--- 891,895 ----
if((encode_msglen =
! (*packfunc)(client->write_xdrdata + PLAYERXDR_MSGHDR_SIZE,
PLAYER_MAX_MESSAGE_SIZE - PLAYERXDR_MSGHDR_SIZE,
data, PLAYERXDR_ENCODE)) < 0)
***************
*** 897,901 ****
header->timestamp = curr.tv_sec + curr.tv_usec / 1e6;
// Pack the header
! if(player_msghdr_pack(client->xdrdata, PLAYERXDR_MSGHDR_SIZE,
header, PLAYERXDR_ENCODE) < 0)
{
--- 908,912 ----
header->timestamp = curr.tv_sec + curr.tv_usec / 1e6;
// Pack the header
! if(player_msghdr_pack(client->write_xdrdata, PLAYERXDR_MSGHDR_SIZE,
header, PLAYERXDR_ENCODE) < 0)
{
***************
*** 909,913 ****
do
{
! ret = send(client->sock, &client->xdrdata[length-bytes],
bytes, 0);
if (ret > 0)
--- 920,924 ----
do
{
! ret = send(client->sock, &client->write_xdrdata[length-bytes],
bytes, 0);
if (ret > 0)
***************
*** 918,922 ****
{
PLAYERC_ERR2("send on body failed with error [%d:%s]", errno,
strerror(errno));
! playerc_client_disconnect(client);
return -1;
}
--- 929,933 ----
{
PLAYERC_ERR2("send on body failed with error [%d:%s]", errno,
strerror(errno));
! //playerc_client_disconnect(client);
return -1;
}
Index: playerc.h
===================================================================
RCS file: /cvsroot/playerstage/code/player/client_libs/libplayerc/playerc.h,v
retrieving revision 1.193
retrieving revision 1.194
diff -C2 -d -r1.193 -r1.194
*** playerc.h 6 May 2006 23:08:58 -0000 1.193
--- playerc.h 12 May 2006 21:34:09 -0000 1.194
***************
*** 471,476 ****
/** @internal Temp buffers for incoming / outgoing packets. */
char *data;
! char *xdrdata;
! size_t xdrdata_len;
/** Server time stamp on the last packet. */
--- 471,478 ----
/** @internal Temp buffers for incoming / outgoing packets. */
char *data;
! char *write_xdrdata;
! char *read_xdrdata;
! size_t read_xdrdata_len;
!
/** Server time stamp on the last packet. */
-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Playerstage-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/playerstage-commit