MCPcopy Create free account
hub / github.com/Snapchat/KeyDB / registerSSLEvent

Function registerSSLEvent

src/tls.cpp:773–793  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

771}
772
773void registerSSLEvent(tls_connection *conn, WantIOType want) {
774 int mask = aeGetFileEvents(serverTL->el, conn->c.fd);
775
776 serverAssert(conn->el == serverTL->el);
777
778 switch (want) {
779 case WANT_READ:
780 if (mask & AE_WRITABLE) aeDeleteFileEvent(conn->el, conn->c.fd, AE_WRITABLE);
781 if (!(mask & AE_READABLE)) aeCreateFileEvent(conn->el, conn->c.fd, AE_READABLE|AE_READ_THREADSAFE,
782 tlsEventHandler, conn);
783 break;
784 case WANT_WRITE:
785 if (mask & AE_READABLE) aeDeleteFileEvent(conn->el, conn->c.fd, AE_READABLE);
786 if (!(mask & AE_WRITABLE)) aeCreateFileEvent(conn->el, conn->c.fd, AE_WRITABLE|AE_WRITE_THREADSAFE,
787 tlsEventHandler, conn);
788 break;
789 default:
790 serverAssert(0);
791 break;
792 }
793}
794
795void updateSSLEventCore(tls_connection *conn) {
796 int mask = aeGetFileEvents(serverTL->el, conn->c.fd);

Callers 2

tlsHandleEventFunction · 0.85
connTLSAcceptFunction · 0.85

Calls 3

aeGetFileEventsFunction · 0.85
aeDeleteFileEventFunction · 0.85
aeCreateFileEventFunction · 0.85

Tested by

no test coverage detected