[Rpm-maint] [PATCH 1/2] Allow adding tag RPMTAG_AUTOINSTALLED to headers of package being installed

Aleksei Nikiforov darktemplar at altlinux.org
Wed Apr 4 13:25:57 UTC 2018


Hi

Since patch 2 is no longer needed, could you please provide a feedback 
about patch 1? It'd be great if this patch could be merged.

28.03.2018 14:58, Aleksei Nikiforov пишет:
> 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);
>       }
> 

Best regards
Aleksei Nikiforov


More information about the Rpm-maint mailing list