commit ff15043cc98b6557916c5dcce37f0342aa288254
parent ba7891b363b313a41bab4859efa5bf15ed4fa077
Author: Michael Savage <mikejsavage@gmail.com>
Date: Sat, 27 Dec 2014 08:56:27 +0000
Remove timingsafe_memcmp
Diffstat:
1 file changed, 0 insertions(+), 46 deletions(-)
diff --git a/compat/safebfuns.c b/compat/safebfuns.c
@@ -50,49 +50,3 @@ NOOPT NOINLINE int timingsafe_bcmp( const void * const b1, const void * const b2
return result != 0;
}
-
-/* $OpenBSD: timingsafe_memcmp.c,v 1.1 2014/06/13 02:12:17 matthew Exp $ */
-/*
- * Copyright (c) 2014 Google Inc.
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-#include <limits.h>
-#include <string.h>
-
-NOOPT NOINLINE int timingsafe_memcmp( const void * const b1, const void * const b2, const size_t len ) {
- const unsigned char * p1 = b1;
- const unsigned char * p2 = b2;
- size_t i;
- int res = 0, done = 0;
-
- for( i = 0; i < len; i++ ) {
- /* lt is -1 if p1[i] < p2[i]; else 0. */
- int lt = ( p1[ i ] - p2[ i ] ) >> CHAR_BIT;
-
- /* gt is -1 if p1[i] > p2[i]; else 0. */
- int gt = ( p2[ i ] - p1[ i ] ) >> CHAR_BIT;
-
- /* cmp is 1 if p1[i] > p2[i]; -1 if p1[i] < p2[i]; else 0. */
- int cmp = lt - gt;
-
- /* set res = cmp if !done. */
- res |= cmp & ~done;
-
- /* set done if p1[i] != p2[i]. */
- done |= lt | gt;
- }
-
- return res;
-}