doveadm user '*' vs sssd: enumeration works only once
Aki Tuomi
aki.tuomi at open-xchange.com
Thu Feb 25 13:21:43 EET 2021
> On 25/02/2021 13:17 Heiko Schlittermann <hs at schlittermann.de> wrote:
>
>
> Aki Tuomi <aki.tuomi at open-xchange.com> (Do 25 Feb 2021 12:06:43 CET):
> > >
> > > diff --git a/src/auth/userdb-passwd.c b/src/auth/userdb-passwd.c
> > > index 70b9969f6..4682dc873 100644
> > > --- a/src/auth/userdb-passwd.c
> > > +++ b/src/auth/userdb-passwd.c
> > > @@ -208,6 +208,7 @@ static int passwd_iterate_deinit(struct userdb_iterate_context *_ctx)
> > > cur_userdb_iter_to = timeout_add(0, passwd_iterate_next_timeout,
> > > NULL);
> > > }
> > > + endpwent();
> > > return ret;
> > > }
> > >
> > >
> > > --
> > > Heiko
> >
> > Hi!
> > We'll look into it, might be that we are missing endpwent() there indeed.
>
> I'm not sure about the semantics of setpwent()/endpwent(), mayb the nss
> plugin (here sssd) should gracefully handle a missing endwent() if it
> sees a new setpwent(). But I think, it can't harm to call endpwent() on
> the dovecot side.
>
> I deployed a debian package with the above patch added onto my system,
> and it seems to work.
>
> So, should I file a bug report against dovecot?
>
> Best regards from Dresden/Germany
> Viele Grüße aus Dresden
> Heiko Schlittermann
You can consider it being filed.
Aki
More information about the dovecot
mailing list