Lines Matching refs:c

91     nxt_conn_t *c);
93 static ssize_t nxt_openssl_conn_io_recvbuf(nxt_conn_t *c, nxt_buf_t *b);
99 static nxt_int_t nxt_openssl_conn_test_error(nxt_task_t *task, nxt_conn_t *c,
739 nxt_conn_t *c; local
745 c = SSL_get_ex_data(s, nxt_openssl_connection_index);
747 if (nxt_slow_path(c == NULL)) {
752 tls = c->u.tls;
760 nxt_debug(c->socket.task, "TLS session ticket encrypt");
765 nxt_openssl_log_error(c->socket.task, NXT_LOG_ALERT,
774 nxt_openssl_log_error(c->socket.task, NXT_LOG_ALERT,
789 nxt_debug(c->socket.task, "TLS session ticket decrypt, key not found");
795 nxt_debug(c->socket.task,
804 nxt_openssl_log_error(c->socket.task, NXT_LOG_ALERT,
819 nxt_openssl_log_error(c->socket.task, NXT_LOG_ALERT,
1034 nxt_conn_t *c; local
1040 c = SSL_get_ex_data(s, nxt_openssl_connection_index);
1042 if (nxt_slow_path(c == NULL)) {
1050 nxt_debug(c->socket.task, "SSL_get_servername(): NULL");
1056 nxt_debug(c->socket.task, "SSL_get_servername(): \"\" is empty");
1061 nxt_debug(c->socket.task, "ignored the server name \"%s\": "
1066 nxt_debug(c->socket.task, "tls with servername \"%s\"", servername);
1068 str.start = nxt_mp_nget(c->mem_pool, str.length);
1075 tls = c->u.tls;
1093 nxt_debug(c->socket.task, "new tls context found for \"%V\": \"%V\" "
1099 nxt_openssl_log_error(c->socket.task, NXT_LOG_ALERT,
1161 nxt_openssl_conn_init(nxt_task_t *task, nxt_tls_conf_t *conf, nxt_conn_t *c) argument
1168 nxt_log_debug(c->socket.log, "openssl conn init");
1170 tls = nxt_mp_zget(c->mem_pool, sizeof(nxt_openssl_conn_t));
1175 c->u.tls = tls;
1189 tls->conn = c;
1191 ret = SSL_set_fd(s, c->socket.fd);
1195 c->socket.fd);
1201 if (SSL_set_ex_data(s, nxt_openssl_connection_index, c) == 0) {
1206 c->io = &nxt_openssl_conn_io;
1207 c->sendfile = NXT_CONN_SENDFILE_OFF;
1209 nxt_openssl_conn_handshake(task, c, c->socket.data);
1215 nxt_work_queue_add(c->read_work_queue, c->read_state->error_handler,
1216 task, c, c->socket.data);
1221 nxt_openssl_conn_free(nxt_task_t *task, nxt_conn_t *c) argument
1227 tls = c->u.tls;
1230 c->u.tls = NULL;
1243 nxt_conn_t *c; local
1249 c = obj;
1251 nxt_debug(task, "openssl conn handshake fd:%d", c->socket.fd);
1253 if (c->socket.error != 0) {
1257 tls = c->u.tls;
1273 nxt_debug(task, "SSL_do_handshake(%d): %d err:%d", c->socket.fd, ret, err);
1275 state = (c->read_state != NULL) ? c->read_state : c->write_state;
1281 if (c->read_state != NULL) {
1282 if (state->io_read_handler != NULL || c->read != NULL) {
1283 nxt_conn_read(task->thread->engine, c);
1288 if (c->write != NULL) {
1289 nxt_conn_write(task->thread->engine, c);
1297 c->socket.read_handler = nxt_openssl_conn_handshake;
1298 c->socket.write_handler = nxt_openssl_conn_handshake;
1300 n = nxt_openssl_conn_test_error(task, c, ret, err,
1318 c->socket.fd);
1325 wq = (c->read_state != NULL) ? c->read_work_queue : c->write_work_queue;
1327 nxt_work_queue_add(wq, handler, task, c, data);
1332 nxt_openssl_conn_io_recvbuf(nxt_conn_t *c, nxt_buf_t *b) argument
1340 tls = c->u.tls;
1347 nxt_debug(c->socket.task, "SSL_read(%d, %p, %uz): %d err:%d",
1348 c->socket.fd, b->mem.free, size, ret, err);
1354 n = nxt_openssl_conn_test_error(c->socket.task, c, ret, err,
1357 nxt_openssl_conn_error(c->socket.task, err,
1359 c->socket.fd, b->mem.free, size);
1389 nxt_conn_t *c; local
1405 c = tls->conn;
1406 c->socket.write_ready = sb->ready;
1408 n = nxt_openssl_conn_test_error(task, c, ret, err, NXT_OPENSSL_WRITE);
1410 sb->ready = c->socket.write_ready;
1413 sb->error = c->socket.error;
1430 nxt_conn_t *c; local
1434 c = obj;
1436 nxt_debug(task, "openssl conn shutdown fd:%d", c->socket.fd);
1438 c->read_state = NULL;
1439 tls = c->u.tls;
1448 handler = c->write_state->ready_handler;
1454 if (c->socket.timedout || c->socket.error != 0) {
1457 } else if (c->socket.closed && !(mode & SSL_RECEIVED_SHUTDOWN)) {
1480 c->socket.fd, mode, quiet, ret, err);
1484 handler = c->write_state->ready_handler;
1511 c->socket.read_handler = nxt_openssl_conn_io_shutdown;
1512 c->socket.write_handler = nxt_openssl_conn_io_shutdown;
1513 c->socket.error_handler = c->write_state->error_handler;
1515 n = nxt_openssl_conn_test_error(task, c, ret, err, NXT_OPENSSL_SHUTDOWN);
1520 handler = c->write_state->close_handler;
1524 c->write_timer.handler = nxt_openssl_conn_io_shutdown_timeout;
1525 nxt_timer_add(task->thread->engine, &c->write_timer, 5000);
1531 c->socket.fd);
1532 handler = c->write_state->error_handler;
1537 nxt_openssl_conn_free(task, c);
1539 nxt_work_queue_add(c->write_work_queue, handler, task, c, data);
1544 nxt_openssl_conn_test_error(nxt_task_t *task, nxt_conn_t *c, int ret, argument
1550 tls = c->u.tls;
1559 c->socket.read_ready = 0;
1562 nxt_fd_event_block_write(task->thread->engine, &c->socket);
1564 if (nxt_fd_event_is_disabled(c->socket.read)) {
1565 nxt_fd_event_enable_read(task->thread->engine, &c->socket);
1572 c->socket.write_ready = 0;
1575 nxt_fd_event_block_read(task->thread->engine, &c->socket);
1577 if (nxt_fd_event_is_disabled(c->socket.write)) {
1578 nxt_fd_event_enable_write(task->thread->engine, &c->socket);
1590 c->socket.error = sys_err;
1595 c->socket.closed = 1;
1603 c->socket.error = 1000; /* Nonexistent errno code. */
1612 nxt_conn_t *c; local
1619 c = nxt_write_timer_conn(timer);
1621 c->socket.timedout = 1;
1622 nxt_openssl_conn_io_shutdown(task, c, NULL);