socket: Add vectored I/O support for receiving on sockets
authorPhilip Withnall <philip.withnall@collabora.co.uk>
Thu, 16 Jan 2014 15:45:12 +0000 (15:45 +0000)
committerOlivier Crête <olivier.crete@collabora.com>
Fri, 31 Jan 2014 06:49:07 +0000 (01:49 -0500)
commitdfab04cd8819f8244f783316c18642e49353c73e
treec2a48d62f82f7d41ffe268c7a896b063ce70a9b6
parentbc527dcf63e9fb71e7432252a3371def265ba1e7
socket: Add vectored I/O support for receiving on sockets

Replace the recv() API with a recv_messages() API, which supports
receiving multiple messages, each with multiple buffers rather than a
single monolithic buffer.

This doesn’t break API, as the socket API is not exposed outside
libnice. It does introduce a new struct: NiceInputMessage, which is
analogous to struct mmsghdr.

This includes updates to the test-bsd test to cover the changed API.
14 files changed:
agent/agent-priv.h
agent/agent.c
agent/agent.h
docs/reference/libnice/libnice-sections.txt
socket/http.c
socket/pseudossl.c
socket/socket.c
socket/socket.h
socket/socks5.c
socket/tcp-bsd.c
socket/tcp-turn.c
socket/turn.c
socket/udp-bsd.c
tests/test-bsd.c