Module: sip-router Branch: pd/websocket Commit: c04689c5f5017456a9a5c0f6b617e13ee6f7a1d6 URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=c04689c5...
Author: Peter Dunkley peter.dunkley@crocodile-rcs.com Committer: Peter Dunkley peter.dunkley@crocodile-rcs.com Date: Sun Jun 17 14:28:20 2012 +0100
core: added clone buf support for WebSocket connections
---
tcp_read.c | 17 ++++++++++++++++- 1 files changed, 16 insertions(+), 1 deletions(-)
diff --git a/tcp_read.c b/tcp_read.c index 187e9a1..5c45469 100644 --- a/tcp_read.c +++ b/tcp_read.c @@ -1035,6 +1035,8 @@ static int tcp_read_ws(struct tcp_connection *c, int* read_flags) #endif bytes = tcp_read(c, read_flags);
+ LM_INFO("read %d bytes\n", bytes); + if (bytes <= 0) return 0; } @@ -1168,6 +1170,11 @@ int receive_tcp_msg(char* tcpbuf, unsigned int len, if(unlikely(con->req.flags&F_TCP_REQ_MSRP_FRAME)) return msrp_process_msg(tcpbuf, len, rcv_info, con); #endif +#ifdef READ_WS + if(unlikely(con->flags & F_CONN_WS)) + return ws_process_msg(tcpbuf, len, rcv_info, con); +#endif + return receive_msg(tcpbuf, len, rcv_info); }
@@ -1211,12 +1218,20 @@ int receive_tcp_msg(char* tcpbuf, unsigned int len, if(unlikely(con->req.flags&F_TCP_REQ_MSRP_FRAME)) return msrp_process_msg(buf, len, rcv_info, con); #endif +#ifdef READ_WS + if(unlikely(con->flags & F_CONN_WS)) + return ws_process_msg(buf, len, rcv_info, con); +#endif return receive_msg(buf, len, rcv_info); #else /* TCP_CLONE_RCVBUF */ #ifdef READ_MSRP if(unlikely(con->req.flags&F_TCP_REQ_MSRP_FRAME)) return msrp_process_msg(tcpbuf, len, rcv_info, con); #endif +#ifdef READ_WS + if(unlikely(con->flags & F_CONN_WS)) + return ws_process_msg(tcpbuf, len, rcv_info, con); +#endif return receive_msg(tcpbuf, len, rcv_info); #endif /* TCP_CLONE_RCVBUF */ } @@ -1361,7 +1376,7 @@ again: #endif #ifdef READ_WS if (unlikely(con->flags&F_CONN_WS)){ - ret = ws_process_msg(req->start, req->parsed-req->start, + ret = receive_tcp_msg(req->start, req->parsed-req->start, &con->rcv, con); }else #endif