aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWojciech Polak <polak@gnu.org>2009-07-01 19:49:48 +0200
committerWojciech Polak <polak@gnu.org>2009-07-01 19:49:48 +0200
commit10f9a62f7923e4cf92e2c47748515bc14bef0481 (patch)
tree9faf7609f29b6b9612575c18a699c5d11119a9dc
parentc3f4acec8bb54e847ebbf8ee083606a0b4f8b655 (diff)
downloadanubis-10f9a62f7923e4cf92e2c47748515bc14bef0481.tar.gz
anubis-10f9a62f7923e4cf92e2c47748515bc14bef0481.tar.bz2
Fix GSASL AUTH PLAIN. Thanks Thomas Zaech for the patch.
-rw-r--r--THANKS1
-rw-r--r--src/gsasl_srv.c6
2 files changed, 6 insertions, 1 deletions
diff --git a/THANKS b/THANKS
index 790894e..1799919 100644
--- a/THANKS
+++ b/THANKS
@@ -19,6 +19,7 @@
Paolo <oopla@users.sourceforge.net>
Richard Stallman <rms@gnu.org>
Sergei Kolobov <sergei@kolobov.com>
+ Thomas Zaech <Thomas.Zaech@Gmx.NET>
Ulf Härnhammar <Ulf.Harnhammar.9485@student.uu.se>
Ying-Chieh Liao <ijliao@freebsd.org>
diff --git a/src/gsasl_srv.c b/src/gsasl_srv.c
index c4922b2..d335ffa 100644
--- a/src/gsasl_srv.c
+++ b/src/gsasl_srv.c
@@ -243,7 +243,11 @@ cb_validate (Gsasl *ctx, Gsasl_session *sctx)
return GSASL_NO_PASSWORD;
if (usr->smtp_authid == NULL
- || strcmp (usr->smtp_authid, authentication_id)
+ && anubis_get_db_record (authid, usr) != ANUBIS_DB_SUCCESS)
+ return GSASL_AUTHENTICATION_ERROR;
+
+ if (usr->smtp_authid == NULL
+ || strcmp (usr->smtp_authid, authid)
|| strcmp (usr->smtp_passwd, pass))
return GSASL_AUTHENTICATION_ERROR;
return GSASL_OK;

Return to:

Send suggestions and report system problems to the System administrator.