1 #include <lunaix/fs/iso9660.h>
2 #include <lunaix/fs/probe_boot.h>
3 #include <lunaix/mm/valloc.h>
4 #include <lunaix/syslog.h>
8 #define LUNAIX_ID 0x414e554cUL // "LUNA"
13 struct device_meta* block_cat = device_getbyname(NULL, "block", 5);
18 struct iso_vol_primary* volp = valloc(ISO9660_BLKSZ);
20 struct device* dev = NULL;
21 struct device_meta *pos, *n;
22 llist_for_each(pos, n, &block_cat->children, siblings)
24 dev = resolve_device(pos);
30 dev->ops.read(dev, (void*)volp, ISO9660_READ_OFF, ISO9660_BLKSZ);
32 kprintf(KINFO "failed %xh:%xh, /dev/%s",
40 if (*(u32_t*)volp->header.std_id != ISO_SIGNATURE_LO) {
44 if (*(u32_t*)volp->sys_id == LUNAIX_ID) {
45 kprintf(KINFO "%xh:%xh, /dev/%s, %s",