X-Git-Url: https://git.distorted.org.uk/u/mdw/catacomb/blobdiff_plain/052b36d05a622a93733b735acce2de865b14627b..cdb7e56a986c87b1ce82c69c871f2bc6d0447eb8:/key-text.c diff --git a/key-text.c b/key-text.c index 490b00b..238c571 100644 --- a/key-text.c +++ b/key-text.c @@ -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.3 2001/02/03 11:57:00 mdw Exp $ * * Key textual encoding * @@ -30,6 +30,13 @@ /*----- Revision history --------------------------------------------------* * * $Log: key-text.c,v $ + * Revision 1.3 2001/02/03 11:57:00 mdw + * Track mLib change: symbols no longer need to include a terminating + * null. + * + * 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 +124,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; @@ -182,7 +187,7 @@ int key_read(const char *p, key_data *k, char **pp) { unsigned f; - ks = sym_find(&k->u.s, d.buf, d.len + 1, sizeof(*ks), &f); + ks = sym_find(&k->u.s, d.buf, d.len, sizeof(*ks), &f); if (f) key_destroy(&ks->k); }