From 8c1eb113efb7e78c239acce90b19b12234352906 Mon Sep 17 00:00:00 2001 From: Damien Miller Date: Tue, 3 Aug 2010 16:05:05 +1000 Subject: [PATCH] - djm@cvs.openbsd.org 2010/07/21 02:10:58 [misc.c] sync timingsafe_bcmp() with the one dempsky@ committed to sys/lib/libkern --- ChangeLog | 3 +++ misc.c | 14 ++++++-------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index b43074ec9..9a9d0db91 100644 --- a/ChangeLog +++ b/ChangeLog @@ -24,6 +24,9 @@ duration of inactivity. bz#1330 - patch by dwmw2 AT infradead.org, but further hacked on by wmertens AT cisco.com, apb AT cequrux.com, martin-mindrot-bugzilla AT earth.li and myself; "looks ok" markus@ + - djm@cvs.openbsd.org 2010/07/21 02:10:58 + [misc.c] + sync timingsafe_bcmp() with the one dempsky@ committed to sys/lib/libkern 20100819 - (dtucker) [contrib/ssh-copy-ud.1] Bug #1786: update ssh-copy-id.1 with more diff --git a/misc.c b/misc.c index 52f814fa2..a82e7936e 100644 --- a/misc.c +++ b/misc.c @@ -1,4 +1,4 @@ -/* $OpenBSD: misc.c,v 1.79 2010/07/13 23:13:16 djm Exp $ */ +/* $OpenBSD: misc.c,v 1.80 2010/07/21 02:10:58 djm Exp $ */ /* * Copyright (c) 2000 Markus Friedl. All rights reserved. * Copyright (c) 2005,2006 Damien Miller. All rights reserved. @@ -851,17 +851,15 @@ ms_to_timeval(struct timeval *tv, int ms) } int -timingsafe_bcmp(const void *_s1, const void *_s2, size_t n) +timingsafe_bcmp(const void *b1, const void *b2, size_t n) { - u_char *s1 = (u_char *)_s1; - u_char *s2 = (u_char *)_s2; + const unsigned char *p1 = b1, *p2 = b2; int ret = 0; - for (; n > 0; n--, s1++, s2++) - ret |= *s1 ^ *s2; - return ret; + for (; n > 0; n--) + ret |= *p1++ ^ *p2++; + return (ret != 0); } - void sock_set_v6only(int s) {