• Roberto Sassu's avatar
    ima: Introduce ima_get_current_hash_algo() · 5d1ef2ce
    Roberto Sassu authored
    Buffer measurements, unlike file measurements, are not accessible after the
    measurement is done, as buffers are not suitable for use with the
    integrity_iint_cache structure (there is no index, for files it is the
    inode number). In the subsequent patches, the measurement (digest) will be
    returned directly by the functions that perform the buffer measurement,
    ima_measure_critical_data() and process_buffer_measurement().
    
    A caller of those functions also needs to know the algorithm used to
    calculate the digest. Instead of adding the algorithm as a new parameter to
    the functions, this patch provides it separately with the new function
    ima_get_current_hash_algo().
    
    Since the hash algorithm does not change after the IMA setup phase, there
    is no risk of races (obtaining a digest calculated with a different
    algorithm than the one returned).
    Signed-off-by: default avatarRoberto Sassu <roberto.sassu@huawei.com>
    Reviewed-by: default avatarLakshmi Ramasubramanian <nramas@linux.microsoft.com>
    [zohar@linux.ibm.com: annotate ima_hash_algo as __ro_after_init]
    Signed-off-by: default avatarMimi Zohar <zohar@linux.ibm.com>
    5d1ef2ce
ima_main.c 28.9 KB