MCPcopy Create free account
hub / github.com/F-Stack/f-stack / NgAllocRecvData

Function NgAllocRecvData

tools/libnetgraph/sock.c:256–274  ·  view source on GitHub ↗

* Identical to NgRecvData() except buffer is dynamically allocated. */

Source from the content-addressed store, hash-verified

254 * Identical to NgRecvData() except buffer is dynamically allocated.
255 */
256int
257NgAllocRecvData(int ds, u_char **buf, char *hook)
258{
259 int len;
260#ifndef FSTACK
261 socklen_t optlen;
262
263 optlen = sizeof(len);
264 if (getsockopt(ds, SOL_SOCKET, SO_RCVBUF, &len, &optlen) == -1 ||
265#else
266 len = NGCTL_DEFAULT_RCVBUF;
267 if (
268#endif
269 (*buf = malloc(len)) == NULL)
270 return (-1);
271 if ((len = NgRecvData(ds, *buf, len, hook)) < 0)
272 free(*buf);
273 return (len);
274}
275
276/*
277 * Write a packet to a data socket. The packet will be sent

Callers 1

ReadSocketsFunction · 0.85

Calls 4

getsockoptFunction · 0.85
mallocFunction · 0.85
NgRecvDataFunction · 0.85
freeFunction · 0.50

Tested by

no test coverage detected