fixed the broken md5 logic
authorroot <devnull@localhost>
Fri, 28 Mar 1997 18:01:54 +0000 (18:01 +0000)
committerroot <devnull@localhost>
Fri, 28 Mar 1997 18:01:54 +0000 (18:01 +0000)
CVS patchset: 1504
CVS date: 1997/03/28 18:01:54

lib/verify.c

index 46e34aa..d7c877c 100644 (file)
@@ -38,18 +38,22 @@ int rpmVerifyFile(char * prefix, Header h, int filenum, int * result,
     int size;
     char ** unameList, ** gnameList;
     int_32 useBrokenMd5;
+    int_32 * brokenPtr;
 
 #if WORDS_BIGENDIAN
-    if (!headerGetEntry(h, RPMTAG_BROKENMD5, NULL, &useBrokenMd5, NULL)) {
+    if (!headerGetEntry(h, RPMTAG_BROKENMD5, NULL, (void **) &brokenPtr, NULL)) {
        char * rpmVersion;
 
-       if (headerGetEntry(h, RPMTAG_RPMVERSION, NULL, &rpmVersion, NULL)) {
+       if (headerGetEntry(h, RPMTAG_RPMVERSION, NULL, (void **) &rpmVersion, 
+                               NULL)) {
            useBrokenMd5 = ((rpmvercmp(rpmVersion, "2.3.3") >= 0) &&
                            (rpmvercmp(rpmVersion, "2.3.8") <= 0));
        } else {
            useBrokenMd5 = 1;
        }
        headerAddEntry(h, RPMTAG_BROKENMD5, RPM_INT32_TYPE, &useBrokenMd5, 1);
+    } else {
+       useBrokenMd5 = *brokenPtr;
     }
 #else
     useBrokenMd5 = 0;