From 4352cf9707df08d51ef891be156d475743d0a060 Mon Sep 17 00:00:00 2001 From: Alan Coopersmith Date: Sat, 30 Mar 2013 11:30:37 -0700 Subject: Call memcmp() instead of defining our own equivalent Stops casting len parameters to int in callers so that this change doesn't introduce warnings that we're taking unsigned values, casting them to signed, then passing to a function that wants them unsigned. Signed-off-by: Alan Coopersmith --- AuGetAddr.c | 15 ++++----------- AuGetBest.c | 15 ++++----------- 2 files changed, 8 insertions(+), 22 deletions(-) diff --git a/AuGetAddr.c b/AuGetAddr.c index 897d8b5..6f5fe16 100644 --- a/AuGetAddr.c +++ b/AuGetAddr.c @@ -30,14 +30,7 @@ in this Software without prior written authorization from The Open Group. #include #include -static int -binaryEqual (_Xconst char *a, _Xconst char *b, int len) -{ - while (len--) - if (*a++ != *b++) - return 0; - return 1; -} +#define binaryEqual(a, b, len) (memcmp(a, b, len) == 0) Xauth * XauGetAuthByAddr ( @@ -94,13 +87,13 @@ _Xconst char* name) if ((family == FamilyWild || entry->family == FamilyWild || (entry->family == family && address_length == entry->address_length && - binaryEqual (entry->address, address, (int)address_length))) && + binaryEqual (entry->address, address, address_length))) && (number_length == 0 || entry->number_length == 0 || (number_length == entry->number_length && - binaryEqual (entry->number, number, (int)number_length))) && + binaryEqual (entry->number, number, number_length))) && (name_length == 0 || entry->name_length == 0 || (entry->name_length == name_length && - binaryEqual (entry->name, name, (int)name_length)))) + binaryEqual (entry->name, name, name_length)))) break; XauDisposeAuth (entry); } diff --git a/AuGetBest.c b/AuGetBest.c index 673ee40..5556559 100644 --- a/AuGetBest.c +++ b/AuGetBest.c @@ -38,14 +38,7 @@ in this Software without prior written authorization from The Open Group. #include #endif -static int -binaryEqual (_Xconst char *a, _Xconst char *b, int len) -{ - while (len--) - if (*a++ != *b++) - return 0; - return 1; -} +#define binaryEqual(a, b, len) (memcmp(a, b, len) == 0) Xauth * XauGetBestAuthByAddr ( @@ -129,17 +122,17 @@ XauGetBestAuthByAddr ( if ((family == FamilyWild || entry->family == FamilyWild || (entry->family == family && ((address_length == entry->address_length && - binaryEqual (entry->address, address, (int)address_length)) + binaryEqual (entry->address, address, address_length)) #ifdef hpux || (family == FamilyLocal && fully_qual_address_length == entry->address_length && binaryEqual (entry->address, fully_qual_address, - (int) fully_qual_address_length)) + fully_qual_address_length)) #endif ))) && (number_length == 0 || entry->number_length == 0 || (number_length == entry->number_length && - binaryEqual (entry->number, number, (int)number_length)))) + binaryEqual (entry->number, number, number_length)))) { if (best_type == 0) { -- cgit v1.2.3