Mailing List Archive

How sshd manages globals
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
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
Re: How sshd manages globals [ In reply to ]
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.

_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@mindrot.org
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev