gsasl-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

CVS gsasl/lib/src


From: gsasl-commit
Subject: CVS gsasl/lib/src
Date: Wed, 15 Dec 2004 00:11:34 +0100

Update of /home/cvs/gsasl/lib/src
In directory dopio:/tmp/cvs-serv2075

Modified Files:
        callback.c 
Log Message:
(gsasl_callback): Handle GSASL_VALIDATE_SIMPLE and GSASL_PASSWORD,
tiny patch from Sergey Poznyakoff <address@hidden>.


--- /home/cvs/gsasl/lib/src/callback.c  2004/11/19 02:39:59     1.18
+++ /home/cvs/gsasl/lib/src/callback.c  2004/12/14 23:11:34     1.19
@@ -90,6 +90,8 @@
     Gsasl_server_callback_external cb_external;
     Gsasl_server_callback_securid cb_securid;
     Gsasl_server_callback_gssapi cb_gssapi;
+    Gsasl_server_callback_validate cb_validate;
+    Gsasl_server_callback_retrieve cb_retrieve;
     char buf[BUFSIZ];
     size_t buflen = BUFSIZ - 1;
     int res;
@@ -136,6 +138,24 @@
        return res;
        break;
 
+      case GSASL_VALIDATE_SIMPLE:
+       cb_validate = gsasl_server_callback_validate_get (sctx->ctx);
+       if (!cb_validate)
+         break;
+       res = cb_validate (sctx, sctx->authzid, sctx->authid, sctx->password);
+       return res;
+
+      case GSASL_PASSWORD:
+       cb_retrieve = gsasl_server_callback_retrieve_get (sctx->ctx);
+       if (!cb_retrieve)
+         break;
+       res = cb_retrieve (sctx, sctx->authid, sctx->authzid,
+                          sctx->hostname, &buf, &buflen);
+       if (res == GSASL_OK)
+         gsasl_property_set (sctx, GSASL_PASSWORD, buf);
+       /* FIXME else if (res == GSASL_TOO_SMALL_BUFFER)...*/
+       return res;
+
       default:
        break;
       }





reply via email to

[Prev in Thread] Current Thread [Next in Thread]