diff --git a/include/cdio/iso9660.h b/include/cdio/iso9660.h index 502bf2e5..4bf51b1b 100644 --- a/include/cdio/iso9660.h +++ b/include/cdio/iso9660.h @@ -1,5 +1,5 @@ /* - $Id: iso9660.h,v 1.60 2005/02/05 12:37:35 rocky Exp $ + $Id: iso9660.h,v 1.61 2005/02/12 10:23:18 rocky Exp $ Copyright (C) 2000 Herbert Valerio Riedel Copyright (C) 2003, 2004, 2005 Rocky Bernstein @@ -188,7 +188,7 @@ PRAGMA_BEGIN_PACKED @see iso9660_dtime */ -struct iso9660_dtime { +struct iso9660_dtime_s { uint8_t dt_year; uint8_t dt_month; /**< Has value in range 1..12. Note starts at 1, not 0 like a tm struct. */ @@ -200,14 +200,14 @@ struct iso9660_dtime { intervals */ } GNUC_PACKED; -typedef struct iso9660_dtime iso9660_dtime_t; +typedef struct iso9660_dtime_s iso9660_dtime_t; /*! \brief ISO-9660 longer-format time structure. @see iso9660_ltime */ -struct iso9660_ltime { +struct iso9660_ltime_s { char lt_year [_delta( 1, 4)]; /**< Add 1900 to value for the Julian year */ @@ -225,7 +225,7 @@ struct iso9660_ltime { int8_t lt_gmtoff [_delta( 17, 17)]; } GNUC_PACKED; -typedef struct iso9660_ltime iso9660_ltime_t; +typedef struct iso9660_ltime_s iso9660_ltime_t; /*! \brief Format of an ISO-9660 directory record @@ -239,43 +239,43 @@ typedef struct iso9660_ltime iso9660_ltime_t; @see iso9660_stat */ -struct iso9660_dir { - uint8_t length; /*! 711 encoded */ - uint8_t xa_length; /*! 711 encoded */ - uint64_t extent; /*! 733 encoded */ - uint64_t size; /*! 733 encoded */ - iso9660_dtime_t recording_time; /*! 7 711-encoded units */ +struct iso9660_dir_s { + uint8_t length; /*! 7.1.1 encoded */ + uint8_t xa_length; /*! 7.1.1 encoded */ + uint64_t extent; /*! 7.3.3 encoded */ + uint64_t size; /*! 7.3.3 encoded */ + iso9660_dtime_t recording_time; /*! 7 7.1.1-encoded units */ uint8_t file_flags; - uint8_t file_unit_size; /*! 711 encoded */ - uint8_t interleave_gap; /*! 711 encoded */ - uint32_t volume_sequence_number; /*! 723 encoded */ - uint8_t filename_len; /*! 711 encoded */ + uint8_t file_unit_size; /*! 7.1.1 encoded */ + uint8_t interleave_gap; /*! 7.1.1 encoded */ + uint32_t volume_sequence_number; /*! 7.2.3 encoded */ + uint8_t filename_len; /*! 7.1.1 encoded */ char filename[EMPTY_ARRAY_SIZE]; } GNUC_PACKED; -typedef struct iso9660_dir iso9660_dir_t; +typedef struct iso9660_dir_s iso9660_dir_t; /*! \brief ISO-9660 Primary Volume Descriptor. */ -struct iso9660_pvd { - uint8_t type; /**< 711 encoded */ +struct iso9660_pvd_s { + uint8_t type; /**< 7.1.1 encoded */ char id[5]; - uint8_t version; /**< 711 encoded */ + uint8_t version; /**< 7.1.1 encoded */ char unused1[1]; char system_id[ISO_MAX_SYSTEM_ID]; /**< each char is an achar */ char volume_id[ISO_MAX_VOLUME_ID]; /**< each char is a dchar */ char unused2[8]; - uint64_t volume_space_size; /**< 733 encoded */ + uint64_t volume_space_size; /**< 7.3.3 encoded */ char unused3[32]; - uint32_t volume_set_size; /**< 723 encoded */ - uint32_t volume_sequence_number; /**< 723 encoded */ - uint32_t logical_block_size; /**< 723 encoded */ - uint64_t path_table_size; /**< 733 encoded */ - uint32_t type_l_path_table; /**< 731 encoded */ - uint32_t opt_type_l_path_table; /**< 731 encoded */ - uint32_t type_m_path_table; /**< 732 encoded */ - uint32_t opt_type_m_path_table; /**< 732 encoded */ + uint32_t volume_set_size; /**< 7.2.3 encoded */ + uint32_t volume_sequence_number; /**< 7.2.3 encoded */ + uint32_t logical_block_size; /**< 7.2.3 encoded */ + uint64_t path_table_size; /**< 7.3.3 encoded */ + uint32_t type_l_path_table; /**< 7.3.1 encoded */ + uint32_t opt_type_l_path_table; /**< 7.3.1 encoded */ + uint32_t type_m_path_table; /**< 7.3.2 encoded */ + uint32_t opt_type_m_path_table; /**< 7.3.2 encoded */ iso9660_dir_t root_directory_record; /**< See section 9.1 of ISO 9660 spec. */ char root_directory_filename; /**< Is '\\0' */ @@ -300,13 +300,13 @@ struct iso9660_pvd { ISO 9660 spec. */ iso9660_ltime_t effective_date; /**< See section 8.4.26.1 of ISO 9660 spec. */ - uint8_t file_structure_version; /**< 711 encoded */ + uint8_t file_structure_version; /**< 7.1.1 encoded */ char unused4[1]; char application_data[512]; char unused5[653]; } GNUC_PACKED; -typedef struct iso9660_pvd iso9660_pvd_t; +typedef struct iso9660_pvd_s iso9660_pvd_t; /*! \brief ISO-9660 Supplementary Volume Descriptor. @@ -315,24 +315,24 @@ typedef struct iso9660_pvd iso9660_pvd_t; the primary descriptor but two unused fields, "unused1" and "unused3 become "flags and "escape_sequences" respectively. */ -struct iso9660_svd { - uint8_t type; /**< 711 encoded */ +struct iso9660_svd_s { + uint8_t type; /**< 7.1.1 encoded */ char id[5]; - uint8_t version; /**< 711 encoded */ - char flags; /**< 853 */ + uint8_t version; /**< 7.1.1 encoded */ + char flags; /**< 8.5.3 */ char system_id[ISO_MAX_SYSTEM_ID]; /**< each char is an achar */ char volume_id[ISO_MAX_VOLUME_ID]; /**< each char is a dchar */ char unused2[8]; - uint64_t volume_space_size; /**< 733 encoded */ - char escape_sequences[32]; /**< 856 */ - uint32_t volume_set_size; /**< 723 encoded */ - uint32_t volume_sequence_number; /**< 723 encoded */ - uint32_t logical_block_size; /**< 723 encoded */ - uint64_t path_table_size; /**< 733 encoded */ - uint32_t type_l_path_table; /**< 731 encoded */ - uint32_t opt_type_l_path_table; /**< 731 encoded */ - uint32_t type_m_path_table; /**< 732 encoded */ - uint32_t opt_type_m_path_table; /**< 732 encoded */ + uint64_t volume_space_size; /**< 7.3.3 encoded */ + char escape_sequences[32]; /**< 8.5.6 */ + uint32_t volume_set_size; /**< 7.2.3 encoded */ + uint32_t volume_sequence_number; /**< 7.2.3 encoded */ + uint32_t logical_block_size; /**< 7.2.3 encoded */ + uint64_t path_table_size; /**< 7.3.3 encoded */ + uint32_t type_l_path_table; /**< 7.3.1 encoded */ + uint32_t opt_type_l_path_table; /**< 7.3.1 encoded */ + uint32_t type_m_path_table; /**< 7.3.2 encoded */ + uint32_t opt_type_m_path_table; /**< 7.3.2 encoded */ iso9660_dir_t root_directory_record; /**< See section 9.1 of ISO 9660 spec. */ char volume_set_id[ISO_MAX_VOLUMESET_ID]; /**< dchars */ @@ -356,13 +356,13 @@ struct iso9660_svd { ISO 9660 spec. */ iso9660_ltime_t effective_date; /**< See section 8.4.26.1 of ISO 9660 spec. */ - uint8_t file_structure_version; /**< 711 encoded */ + uint8_t file_structure_version; /**< 7.1.1 encoded */ char unused4[1]; char application_data[512]; char unused5[653]; } GNUC_PACKED; -typedef struct iso9660_svd iso9660_svd_t; +typedef struct iso9660_svd_s iso9660_svd_t; PRAGMA_END_PACKED @@ -375,7 +375,7 @@ PRAGMA_END_PACKED @see iso9660_dir */ -struct iso9660_stat { /* big endian!! */ +struct iso9660_stat_s { /* big endian!! */ struct tm tm; /**< time on entry */ lsn_t lsn; /**< start logical sector number */ uint32_t size; /**< total size in bytes */ @@ -385,7 +385,7 @@ struct iso9660_stat { /* big endian!! */ char filename[EMPTY_ARRAY_SIZE]; /**< filename */ }; -typedef struct iso9660_stat iso9660_stat_t; +typedef struct iso9660_stat_s iso9660_stat_t; /** A mask used in iso9660_ifs_read_vd which allows what kinds @@ -407,7 +407,7 @@ typedef uint8_t iso_extension_mask_t; /** This is an opaque structure. */ -typedef struct _iso9660 iso9660_t; +typedef struct _iso9660_s iso9660_t; /*! Open an ISO 9660 image for reading. Maybe in the future we will have diff --git a/lib/iso9660/iso9660.c b/lib/iso9660/iso9660.c index e312bf04..be79ddc3 100644 --- a/lib/iso9660/iso9660.c +++ b/lib/iso9660/iso9660.c @@ -1,5 +1,5 @@ /* - $Id: iso9660.c,v 1.2 2005/02/05 12:37:35 rocky Exp $ + $Id: iso9660.c,v 1.3 2005/02/12 10:23:18 rocky Exp $ Copyright (C) 2000 Herbert Valerio Riedel Copyright (C) 2003, 2004, 2005 Rocky Bernstein @@ -37,7 +37,7 @@ #include #endif -static const char _rcsid[] = "$Id: iso9660.c,v 1.2 2005/02/05 12:37:35 rocky Exp $"; +static const char _rcsid[] = "$Id: iso9660.c,v 1.3 2005/02/12 10:23:18 rocky Exp $"; /* Variables to hold debugger-helping enumerations */ enum iso_enums1 iso_enums1; @@ -353,9 +353,9 @@ iso9660_isachar (int c) void iso9660_set_evd(void *pd) { - struct iso_volume_descriptor ied; + iso_volume_descriptor_t ied; - cdio_assert (sizeof(struct iso_volume_descriptor) == ISO_BLOCKSIZE); + cdio_assert (sizeof(iso_volume_descriptor_t) == ISO_BLOCKSIZE); cdio_assert (pd != NULL); @@ -583,14 +583,14 @@ iso9660_dir_init_new_su (void *dir, void iso9660_pathtable_init (void *pt) { - cdio_assert (sizeof (struct iso_path_table) == 8); + cdio_assert (sizeof (iso_path_table_t) == 8); cdio_assert (pt != NULL); memset (pt, 0, ISO_BLOCKSIZE); /* fixme */ } -static const struct iso_path_table* +static const iso_path_table_t * pathtable_get_entry (const void *pt, unsigned int entrynum) { const uint8_t *tmp = pt; @@ -606,7 +606,7 @@ pathtable_get_entry (const void *pt, unsigned int entrynum) cdio_assert (count < entrynum); - offset += sizeof (struct iso_path_table); + offset += sizeof (iso_path_table_t); offset += from_711 (*tmp); if (offset % 2) offset++; @@ -633,7 +633,7 @@ pathtable_get_size_and_entries (const void *pt, while (from_711 (*tmp)) { - offset += sizeof (struct iso_path_table); + offset += sizeof (iso_path_table_t); offset += from_711 (*tmp); if (offset % 2) offset++; @@ -662,14 +662,14 @@ iso9660_pathtable_l_add_entry (void *pt, uint32_t extent, uint16_t parent) { - struct iso_path_table *ipt = - (struct iso_path_table*)((char *)pt + iso9660_pathtable_get_size (pt)); + iso_path_table_t *ipt = + (iso_path_table_t *)((char *)pt + iso9660_pathtable_get_size (pt)); size_t name_len = strlen (name) ? strlen (name) : 1; unsigned int entrynum = 0; cdio_assert (iso9660_pathtable_get_size (pt) < ISO_BLOCKSIZE); /*fixme */ - memset (ipt, 0, sizeof (struct iso_path_table) + name_len); /* paranoia */ + memset (ipt, 0, sizeof (iso_path_table_t) + name_len); /* paranoia */ ipt->name_len = to_711 (name_len); ipt->extent = to_731 (extent); @@ -680,7 +680,7 @@ iso9660_pathtable_l_add_entry (void *pt, if (entrynum > 1) { - const struct iso_path_table *ipt2 + const iso_path_table_t *ipt2 = pathtable_get_entry (pt, entrynum - 2); cdio_assert (ipt2 != NULL); @@ -697,14 +697,14 @@ iso9660_pathtable_m_add_entry (void *pt, uint32_t extent, uint16_t parent) { - struct iso_path_table *ipt = - (struct iso_path_table*)((char *)pt + iso9660_pathtable_get_size (pt)); + iso_path_table_t *ipt = + (iso_path_table_t *)((char *)pt + iso9660_pathtable_get_size (pt)); size_t name_len = strlen (name) ? strlen (name) : 1; unsigned int entrynum = 0; cdio_assert (iso9660_pathtable_get_size(pt) < ISO_BLOCKSIZE); /* fixme */ - memset(ipt, 0, sizeof (struct iso_path_table) + name_len); /* paranoia */ + memset(ipt, 0, sizeof (iso_path_table_t) + name_len); /* paranoia */ ipt->name_len = to_711 (name_len); ipt->extent = to_732 (extent); @@ -715,7 +715,7 @@ iso9660_pathtable_m_add_entry (void *pt, if (entrynum > 1) { - const struct iso_path_table *ipt2 + const iso_path_table_t *ipt2 = pathtable_get_entry (pt, entrynum - 2); cdio_assert (ipt2 != NULL); diff --git a/lib/iso9660/iso9660_fs.c b/lib/iso9660/iso9660_fs.c index 6c3d195f..fbed03fe 100644 --- a/lib/iso9660/iso9660_fs.c +++ b/lib/iso9660/iso9660_fs.c @@ -1,5 +1,5 @@ /* - $Id: iso9660_fs.c,v 1.11 2005/02/10 01:59:06 rocky Exp $ + $Id: iso9660_fs.c,v 1.12 2005/02/12 10:23:18 rocky Exp $ Copyright (C) 2001 Herbert Valerio Riedel Copyright (C) 2003, 2004, 2005 Rocky Bernstein @@ -51,10 +51,10 @@ #include -static const char _rcsid[] = "$Id: iso9660_fs.c,v 1.11 2005/02/10 01:59:06 rocky Exp $"; +static const char _rcsid[] = "$Id: iso9660_fs.c,v 1.12 2005/02/12 10:23:18 rocky Exp $"; /* Implementation of iso9660_t type */ -struct _iso9660 { +struct _iso9660_s { CdioDataSource_t *stream; /* Stream pointer */ bool_3way_t b_xa; /* true if has XA attributes. If true b_mode2 should be set true as well. @@ -168,7 +168,7 @@ iso9660_open_ext_private (const char *pathname, iso_extension_mask_t iso_extension_mask, uint16_t i_fuzz, bool b_fuzzy) { - iso9660_t *p_iso = (iso9660_t *) calloc(1, sizeof(struct _iso9660)) ; + iso9660_t *p_iso = (iso9660_t *) calloc(1, sizeof(iso9660_t)) ; bool b_have_superblock; if (!p_iso) return NULL; diff --git a/lib/iso9660/iso9660_private.h b/lib/iso9660/iso9660_private.h index d2cbb690..4ccccd76 100644 --- a/lib/iso9660/iso9660_private.h +++ b/lib/iso9660/iso9660_private.h @@ -1,8 +1,8 @@ /* - $Id: iso9660_private.h,v 1.2 2005/02/05 04:25:14 rocky Exp $ + $Id: iso9660_private.h,v 1.3 2005/02/12 10:23:18 rocky Exp $ Copyright (C) 2000 Herbert Valerio Riedel - Copyright (C) 2003, 2004 Rocky Bernstein + Copyright (C) 2003, 2004, 2005 Rocky Bernstein See also iso9660.h by Eric Youngdale (1993). @@ -37,16 +37,16 @@ PRAGMA_BEGIN_PACKED -struct iso_volume_descriptor { - uint8_t type; /* 711 */ - char id[5]; /* "CD001" (ISO_STANDARD_ID) */ - uint8_t version; /* 711 */ +typedef struct iso_volume_descriptor_s { + uint8_t type; /**< 7.1.1 */ + char id[5]; /**< "CD001" (ISO_STANDARD_ID) */ + uint8_t version; /**< 7.1.1 */ char data[2041]; -} GNUC_PACKED; +} GNUC_PACKED iso_volume_descriptor_t; -#define struct_iso_volume_descriptor_SIZEOF ISO_BLOCKSIZE +#define iso_volume_descriptor_t_SIZEOF ISO_BLOCKSIZE -#define struct_iso9660_pvd_SIZEOF ISO_BLOCKSIZE +#define iso9660_pvd_t_SIZEOF ISO_BLOCKSIZE /* * XXX JS: The next structure has an odd length! @@ -59,17 +59,17 @@ struct iso_volume_descriptor { /* We use this to help us look up the parent inode numbers. */ -struct iso_path_table { - uint8_t name_len; /* 711 */ - uint8_t xa_len; /* 711 */ - uint32_t extent; /* 731/732 */ - uint16_t parent; /* 721/722 */ +typedef struct iso_path_table_s { + uint8_t name_len; /* 7.1.1 */ + uint8_t xa_len; /* 7.1.1 */ + uint32_t extent; /* 7.3.1/7.3.2 */ + uint16_t parent; /* 7.2.1/7.2.2 */ char name[EMPTY_ARRAY_SIZE]; -} GNUC_PACKED; +} GNUC_PACKED iso_path_table_t; -#define struct_iso_path_table_SIZEOF 8 +#define iso_path_table_t_SIZEOF 8 -#define struct_iso9660_dir_SIZEOF 33 +#define iso9660_dir_t_SIZEOF 33 PRAGMA_END_PACKED diff --git a/test/check_sizeof.c b/test/check_sizeof.c index a0dae37f..de538475 100644 --- a/test/check_sizeof.c +++ b/test/check_sizeof.c @@ -1,5 +1,5 @@ /* - $Id: check_sizeof.c,v 1.3 2003/08/31 08:42:11 rocky Exp $ + $Id: check_sizeof.c,v 1.4 2005/02/12 10:23:18 rocky Exp $ Copyright (C) 2001 Herbert Valerio Riedel @@ -60,10 +60,10 @@ int main (int argc, const char *argv[]) CHECK_SIZEOF(msf_t); /* "iso9660_private.h" */ - CHECK_SIZEOF_STRUCT(iso_volume_descriptor); - CHECK_SIZEOF_STRUCT(iso9660_pvd); - CHECK_SIZEOF_STRUCT(iso_path_table); - CHECK_SIZEOF_STRUCT(iso9660_dir); + CHECK_SIZEOF(iso_volume_descriptor_t); + CHECK_SIZEOF(iso9660_pvd_t); + CHECK_SIZEOF(iso_path_table_t); + CHECK_SIZEOF(iso9660_dir_t); #define iso9660_xa_t_SIZEOF 14