mirror of
https://github.com/ibm-s390-linux/s390-tools.git
synced 2026-08-05 02:14:52 +00:00
zdump: check size before mmap'ing
Verify that the size is large enough before doing the mmap. Otherwise
this can result in a SIGBUS signal if there is an attempt to access a
page that lies beyond the end of the mapped file (see `man 2 mmap`).
Fixes: 8fa1b5a00b ("zdump: dfi: add support to read Protected Virtualization dumps")
Signed-off-by: Marc Hartmayer <mhartmay@linux.ibm.com>
Reviewed-by: Steffen Eiden <seiden@linux.ibm.com>
Signed-off-by: Jan Höppner <hoeppner@linux.ibm.com>
This commit is contained in:
committed by
Jan Höppner
parent
6e42c527d7
commit
f4ed0b0ec6
+3
-3
@@ -263,9 +263,9 @@ static int dfi_pv_elf_init(void)
|
||||
* completion configuration data and store it in `@cpl_conf_decr`. In addition, mmap the
|
||||
* configuration storage state area and use the `tweak_nonce`.
|
||||
*/
|
||||
if (pv_process_section_data(fh->fh, completion_sdata, storage_state_shdr->sh_offset,
|
||||
storage_state_shdr->sh_size, key, &cpl_conf_decr, &dump_key,
|
||||
&storage_state_data, &error) < 0) {
|
||||
if (pv_process_section_data(fh->fh, fh->sb.st_size, completion_sdata,
|
||||
storage_state_shdr->sh_offset, storage_state_shdr->sh_size, key,
|
||||
&cpl_conf_decr, &dump_key, &storage_state_data, &error) < 0) {
|
||||
ERR(_("Unable to read decryption information:" ERR_NEWLINE "%s."), error->message);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user