Comparison

net/server_epoll.lua @ 11677:98bcc19361db

net.server_epoll: Call onconnect immediately after TLS handshake completion Skips a roundtrip through the main loop in case client-first data is available already, if not then :onreadable() will set the appropriate timeout.
author Kim Alvefur <zash@zash.se>
date Tue, 13 Jul 2021 14:58:50 +0200
parent 11676:993462e5e4d4
child 11685:247561bf6fca
comparison
equal deleted inserted replaced
11676:993462e5e4d4 11677:98bcc19361db
633 self:debug("TLS handshake complete"); 633 self:debug("TLS handshake complete");
634 end 634 end
635 self.onwritable = nil; 635 self.onwritable = nil;
636 self.onreadable = nil; 636 self.onreadable = nil;
637 self:on("status", "ssl-handshake-complete"); 637 self:on("status", "ssl-handshake-complete");
638 self:setwritetimeout();
639 self:set(true, true); 638 self:set(true, true);
639 self:onconnect();
640 self:onreadable();
640 elseif err == "wantread" then 641 elseif err == "wantread" then
641 self:noise("TLS handshake to wait until readable"); 642 self:noise("TLS handshake to wait until readable");
642 self:set(true, false); 643 self:set(true, false);
643 self:setreadtimeout(cfg.ssl_handshake_timeout); 644 self:setreadtimeout(cfg.ssl_handshake_timeout);
644 elseif err == "wantwrite" then 645 elseif err == "wantwrite" then