Hi, I am looking for a small explanation of how some sshd code is architected. sshd uses this 2 globals: Authctxt *the_authctxt = NULL; struct sshauthopt *auth_opts = NULL; Since sshd can have several simultaneous unauthenticated connections each on their own thread, how can this globals handle concurrency? I appreciate any help to understand this. Thanks, Nuno
On 2019/07/14 11:45, Nuno Gon?alves wrote:> Hi, > > I am looking for a small explanation of how some sshd code is architected. > > sshd uses this 2 globals: > > Authctxt *the_authctxt = NULL; > struct sshauthopt *auth_opts = NULL; > > Since sshd can have several simultaneous unauthenticated connections > each on their own thread, how can this globals handle concurrency? > > I appreciate any help to understand this.OpenSSH does not use threads, it forks a new process.