[Rpm-maint] [PATCH 1/4] Add file signature to fsm_file_post parameter list
Fionnuala Gunter
fin at linux.vnet.ibm.com
Fri Nov 7 21:16:07 UTC 2014
On 10/31/2014 02:38 AM, Panu Matilainen wrote:
> On 10/07/2014 11:19 PM, fin at linux.vnet.ibm.com wrote:
>> From: Fionnuala Gunter <fin at linux.vnet.ibm.com>
>>
>> The ima plugin instantiates fsm_file_post hook, but needs access to the
>> file's signature, so this patch adds a file signature parameter to the
>> fsm_file_post parameter list.
>>
>> Signed-off-by: Fionnuala Gunter <fin at linux.vnet.ibm.com>
>> ---
> [...]
>> diff --git a/lib/rpmplugins.h b/lib/rpmplugins.h
>> index ecfa68b..93ab7b9 100644
>> --- a/lib/rpmplugins.h
>> +++ b/lib/rpmplugins.h
>> @@ -144,12 +144,14 @@ rpmRC rpmpluginsCallFsmFilePre(rpmPlugins
>> plugins, rpmfi fi, const char* path,
>> * @param path file object path
>> * @param file_mode file object mode
>> * @param op file operation + associated flags
>> + * @param sig file signature
>> * @param res fsm result code
>> * @return RPMRC_OK on success, RPMRC_FAIL otherwise
>> */
>> RPM_GNUC_INTERNAL
>> rpmRC rpmpluginsCallFsmFilePost(rpmPlugins plugins, rpmfi fi, const
>> char* path,
>> - mode_t file_mode, rpmFsmOp op, int res);
>> + mode_t file_mode, rpmFsmOp op, const
>> char *sig,
>> + int res);
>
> By this logic, the plugin hooks would have >= 30 parameters to pass in
> everything that might be related to a file in some situation, and it
> also breaks the plugin API for no good reason.
>
> Add the necessary interfaces to rpmfiles and rpmfi instead. Having to
> add new stuff to rpmfiles/rpmfi for every plugin introducing some new
> functionality is not optimal, but it is a lesser evil compared to
> breaking interfaces.
>
Right, I should have made changes to rpmfiles/rpmfi instead.
> OTOH what is missing from the plugin infra is a hook in
> rpmtsAddInstallElement() / rpmtsAddEraseElement() where the entire
> header is available and plugins can grab whatever they need from there
> and handle the rest internally without having to add new API.
Okay, I will take a look, that sounds like a better solution.
-Fin
>
> - Panu -
>
>
> _______________________________________________
> Rpm-maint mailing list
> Rpm-maint at lists.rpm.org
> http://lists.rpm.org/mailman/listinfo/rpm-maint
>
More information about the Rpm-maint
mailing list