projects
/
u
/
mdw
/
catacomb
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
dfd1608
)
Incompatibly fix fingerprinting again. Sigh.
author
mdw
<mdw>
Wed, 14 Sep 2005 14:31:42 +0000
(14:31 +0000)
committer
mdw
<mdw>
Wed, 14 Sep 2005 14:31:42 +0000
(14:31 +0000)
key-misc.c
patch
|
blob
|
blame
|
history
diff --git
a/key-misc.c
b/key-misc.c
index
37027c0
..
54fdc89
100644
(file)
--- a/
key-misc.c
+++ b/
key-misc.c
@@
-1,6
+1,6
@@
/* -*-c-*-
*
/* -*-c-*-
*
- * $Id
: key-misc.c,v 1.5 2004/04/08 01:36:15 mdw Exp
$
+ * $Id$
*
* Simple key management
*
*
* Simple key management
*
@@
-371,13
+371,15
@@
int key_fingerprint(key *k, ghash *h, const key_filter *kf)
dstr d = DSTR_INIT;
int rc = 0;
key_attr *a, **v;
dstr d = DSTR_INIT;
int rc = 0;
key_attr *a, **v;
- size_t n, i, len;
- octet b[2];
+ size_t n, i;
sym_iter ai;
if (!key_encode(&k->k, &d, kf))
goto done;
rc = 1;
sym_iter ai;
if (!key_encode(&k->k, &d, kf))
goto done;
rc = 1;
+ GH_HASHSTR(h, "catacomb-key-fingerprint:");
+ GH_HASHU32(h, k->id);
+ GH_HASHSTR8(h, k->type);
GH_HASH(h, d.buf, d.len);
for (n = 0, sym_mkiter(&ai, &k->a); (a = sym_next(&ai)) != 0; n++);
if (n) {
GH_HASH(h, d.buf, d.len);
for (n = 0, sym_mkiter(&ai, &k->a); (a = sym_next(&ai)) != 0; n++);
if (n) {
@@
-385,14
+387,9
@@
int key_fingerprint(key *k, ghash *h, const key_filter *kf)
for (i = 0, sym_mkiter(&ai, &k->a); (a = sym_next(&ai)) != 0; i++)
v[i] = a;
qsort(v, n, sizeof(*v), abyname);
for (i = 0, sym_mkiter(&ai, &k->a); (a = sym_next(&ai)) != 0; i++)
v[i] = a;
qsort(v, n, sizeof(*v), abyname);
- len = strlen(k->type); STORE8(b, len);
- GH_HASH(h, b, 1); GH_HASH(h, k->type, len);
for (i = 0; i < n; i++) {
for (i = 0; i < n; i++) {
- a = v[i];
- len = strlen(SYM_NAME(a)); STORE8(b, len);
- GH_HASH(h, b, 1); GH_HASH(h, SYM_NAME(a), len);
- len = strlen(a->p); STORE16(b, len);
- GH_HASH(h, b, 2); GH_HASH(h, a->p, len);
+ GH_HASHSTR8(h, SYM_NAME(v[i]));
+ GH_HASHSTR16(h, v[i]->p);
}
xfree(v);
}
}
xfree(v);
}