158 function interface_mt:_start_session(onconnect) -- new session, for example after startssl |
158 function interface_mt:_start_session(onconnect) -- new session, for example after startssl |
159 if self.type == "client" then |
159 if self.type == "client" then |
160 local callback = function( ) |
160 local callback = function( ) |
161 self:_lock( false, false, false ) |
161 self:_lock( false, false, false ) |
162 --vdebug( "start listening on client socket with id:", self.id ) |
162 --vdebug( "start listening on client socket with id:", self.id ) |
163 self.eventread = addevent( base, self.conn, EV_READ, self.readcallback, cfg.READ_TIMEOUT ) -- register callback |
163 self.eventread = addevent( base, self.conn, EV_READ, self.readcallback, cfg.READ_TIMEOUT ); -- register callback |
164 self:onincoming() |
164 (self.onconnect or self.onincoming)(self) |
165 self.eventsession = nil |
165 self.eventsession = nil |
166 return -1 |
166 return -1 |
167 end |
167 end |
168 self.eventsession = addevent( base, nil, EV_TIMEOUT, callback, 0 ) |
168 self.eventsession = addevent( base, nil, EV_TIMEOUT, callback, 0 ) |
169 else |
169 else |