On Sat, 7 Nov 2020 02:02:42 +0530 Vinay Kumar Yadav wrote: > On 11/6/2020 12:16 AM, Jakub Kicinski wrote: > > On Thu, 5 Nov 2020 23:55:15 +0530 Vinay Kumar Yadav wrote: > >>>>> We should prevent from the socket getting into LISTEN state in the > >>>>> first place. Can we make a copy of proto_ops (like tls_sw_proto_ops) > >>>>> and set listen to sock_no_listen? > >>>> > >>>> Once tls-toe (TLS_HW_RECORD) is configured on a socket, listen() call > >>>> from user on same socket will create hash at two places. > >>> > >>> What I'm saying is - disallow listen calls on sockets with tls-toe > >>> installed on them. Is that not possible? > >>> > >> You mean socket with tls-toe installed shouldn't be listening at other > >> than adapter? basically avoid ctx->sk_proto->hash(sk) call. > > > > No, replace the listen callback, like I said. Why are you talking about > > hash??? > >As per my understanding we can't avoid socket listen. > Not sure how replacing listen callback solve the issue, > can you please elaborate ?
TLS sockets are not supposed to get into listen state. IIUC the problem is that the user is able to set TLS TOE on a socket which then starts to listen and the state gets cloned improperly.