X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/40941f94f7c8522f65f9ebc425a300d40412bc16..c166bd62fbb907f95f79f621e2a2fb4fdde08e01:/lunaix-os/includes/lunaix/fs/iso9660.h?ds=sidebyside diff --git a/lunaix-os/includes/lunaix/fs/iso9660.h b/lunaix-os/includes/lunaix/fs/iso9660.h index 9d16961..6fbdbbc 100644 --- a/lunaix-os/includes/lunaix/fs/iso9660.h +++ b/lunaix-os/includes/lunaix/fs/iso9660.h @@ -36,6 +36,7 @@ #define ISO9660_BLKSZ 2048 #define ISO9660_IDLEN 256 +#define ISO9660_READ_OFF (ISO9660_BLKSZ * 16) // NOTES: // Each Descriptor sized 1 logical block (2048 bytes in common cases) @@ -153,7 +154,7 @@ struct iso_drecord u8_t xattr_len; iso_bbo32_t extent_addr; iso_bbo32_t data_size; - struct iso_datetime2 PACKED mktime; // Time the record is made, see 9.1.5 + struct iso_datetime2 mktime; // Time the record is made, see 9.1.5 u8_t flags; u8_t fu_sz; // size of file unit (FU) u8_t gap_sz; // size of gap if FU is interleaved. @@ -272,7 +273,7 @@ struct iso_inode u32_t record_fmt; u32_t fu_size; u32_t gap_size; - struct llist_header* drecaches; + struct llist_header drecaches; }; struct iso_drecache @@ -339,6 +340,12 @@ iso9660_read(struct v_inode* inode, void* buffer, size_t len, size_t fpos); int iso9660_write(struct v_inode* inode, void* buffer, size_t len, size_t fpos); +int +iso9660_read_page(struct v_inode* inode, void* buffer, size_t fpos); + +int +iso9660_write_page(struct v_inode* inode, void* buffer, size_t fpos); + int iso9660_seek(struct v_inode* inode, size_t offset);