gsasl-commit
[Top][All Lists]
Advanced

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

CVS gsasl/lib/digest-md5


From: gsasl-commit
Subject: CVS gsasl/lib/digest-md5
Date: Sun, 19 Dec 2004 19:58:51 +0100

Update of /home/cvs/gsasl/lib/digest-md5
In directory dopio:/tmp/cvs-serv2744

Modified Files:
        tokens.h parser.c free.c 
Log Message:
Use static buffer for response->rspauth.


--- /home/cvs/gsasl/lib/digest-md5/tokens.h     2004/12/19 17:59:07     1.5
+++ /home/cvs/gsasl/lib/digest-md5/tokens.h     2004/12/19 18:58:50     1.6
@@ -142,7 +142,7 @@
  * response-auth = "rspauth" "=" response-value
  */
 struct digest_md5_finish {
-  char *rspauth;
+  char rspauth[DIGEST_MD5_RESPONSE_LENGTH + 1];
 };
 typedef struct digest_md5_finish digest_md5_finish;
 
--- /home/cvs/gsasl/lib/digest-md5/parser.c     2004/12/19 08:23:38     1.11
+++ /home/cvs/gsasl/lib/digest-md5/parser.c     2004/12/19 18:58:50     1.12
@@ -539,11 +539,12 @@
     switch (digest_md5_getsubopt (&finish, digest_responseauth_opts, &value))
       {
       case RESPONSEAUTH_RSPAUTH:
-       if (out->rspauth)
+       if (*out->rspauth)
          return -1;
-       out->rspauth = strdup (value);
-       if (!out->rspauth)
+       /* A string of 32 hex digits */
+       if (strlen (value) != DIGEST_MD5_RESPONSE_LENGTH)
          return -1;
+       strcpy (out->rspauth, value);
        break;
 
       default:
--- /home/cvs/gsasl/lib/digest-md5/free.c       2004/12/19 08:36:36     1.2
+++ /home/cvs/gsasl/lib/digest-md5/free.c       2004/12/19 18:58:50     1.3
@@ -69,8 +69,5 @@
 void
 digest_md5_free_finish (digest_md5_finish *f)
 {
-  if (f->rspauth)
-    free (f->rspauth);
-
   memset (f, 0, sizeof (*f));
 }





reply via email to

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