diff -up dovecot-2.2.36/src/auth/userdb-passwd.c.getpwentreset dovecot-2.2.36/src/auth/userdb-passwd.c --- dovecot-2.2.36/src/auth/userdb-passwd.c.getpwentreset 2019-08-20 16:56:19.706885908 +0200 +++ dovecot-2.2.36/src/auth/userdb-passwd.c 2019-08-20 16:56:25.422867784 +0200 @@ -173,6 +173,9 @@ static void passwd_iterate_next(struct u _ctx->callback(pw->pw_name, _ctx->context); return; } + /* getpwent might set errno to something even if it + returns non-NULL. */ + errno = 0; } if (errno != 0) { i_error("getpwent() failed: %m");