diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | key.c | 10 |
2 files changed, 12 insertions, 6 deletions
@@ -41,6 +41,12 @@ | |||
41 | [ssh_config.5] | 41 | [ssh_config.5] |
42 | CheckHostIP set to ``fingerprint'' will display both hex and random art | 42 | CheckHostIP set to ``fingerprint'' will display both hex and random art |
43 | spotted by naddy@ | 43 | spotted by naddy@ |
44 | - grunk@cvs.openbsd.org 2008/06/11 23:51:57 | ||
45 | [key.c] | ||
46 | #define statements that are not atoms need braces around them, else they | ||
47 | will cause trouble in some cases. | ||
48 | Also do a computation of -1 once, and not in a loop several times. | ||
49 | spotted by otto@ | ||
44 | 50 | ||
45 | 20080611 | 51 | 20080611 |
46 | - (djm) [channels.c configure.ac] | 52 | - (djm) [channels.c configure.ac] |
@@ -4203,4 +4209,4 @@ | |||
4203 | OpenServer 6 and add osr5bigcrypt support so when someone migrates | 4209 | OpenServer 6 and add osr5bigcrypt support so when someone migrates |
4204 | passwords between UnixWare and OpenServer they will still work. OK dtucker@ | 4210 | passwords between UnixWare and OpenServer they will still work. OK dtucker@ |
4205 | 4211 | ||
4206 | $Id: ChangeLog,v 1.4973 2008/06/12 18:44:25 dtucker Exp $ | 4212 | $Id: ChangeLog,v 1.4974 2008/06/12 18:45:50 dtucker Exp $ |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: key.c,v 1.71 2008/06/11 23:02:22 otto Exp $ */ | 1 | /* $OpenBSD: key.c,v 1.72 2008/06/11 23:51:57 grunk Exp $ */ |
2 | /* | 2 | /* |
3 | * read_bignum(): | 3 | * read_bignum(): |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -319,8 +319,8 @@ key_fingerprint_bubblebabble(u_char *dgst_raw, u_int dgst_raw_len) | |||
319 | * Graphs are not unambiguous, because circles in graphs can be | 319 | * Graphs are not unambiguous, because circles in graphs can be |
320 | * walked in either direction. | 320 | * walked in either direction. |
321 | */ | 321 | */ |
322 | #define FLDSIZE_Y 8 | 322 | #define FLDSIZE_Y 8 |
323 | #define FLDSIZE_X FLDSIZE_Y * 2 | 323 | #define FLDSIZE_X (FLDSIZE_Y * 2) |
324 | static char * | 324 | static char * |
325 | key_fingerprint_randomart(u_char *dgst_raw, u_int dgst_raw_len) | 325 | key_fingerprint_randomart(u_char *dgst_raw, u_int dgst_raw_len) |
326 | { | 326 | { |
@@ -333,7 +333,7 @@ key_fingerprint_randomart(u_char *dgst_raw, u_int dgst_raw_len) | |||
333 | u_char field[FLDSIZE_X][FLDSIZE_Y]; | 333 | u_char field[FLDSIZE_X][FLDSIZE_Y]; |
334 | u_int i, b; | 334 | u_int i, b; |
335 | int x, y; | 335 | int x, y; |
336 | size_t len = strlen(augmentation_string); | 336 | size_t len = strlen(augmentation_string) - 1; |
337 | 337 | ||
338 | retval = xcalloc(1, (FLDSIZE_X + 3) * (FLDSIZE_Y + 2)); | 338 | retval = xcalloc(1, (FLDSIZE_X + 3) * (FLDSIZE_Y + 2)); |
339 | 339 | ||
@@ -379,7 +379,7 @@ key_fingerprint_randomart(u_char *dgst_raw, u_int dgst_raw_len) | |||
379 | for (y = 0; y < FLDSIZE_Y; y++) { | 379 | for (y = 0; y < FLDSIZE_Y; y++) { |
380 | *p++ = '|'; | 380 | *p++ = '|'; |
381 | for (x = 0; x < FLDSIZE_X; x++) | 381 | for (x = 0; x < FLDSIZE_X; x++) |
382 | *p++ = augmentation_string[MIN(field[x][y], len - 1)]; | 382 | *p++ = augmentation_string[MIN(field[x][y], len)]; |
383 | *p++ = '|'; | 383 | *p++ = '|'; |
384 | *p++ = '\n'; | 384 | *p++ = '\n'; |
385 | } | 385 | } |