diff options
Diffstat (limited to 'security/pks/files/patch-am')
-rw-r--r-- | security/pks/files/patch-am | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/security/pks/files/patch-am b/security/pks/files/patch-am new file mode 100644 index 000000000000..57c8b7728f82 --- /dev/null +++ b/security/pks/files/patch-am @@ -0,0 +1,71 @@ +=================================================================== +RCS file: kd_index.c,v +retrieving revision 1.16 +diff -u -r1.16 kd_index.c +--- kd_index.c 1999/09/23 03:19:36 1.16 ++++ kd_index.c 2001/09/02 04:00:23 +@@ -122,6 +122,7 @@ + + int keys_elem_genindex(void *e, void *c) + { ++ + keys_elem *ke = (keys_elem *) e; + keg_state *s = (keg_state *) c; + gi_state gis; +@@ -131,6 +132,8 @@ + SHS_CTX sha; + unsigned char hash[20]; + int i; ++ unsigned int pos = 0; ++ + + /* pgp does gmtime, so we do, too */ + c_tm = gmtime(&(ke->create_time)); +@@ -163,24 +166,33 @@ + MD5Final(hash, &md5ctx); + } + +- for (i=0; i<8; i++) +- sprintf(buf+i*3, "%02X ", hash[i]); +- buf[24] = ' '; +- for (i=8; i<16; i++) +- sprintf(buf+1+i*3, "%02X ", hash[i]); ++ pos = 0; ++ // print longer SHA-1 hashes differently + if (ke->keytype == 16 || ke->keytype == 17) { +- buf[49] = ' '; +- for (i=16; i<20; i++) +- sprintf(buf+2+i*3, "%02X ", hash[i]); +- buf[62] = '\n'; +- } else { +- buf[48] = '\n'; +- } ++ for (i = 0; i < 20; i += 2) { ++ sprintf (&buf[pos], "%02X%02X ", hash[i], hash[i+1]); ++ pos += 5; // just added n chars... ++ // add another space halfway through... ++ if (i == 8) { ++ buf[pos] = ' '; ++ pos++; ++ } ++ } // for i ++ pos--; // remove last space ++ buf[pos] = '\n'; ++ } else { // if keytype != 16 or 17 ++ for (i=0; i<8; i++) ++ sprintf(buf+i*3, "%02X ", hash[i]); ++ buf[24] = ' '; ++ for (i=8; i<16; i++) ++ sprintf(buf+1+i*3, "%02X ", hash[i]); ++ buf[48] = '\n'; ++ } // if else on keytype + +- if (!xbuffer_append_str(s->xb, " Key fingerprint = ")) ++ if (!xbuffer_append_str(s->xb, " Key fingerprint = ")) + return(0); + if (ke->keytype == 16 || ke->keytype == 17) { +- if (!xbuffer_append(s->xb, (unsigned char *) buf, 63)) ++ if (!xbuffer_append(s->xb, (unsigned char *) buf, 51)) + return(0); + } else { + if (!xbuffer_append(s->xb, (unsigned char *) buf, 49)) |