Deploy the new <ctype.h> and `foocmp' macros from mLib.
[catacomb] / key / key-pass.c
index 665030e..223486e 100644 (file)
@@ -29,6 +29,7 @@
 
 #include <mLib/dstr.h>
 
+#include "ct.h"
 #include "key-data.h"
 #include "paranoia.h"
 #include "passphrase.h"
@@ -172,8 +173,8 @@ int key_unlock(key_data **kt, key_data *k, const void *e, size_t esz)
   rmd160_macinit(&mc, &mk);
   rmd160_machash(&mc, k->u.k.k + RMD160_HASHSZ * 2, sz);
   rmd160_macdone(&mc, b + RMD160_HASHSZ);
-  if (memcmp(b + RMD160_HASHSZ, k->u.k.k + RMD160_HASHSZ,
-            RMD160_HASHSZ) != 0) {
+  if (!ct_memeq(b + RMD160_HASHSZ,
+               k->u.k.k + RMD160_HASHSZ, RMD160_HASHSZ)) {
     rc = KERR_BADPASS;
     goto fail;
   }