Home | History | Annotate | Download | only in netmgr

Lines Matching defs:csock

416 	isc_nmsocket_t *csock = &sock->children[tid];
419 isc__nmsocket_init(csock, worker, isc_nm_tcpsocket, iface, sock);
420 csock->accept_cb = sock->accept_cb;
421 csock->accept_cbarg = sock->accept_cbarg;
422 csock->backlog = sock->backlog;
427 csock->pquota = sock->pquota;
431 csock->fd = isc__nm_tcp_lb_socket(mgr,
434 csock->fd = dup(fd);
436 REQUIRE(csock->fd >= 0);
439 start_tcp_child_job(csock);
441 isc_async_run(worker->loop, start_tcp_child_job, csock);
543 isc_nmsocket_t *csock = isc_mempool_get(ssock->worker->nmsocket_pool);
544 isc__nmsocket_init(csock, ssock->worker, isc_nm_tcpsocket,
546 isc__nmsocket_attach(ssock, &csock->server);
548 if (csock->server->pquota != NULL) {
549 result = isc_quota_acquire_cb(csock->server->pquota,
550 &csock->quotacb, quota_accept_cb,
551 csock);
553 csock->quota_accept_ts = isc_time_monotonic();
559 result = accept_connection(csock);
829 isc_nmsocket_t *csock = arg;
830 isc_nmsocket_t *ssock = csock->server;
832 REQUIRE(VALID_NMSOCK(csock));
833 REQUIRE(csock->tid == isc_tid());
835 isc_result_t result = accept_connection(csock);
837 isc__nmsocket_detach(&csock);
842 isc_nmsocket_t *csock = arg;
843 isc_nmsocket_t *ssock = csock->server;
845 REQUIRE(VALID_NMSOCK(csock));
851 if (csock->tid == isc_tid()) {
852 isc_result_t result = accept_connection(csock);
856 isc__nmsocket_attach(csock, &(isc_nmsocket_t *){ NULL });
857 isc_async_run(csock->worker->loop, tcpaccept_cb, csock);
862 accept_connection(isc_nmsocket_t *csock) {
869 REQUIRE(VALID_NMSOCK(csock));
870 REQUIRE(VALID_NMSOCK(csock->server));
871 REQUIRE(csock->tid == isc_tid());
873 csock->accepting = true;
874 csock->accept_cb = csock->server->accept_cb;
875 csock->accept_cbarg = csock->server->accept_cbarg;
876 csock->recv_cb = csock->server->recv_cb;
877 csock->recv_cbarg = csock->server->recv_cbarg;
878 csock->read_timeout = atomic_load_relaxed(&csock->worker->netmgr->init);
880 r = uv_tcp_init(&csock->worker->loop->loop, &csock->uv_handle.tcp);
882 uv_handle_set_data(&csock->uv_handle.handle, csock);
884 r = uv_timer_init(&csock->worker->loop->loop, &csock->read_timer);
886 uv_handle_set_data((uv_handle_t *)&csock->read_timer, csock);
888 if (csock->server->pquota != NULL) {
889 isc__nm_incstats(csock, STATID_CLIENTS);
896 if (isc__nmsocket_closing(csock)) {
901 r = uv_accept(&csock->server->uv_handle.stream,
902 &csock->uv_handle.stream);
909 if (csock->quota_accept_ts != 0) {
912 (isc_time_monotonic() - csock->quota_accept_ts) /
915 if (time_elapsed_ms >= csock->read_timeout) {
926 csock->read_timeout -= time_elapsed_ms;
930 r = uv_tcp_getpeername(&csock->uv_handle.tcp, (struct sockaddr *)&ss,
937 result = isc_sockaddr_fromsockaddr(&csock->peer,
943 r = uv_tcp_getsockname(&csock->uv_handle.tcp, (struct sockaddr *)&ss,
955 handle = isc__nmhandle_get(csock, NULL, &local);
957 result = csock->accept_cb(handle, ISC_R_SUCCESS, csock->accept_cbarg);
963 csock->accepting = false;
965 isc__nm_incstats(csock, STATID_ACCEPT);
976 isc__nmsocket_detach(&csock);
981 csock->active = false;
982 csock->accepting = false;
986 isc__nmsocket_log(csock, ISC_LOG_ERROR,
991 isc__nmsocket_prep_destroy(csock);
993 isc__nmsocket_detach(&csock);