Lines Matching defs:tcp
113 int uv_tcp_init_ex(uv_loop_t* loop, uv_tcp_t* tcp, unsigned int flags) {
125 uv__stream_init(loop, (uv_stream_t*)tcp, UV_TCP);
132 err = new_socket(tcp, domain, 0);
134 uv__queue_remove(&tcp->handle_queue);
135 if (tcp->io_watcher.fd != -1)
136 uv__close(tcp->io_watcher.fd);
137 tcp->io_watcher.fd = -1;
146 int uv_tcp_init(uv_loop_t* loop, uv_tcp_t* tcp) {
147 return uv_tcp_init_ex(loop, tcp, AF_UNSPEC);
151 int uv__tcp_bind(uv_tcp_t* tcp,
162 err = maybe_new_socket(tcp, addr->sa_family, 0);
167 if (setsockopt(tcp->io_watcher.fd, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on)))
174 if (setsockopt(tcp->io_watcher.fd,
190 err = bind(tcp->io_watcher.fd, addr, addrlen);
198 tcp->delayed_error = (err == -1) ? UV__ERR(errno) : 0;
200 tcp->flags |= UV_HANDLE_BOUND;
202 tcp->flags |= UV_HANDLE_IPV6;
310 * and actually the tcp three-way handshake is completed.
415 int uv__tcp_listen(uv_tcp_t* tcp, int backlog, uv_connection_cb cb) {
419 if (tcp->delayed_error)
420 return tcp->delayed_error;
430 err = maybe_new_socket(tcp, AF_INET, flags);
434 if (listen(tcp->io_watcher.fd, backlog))
437 tcp->connection_cb = cb;
438 tcp->flags |= UV_HANDLE_BOUND;
441 tcp->io_watcher.cb = uv__server_io;
442 uv__io_start(tcp->loop, &tcp->io_watcher, POLLIN);
518 /* Fall back to the first implementation of tcp-alive mechanism for older Solaris,
519 * simulate the tcp-alive mechanism on other platforms via `TCP_KEEPALIVE_THRESHOLD` + `TCP_KEEPALIVE_ABORT_THRESHOLD`.