[Rpm-maint] [PATCH] Move vsflags calculation from rpmInstall and rpmErase to rpmSetVSFlags

Rakesh Pandit rakesh.pandit at gmail.com
Mon Jan 19 16:40:41 UTC 2009


This patch moves vsflags calculations from rpmInstall and rpmErase to
new local function rpmSetVSFlags

Comments and suggestions  ?

Link: http://rakesh.fedorapeople.org/misc/0001--Move-vsflags-calculation-from-rpmInstall-and-rpmEra.patch
-- 
rakesh

diff --git a/lib/rpminstall.c b/lib/rpminstall.c
index 72b9858..7e72458 100644
--- a/lib/rpminstall.c
+++ b/lib/rpminstall.c
@@ -71,6 +71,25 @@ static void printHash(const rpm_loff_t amount,
const rpm_loff_t total)
     }
 }

+rpmVSFlags rpmSetVSFlags(struct rpmInstallArguments_s * ia)
+{
+    rpmVSFlags vsflags;
+
+    if (ia->cliInterfaceFlags & (RPMCLI_UPGRADE | RPMCLI_ERASE))
+	vsflags = rpmExpandNumeric("%{?_vsflags_erase}");
+    else
+	vsflags = rpmExpandNumeric("%{?_vsflags_install}");
+
+    if (ia->qva_flags & VERIFY_DIGEST)
+        vsflags |= _RPMVSF_NODIGESTS;
+    if (ia->qva_flags & VERIFY_SIGNATURE)
+        vsflags |= _RPMVSF_NOSIGNATURES;
+    if (ia->qva_flags & VERIFY_HDRCHK)
+        vsflags |= RPMVSF_NOHDRCHK;
+
+    return vsflags;
+}
+
 void * rpmShowProgress(const void * arg,
 			const rpmCallbackType what,
 			const rpm_loff_t amount,
@@ -224,16 +243,7 @@ int rpmInstall(rpmts ts, struct
rpmInstallArguments_s * ia, ARGV_t fileArgv)

     relocations = ia->relocations;

-    if (ia->cliInterfaceFlags & RPMCLI_UPGRADE)
-	vsflags = rpmExpandNumeric("%{?_vsflags_erase}");
-    else
-	vsflags = rpmExpandNumeric("%{?_vsflags_install}");
-    if (ia->qva_flags & VERIFY_DIGEST)
-	vsflags |= _RPMVSF_NODIGESTS;
-    if (ia->qva_flags & VERIFY_SIGNATURE)
-	vsflags |= _RPMVSF_NOSIGNATURES;
-    if (ia->qva_flags & VERIFY_HDRCHK)
-	vsflags |= RPMVSF_NOHDRCHK;
+    vsflags = rpmSetVSFlags(ia);
     ovsflags = rpmtsSetVSFlags(ts, (vsflags | RPMVSF_NEEDPAYLOAD));

     {	int notifyFlags;
@@ -561,13 +571,7 @@ int rpmErase(rpmts ts, struct
rpmInstallArguments_s * ia, ARGV_const_t argv)

     if (argv == NULL) return 0;

-    vsflags = rpmExpandNumeric("%{?_vsflags_erase}");
-    if (ia->qva_flags & VERIFY_DIGEST)
-	vsflags |= _RPMVSF_NODIGESTS;
-    if (ia->qva_flags & VERIFY_SIGNATURE)
-	vsflags |= _RPMVSF_NOSIGNATURES;
-    if (ia->qva_flags & VERIFY_HDRCHK)
-	vsflags |= RPMVSF_NOHDRCHK;
+    vsflags = rpmSetVSFlags(ia);
     ovsflags = rpmtsSetVSFlags(ts, vsflags);

     /* XXX suggest mechanism only meaningful when installing */
-- 
1.6.0.6


More information about the Rpm-maint mailing list