Use secure memory interface from MP library.
authormdw <mdw>
Sat, 17 Jun 2000 11:27:20 +0000 (11:27 +0000)
committermdw <mdw>
Sat, 17 Jun 2000 11:27:20 +0000 (11:27 +0000)
key-binary.c
key-text.c

index 4459ff1..3e67d96 100644 (file)
@@ -1,6 +1,6 @@
 /* -*-c-*-
  *
- * $Id: key-binary.c,v 1.1 2000/02/12 18:21:02 mdw Exp $
+ * $Id: key-binary.c,v 1.2 2000/06/17 11:25:20 mdw Exp $
  *
  * Key binary encoding
  *
@@ -30,6 +30,9 @@
 /*----- Revision history --------------------------------------------------* 
  *
  * $Log: key-binary.c,v $
+ * Revision 1.2  2000/06/17 11:25:20  mdw
+ * Use secure memory interface from MP library.
+ *
  * Revision 1.1  2000/02/12 18:21:02  mdw
  * Overhaul of key management (again).
  *
@@ -97,9 +100,7 @@ int key_decode(const void *p, size_t sz, key_data *k)
     /* --- Multiprecision integer data --- */
 
     case KENC_MP:
-      k->u.m = mp_loadb(MP_NEW, q + 4, psz);
-      if (k->e & KF_BURN)
-       mp_burn(k->u.m);
+      k->u.m = mp_loadb(k->e & KF_BURN ? MP_NEWSEC : MP_NEW, q + 4, psz);
       break;
 
     /* --- Structured key data --- */
index 490b00b..393fbd9 100644 (file)
@@ -1,6 +1,6 @@
 /* -*-c-*-
  *
- * $Id: key-text.c,v 1.1 2000/02/12 18:21:02 mdw Exp $
+ * $Id: key-text.c,v 1.2 2000/06/17 11:27:20 mdw Exp $
  *
  * Key textual encoding
  *
@@ -30,6 +30,9 @@
 /*----- Revision history --------------------------------------------------* 
  *
  * $Log: key-text.c,v $
+ * Revision 1.2  2000/06/17 11:27:20  mdw
+ * Use secure memory interface from MP library.
+ *
  * Revision 1.1  2000/02/12 18:21:02  mdw
  * Overhaul of key management (again).
  *
@@ -117,11 +120,9 @@ int key_read(const char *p, key_data *k, char **pp)
 
     case KENC_MP: {
       char *q;
-      mp *m = mp_readstring(MP_NEW, p, &q, 0);
+      mp *m = mp_readstring(k->e & KF_BURN ? MP_NEWSEC : MP_NEW, p, &q, 0);
       if (!m)
        return (-1);
-      if (k->e & KF_BURN)
-       mp_burn(m);
       k->u.m = m;
       p = q;
     } break;