X-Git-Url: https://git.distorted.org.uk/u/mdw/catacomb/blobdiff_plain/052b36d05a622a93733b735acce2de865b14627b..2b645fb792c62ae0d38fcde4c39e1bd0889b0e06:/key-data.c diff --git a/key-data.c b/key-data.c index 5da8b38..2a57cf2 100644 --- a/key-data.c +++ b/key-data.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: key-data.c,v 1.2 2000/02/12 18:21:02 mdw Exp $ + * $Id: key-data.c,v 1.4 2000/07/16 19:51:58 mdw Exp $ * * Encoding and decoding of key data * @@ -30,6 +30,13 @@ /*----- Revision history --------------------------------------------------* * * $Log: key-data.c,v $ + * Revision 1.4 2000/07/16 19:51:58 mdw + * Shut stupid compiler up. + * + * Revision 1.3 2000/06/17 11:26:03 mdw + * key_structfind: track minor data structure change, and cope if the + * subkey isn't available. + * * Revision 1.2 2000/02/12 18:21:02 mdw * Overhaul of key management (again). * @@ -138,8 +145,11 @@ void key_structure(key_data *k) key_data *key_structfind(key_data *k, const char *tag) { key_struct *ks; - assert(((void)"Key is not structured", k->e == KENC_STRUCT)); + assert(((void)"Key is not structured", + (k->e & KF_ENCMASK) == KENC_STRUCT)); ks = sym_find(&k->u.s, tag, -1, 0, 0); + if (!ks) + return (0); return (&ks->k); } @@ -226,7 +236,7 @@ int key_do(key_data *k, const key_filter *kf, dstr *d, else { sym_iter i; key_struct *ks; - size_t n; + size_t n = 0; int rc; if (d)