Ignore:
Timestamp:
2025-06-28T22:52:18Z (9 months ago)
Author:
Miroslav Cimerman <mc@…>
Children:
9c9955ab
Parents:
2192a01
Message:

hr: metadata: validate magic early in decode

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/bd/hr/metadata/foreign/md/hr_md.c

    r2192a01 r0dbd4a9  
    5959static errno_t meta_md_get_block(service_id_t, void **);
    6060/* static errno_t meta_md_write_block(service_id_t, const void *); */
    61 static bool meta_md_has_valid_magic(const void *);
    6261
    6362static errno_t meta_md_probe(service_id_t, void **);
     
    115114                goto error;
    116115
    117         if (!meta_md_has_valid_magic(metadata_struct)) {
    118                 rc = ENOFS;
    119                 goto error;
    120         }
    121 
    122116        *rmd = metadata_struct;
    123117        return EOK;
     
    125119error:
    126120        free(metadata_struct);
    127         return ENOFS;
     121        return rc;
    128122}
    129123
     
    610604#endif
    611605
    612 static bool meta_md_has_valid_magic(const void *md_v)
    613 {
    614         HR_DEBUG("%s()", __func__);
    615 
    616         const struct mdp_superblock_1 *md = md_v;
    617 
    618         if (md->magic != MD_MAGIC)
    619                 return false;
    620 
    621         return true;
    622 }
    623 
    624606/** @}
    625607 */
Note: See TracChangeset for help on using the changeset viewer.