| 605 | } |
| 606 | |
| 607 | void TSSLSocket::initializeHandshakeParams() { |
| 608 | // set underlying socket to non-blocking |
| 609 | int flags; |
| 610 | if ((flags = THRIFT_FCNTL(socket_, THRIFT_F_GETFL, 0)) < 0 |
| 611 | || THRIFT_FCNTL(socket_, THRIFT_F_SETFL, flags | THRIFT_O_NONBLOCK) < 0) { |
| 612 | TOutput::instance().perror("thriftServerEventHandler: set THRIFT_O_NONBLOCK (THRIFT_FCNTL) ", |
| 613 | THRIFT_GET_SOCKET_ERROR); |
| 614 | ::THRIFT_CLOSESOCKET(socket_); |
| 615 | return; |
| 616 | } |
| 617 | ssl_ = ctx_->createSSL(); |
| 618 | |
| 619 | SSL_set_fd(ssl_, static_cast<int>(socket_)); |
| 620 | } |
| 621 | |
| 622 | bool TSSLSocket::checkHandshake() { |
| 623 | return handshakeCompleted_; |