[Rpm-maint] [PATCH 1/2] Allow adding tag RPMTAG_AUTOINSTALLED to headers of package being installed
Aleksei Nikiforov
darktemplar at altlinux.org
Wed Mar 28 11:58:41 UTC 2018
Signed-off-by: Aleksei Nikiforov <darktemplar at altlinux.org>
---
lib/rpmte.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/lib/rpmte.c b/lib/rpmte.c
index 40aa5e9..238c8b6 100644
--- a/lib/rpmte.c
+++ b/lib/rpmte.c
@@ -39,6 +39,7 @@ struct rpmte_s {
char * arch; /*!< Architecture hint. */
char * os; /*!< Operating system hint. */
int isSource; /*!< (TR_ADDED) source rpm? */
+ uint32_t autoinstalled; /*! Indicates whether package was installed just as dependency satisfier or not */
rpmte depends; /*!< Package updated by this package (ERASE te) */
rpmte parent; /*!< Parent transaction element. */
@@ -191,6 +192,8 @@ static int addTE(rpmte p, Header h, fnpyKey key, rpmRelocation * relocs)
if (p->type == TR_ADDED)
p->pkgFileSize = headerGetNumber(h, RPMTAG_LONGSIGSIZE) + 96 + 256;
+ p->autoinstalled = headerGetNumber(h, RPMTAG_AUTOINSTALLED);
+
rc = 0;
exit:
@@ -576,6 +579,11 @@ static int rpmteOpen(rpmte te, int reload_fi)
rc = 1;
}
+ if (rc)
+ {
+ rc = (headerPutUint32(h, RPMTAG_AUTOINSTALLED, &(te->autoinstalled), 1) == 1);
+ }
+
rpmteSetHeader(te, h);
headerFree(h);
}
--
2.10.4
More information about the Rpm-maint
mailing list