From 9f7e40a27c98c651170b28512dce3fb5c6d6e6cd Mon Sep 17 00:00:00 2001 From: jbj Date: Wed, 28 Mar 2001 16:00:11 +0000 Subject: [PATCH] - fix: AIX has sizeof(uint_16) != sizeof(mode_t) verify cast needed. CVS patchset: 4657 CVS date: 2001/03/28 16:00:11 --- CHANGES | 1 + lib/verify.c | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index f5a5a3d..ffb176e 100644 --- a/CHANGES +++ b/CHANGES @@ -19,6 +19,7 @@ - permit manifest files as args to query/verify modes. - fix: parameterized macro segfault (Jakub Bogusz ). - fix: i18n tags in rpm-2.5.x had wrong offset/length (#33478). + - fix: AIX has sizeof(uint_16) != sizeof(mode_t) verify cast needed. 4.0 -> 4.0.[12] - add doxygen and lclint annotations most everywhere. diff --git a/lib/verify.c b/lib/verify.c index 96c104b..32a28bb 100644 --- a/lib/verify.c +++ b/lib/verify.c @@ -216,7 +216,11 @@ int rpmVerifyFile(const char * prefix, Header h, int filenum, } if (flags & RPMVERIFY_MODE) { - if (modeList[filenum] != sb.st_mode) + /* + * Platforms (like AIX) where sizeof(unsigned short) != sizeof(mode_t) + * need the (unsigned short) cast here. + */ + if (modeList[filenum] != (unsigned short)sb.st_mode) *result |= RPMVERIFY_MODE; } -- 2.7.4