summaryrefslogtreecommitdiff
path: root/key.c
diff options
context:
space:
mode:
authordtucker <dtucker>2003-07-14 07:28:34 +0000
committerdtucker <dtucker>2003-07-14 07:28:34 +0000
commitc25283b51633c0d2cb84939c164b520fb057ce0c (patch)
tree4dc9c956dc6ed9ae56703013d7001468bb6862c5 /key.c
parent96cf31c2e9dc7569da2e28fcfa6b267835eefeb7 (diff)
downloadopenssh-c25283b51633c0d2cb84939c164b520fb057ce0c.tar.gz
- avsm@cvs.openbsd.org 2003/07/09 13:58:19
[key.c] minor tweak: when generating the hex fingerprint, give strlcat the full bound to the buffer, and add a comment below explaining why the zero-termination is one less than the bound. markus@ ok
Diffstat (limited to 'key.c')
-rw-r--r--key.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/key.c b/key.c
index b101e1b2..54318cbb 100644
--- a/key.c
+++ b/key.c
@@ -32,7 +32,7 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include "includes.h"
-RCSID("$OpenBSD: key.c,v 1.53 2003/06/24 08:23:46 markus Exp $");
+RCSID("$OpenBSD: key.c,v 1.54 2003/07/09 13:58:19 avsm Exp $");
#include <openssl/evp.h>
@@ -236,8 +236,10 @@ key_fingerprint_hex(u_char *dgst_raw, u_int dgst_raw_len)
for (i = 0; i < dgst_raw_len; i++) {
char hex[4];
snprintf(hex, sizeof(hex), "%02x:", dgst_raw[i]);
- strlcat(retval, hex, dgst_raw_len * 3);
+ strlcat(retval, hex, dgst_raw_len * 3 + 1);
}
+
+ /* Remove the trailing ':' character */
retval[(dgst_raw_len * 3) - 1] = '\0';
return retval;
}