[Rpm-maint] [PATCH 2/7] Add disttag support to rpmte API

Vladimir D. Seleznev vseleznv at altlinux.org
Tue Oct 23 05:48:19 UTC 2018


Signed-off-by: Vladimir D. Seleznev <vseleznv at altlinux.org>
---
 lib/rpmte.c | 7 +++++++
 lib/rpmte.h | 7 +++++++
 2 files changed, 14 insertions(+)

diff --git a/lib/rpmte.c b/lib/rpmte.c
index c5d614f67..d33be1727 100644
--- a/lib/rpmte.c
+++ b/lib/rpmte.c
@@ -36,6 +36,7 @@ struct rpmte_s {
     char * epoch;
     char * version;		/*!< Version: */
     char * release;		/*!< Release: */
+    char * disttag;		/*!< Disttag: */
     char * arch;		/*!< Architecture hint. */
     char * os;			/*!< Operating system hint. */
     int isSource;		/*!< (TR_ADDED) source rpm? */
@@ -141,6 +142,7 @@ static int addTE(rpmte p, Header h, fnpyKey key, rpmRelocation * relocs)
 	goto exit;
 
     p->epoch = headerGetAsString(h, RPMTAG_EPOCH);
+    p->disttag = headerGetAsString(h, RPMTAG_DISTTAG);
 
     p->arch = headerGetAsString(h, RPMTAG_ARCH);
     p->os = headerGetAsString(h, RPMTAG_OS);
@@ -311,6 +313,11 @@ const char * rpmteR(rpmte te)
     return (te != NULL ? te->release : NULL);
 }
 
+const char * rpmteDT(rpmte te)
+{
+    return (te != NULL ? te->disttag : NULL);
+}
+
 const char * rpmteA(rpmte te)
 {
     return (te != NULL ? te->arch : NULL);
diff --git a/lib/rpmte.h b/lib/rpmte.h
index 5b8d6dd9a..d30fc462d 100644
--- a/lib/rpmte.h
+++ b/lib/rpmte.h
@@ -74,6 +74,13 @@ const char * rpmteV(rpmte te);
  */
 const char * rpmteR(rpmte te);
 
+/** \ingroup rpmte
+ * Retrive disttag string or transaction element.
+ * @param te		transaction element
+ * @return		disttag string
+ */
+const char * rpmteDT(rpmte te);
+
 /** \ingroup rpmte
  * Retrieve arch string of transaction element.
  * @param te		transaction element
-- 
2.17.2



More information about the Rpm-maint mailing list