Lines Matching refs:req

64   uv_udp_send_t* req;  in uv__udp_finish_close()  local
74 req = uv__queue_data(q, uv_udp_send_t, queue); in uv__udp_finish_close()
75 req->status = UV_ECANCELED; in uv__udp_finish_close()
76 uv__queue_insert_tail(&handle->write_completed_queue, &req->queue); in uv__udp_finish_close()
92 uv_udp_send_t* req; in uv__udp_run_completed() local
102 req = uv__queue_data(q, uv_udp_send_t, queue); in uv__udp_run_completed()
105 handle->send_queue_size -= uv__count_bufs(req->bufs, req->nbufs); in uv__udp_run_completed()
108 if (req->bufs != req->bufsml) in uv__udp_run_completed()
109 uv__free(req->bufs); in uv__udp_run_completed()
110 req->bufs = NULL; in uv__udp_run_completed()
112 if (req->send_cb == NULL) in uv__udp_run_completed()
118 if (req->status >= 0) in uv__udp_run_completed()
119 req->send_cb(req, 0); in uv__udp_run_completed()
121 req->send_cb(req, req->status); in uv__udp_run_completed()
285 static void uv__udp_sendmsg_one(uv_udp_t* handle, uv_udp_send_t* req) { in uv__udp_sendmsg_one() argument
292 if (req->addr.ss_family == AF_UNSPEC) { in uv__udp_sendmsg_one()
296 h.msg_name = &req->addr; in uv__udp_sendmsg_one()
297 if (req->addr.ss_family == AF_INET6) in uv__udp_sendmsg_one()
299 else if (req->addr.ss_family == AF_INET) in uv__udp_sendmsg_one()
301 else if (req->addr.ss_family == AF_UNIX) in uv__udp_sendmsg_one()
308 h.msg_iov = (struct iovec*) req->bufs; in uv__udp_sendmsg_one()
309 h.msg_iovlen = req->nbufs; in uv__udp_sendmsg_one()
319 req->status = (size == -1 ? UV__ERR(errno) : size); in uv__udp_sendmsg_one()
326 uv__queue_remove(&req->queue); in uv__udp_sendmsg_one()
327 uv__queue_insert_tail(&handle->write_completed_queue, &req->queue); in uv__udp_sendmsg_one()
334 req = uv__queue_data(q, uv_udp_send_t, queue); in uv__udp_sendmsg_one()
340 uv_udp_send_t* req; in uv__udp_sendmsg_many() local
352 req = uv__queue_data(q, uv_udp_send_t, queue); in uv__udp_sendmsg_many()
356 if (req->addr.ss_family == AF_UNSPEC) { in uv__udp_sendmsg_many()
360 p->msg_hdr.msg_name = &req->addr; in uv__udp_sendmsg_many()
361 if (req->addr.ss_family == AF_INET6) in uv__udp_sendmsg_many()
363 else if (req->addr.ss_family == AF_INET) in uv__udp_sendmsg_many()
365 else if (req->addr.ss_family == AF_UNIX) in uv__udp_sendmsg_many()
372 h[pkts].msg_hdr.msg_iov = (struct iovec*) req->bufs; in uv__udp_sendmsg_many()
373 h[pkts].msg_hdr.msg_iovlen = req->nbufs; in uv__udp_sendmsg_many()
392 req = uv__queue_data(q, uv_udp_send_t, queue); in uv__udp_sendmsg_many()
393 req->status = UV__ERR(errno); in uv__udp_sendmsg_many()
394 uv__queue_remove(&req->queue); in uv__udp_sendmsg_many()
395 uv__queue_insert_tail(&handle->write_completed_queue, &req->queue); in uv__udp_sendmsg_many()
407 req = uv__queue_data(q, uv_udp_send_t, queue); in uv__udp_sendmsg_many()
408 req->status = req->bufs[0].len; in uv__udp_sendmsg_many()
415 uv__queue_remove(&req->queue); in uv__udp_sendmsg_many()
416 uv__queue_insert_tail(&handle->write_completed_queue, &req->queue); in uv__udp_sendmsg_many()
429 uv_udp_send_t* req; in uv__udp_sendmsg() local
435 req = uv__queue_data(q, uv_udp_send_t, queue); in uv__udp_sendmsg()
442 if (req->nbufs != 1 || &handle->write_queue != uv__queue_next(&req->queue)) in uv__udp_sendmsg()
446 return uv__udp_sendmsg_one(handle, req); in uv__udp_sendmsg()
721 int uv__udp_send(uv_udp_send_t* req, in uv__udp_send() argument
745 uv__req_init(handle->loop, req, UV_UDP_SEND); in uv__udp_send()
746 assert(addrlen <= sizeof(req->addr)); in uv__udp_send()
748 req->addr.ss_family = AF_UNSPEC; in uv__udp_send()
750 memcpy(&req->addr, addr, addrlen); in uv__udp_send()
751 req->send_cb = send_cb; in uv__udp_send()
752 req->handle = handle; in uv__udp_send()
753 req->nbufs = nbufs; in uv__udp_send()
755 req->bufs = req->bufsml; in uv__udp_send()
756 if (nbufs > ARRAY_SIZE(req->bufsml)) in uv__udp_send()
757 req->bufs = uv__malloc(nbufs * sizeof(bufs[0])); in uv__udp_send()
759 if (req->bufs == NULL) { in uv__udp_send()
764 memcpy(req->bufs, bufs, nbufs * sizeof(bufs[0])); in uv__udp_send()
765 handle->send_queue_size += uv__count_bufs(req->bufs, req->nbufs); in uv__udp_send()
767 uv__queue_insert_tail(&handle->write_queue, &req->queue); in uv__udp_send()