From a37cfc0ba40a9dd80d963cdd26dfbb92cd5d60a0 Mon Sep 17 00:00:00 2001 From: rocky Date: Tue, 22 Feb 2005 10:42:50 +0000 Subject: [PATCH] NEWS: all that's gone on so far in 0.73cvs README: Note paranoia and samba vfs module *.{h,c}: more debugger symbols. Use _s convention more. --- NEWS | 14 +++++++++++++- README | 15 ++++++++++----- include/cdio/iso9660.h | 10 +++++----- include/cdio/rock.h | 14 +++++++++++--- lib/iso9660/iso9660.c | 11 ++++++----- lib/iso9660/libiso9660.sym | 8 ++++++++ lib/iso9660/rock.c | 6 +++++- 7 files changed, 58 insertions(+), 20 deletions(-) diff --git a/NEWS b/NEWS index 388fb9db..3438a40b 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,15 @@ +0.73cvs + +- Rock Ridge Extension support added +- file time/size attributes fixes +- cd-info/iso-info show more ls-like attributes and more often +- ISO 9660 more accurate more often +- Add ability to look for ISO 9660 filesystem in unknown Disc image formats +- Add routine for getting ISO9660 long date +- remove memory leaks +- Add enumerations and symbols to facilitate debugging +- Break out C++ example programs into a separate directory. More C++ programs. + 0.72 - cdparanoia included - with regression tests and sample library programs @@ -171,4 +183,4 @@ 0.1 Routines split off from VCDImager. -$Id: NEWS,v 1.63 2005/01/24 00:06:31 rocky Exp $ +$Id: NEWS,v 1.64 2005/02/22 10:42:50 rocky Exp $ diff --git a/README b/README index 7aa9f7a8..15082c80 100644 --- a/README +++ b/README @@ -2,7 +2,9 @@ The libcdio package contains a library which encapsulates CD-ROM reading and control. Applications wishing to be oblivious of the OS- and device-dependent properties of a CD-ROM can use this library. -Also included is a library for working with ISO-9660 filesystems. +Also included is a library for working with ISO-9660 filesystems as is +also the CD-DA error/jitter correction library from cdparanoia +(http://www.xiph.org/paranoia). Some support for disk image types like CDRWin's BIN/CUE format, cdrdao's TOC format, and Nero's NRG format are available. Therefore, @@ -14,7 +16,9 @@ VCDImager (http://vcdimager.org), a navigation-capable Video CD plugin and CD-DA plugins for the media players xine (http://xinehq.de), videolan's vlc (http://videolan.org), and kiso, a KDE GUI for creating, extracting and editing of ISO-Images -(http://kiso.sourceforge.net). +(http://kiso.sourceforge.net), and a Samba vfs module that allows you +to export a CD without mounting it +(http://ontologistics.net/OpenSource/Samba/index.php). Also included in the libcdio package is a utility program cd-info which displays CD information: number of tracks, CD-format and if possible @@ -26,8 +30,9 @@ shows basic VCD information. Other utility programs in the libcdio package are cd-read, for performing low-level block reading of a CD or CD image, iso-info for -displaying ISO-9660 information from an ISO-9660 image, and iso-read -for extracting files from an ISO-9660 image. +displaying ISO-9660 information from an ISO-9660 image, iso-read for +extracting files from an ISO-9660 image, and a version of the CD-DA +extraction tool cdparanoia which corrects for CD-ROM jitter. At present, there is no support for directing CD Audio control, e.g. playing, stopping, or pausing of a CD-CA where the blocks are not @@ -41,4 +46,4 @@ libcdio. However at present there are already many gaps in this library so narrowing its scope in order to focus on these things I think is a good idea. -$Id: README,v 1.6 2004/06/26 10:01:09 rocky Exp $ +$Id: README,v 1.7 2005/02/22 10:42:50 rocky Exp $ diff --git a/include/cdio/iso9660.h b/include/cdio/iso9660.h index 9fe8048d..f3343860 100644 --- a/include/cdio/iso9660.h +++ b/include/cdio/iso9660.h @@ -1,5 +1,5 @@ /* - $Id: iso9660.h,v 1.73 2005/02/22 04:32:52 rocky Exp $ + $Id: iso9660.h,v 1.74 2005/02/22 10:42:50 rocky Exp $ Copyright (C) 2000 Herbert Valerio Riedel Copyright (C) 2003, 2004, 2005 Rocky Bernstein @@ -77,7 +77,7 @@ typedef char dchar_t; /*! See section 7.4.1 */ to be helpful in debuggers where wants just to refer to the ISO_*_ names and get something. */ -extern enum iso_enums1 { +extern enum iso_enum1_s { ISO_PVD_SECTOR = 16, /**< Sector of Primary Volume Descriptor */ ISO_EVD_SECTOR = 17, /**< Sector of End Volume Descriptor */ LEN_ISONAME = 31, /**< size in bytes of the filename @@ -98,7 +98,7 @@ extern enum iso_enums1 { to be helpful in debuggers where wants just to refer to the ISO_*_ names and get something. */ -extern enum iso_flag_enums { +extern enum iso_flag_enum_s { ISO_FILE = 0, /**< Not really a flag... */ ISO_EXISTENCE = 1, /**< Do not make existence known (hidden) */ ISO_DIRECTORY = 2, /**< This file is a directory */ @@ -110,7 +110,7 @@ extern enum iso_flag_enums { ISO_MULTIEXTENT = 128, /**< Not final entry of a mult. ext. file */ } iso_flag_enums; -extern enum iso_vd_enums { +extern enum iso_vd_enum_s { ISO_VD_BOOT_RECORD = 0, /**< CD is bootable */ ISO_VD_PRIMARY = 1, /**< Is in any ISO-9660 */ ISO_VD_SUPPLEMENARY = 2, /**< Used by Joliet, for example */ @@ -554,7 +554,7 @@ typedef uint8_t iso_extension_mask_t; to be helpful in debuggers where wants just to refer to the ISO_EXTENSION_*_ names and get something. */ -extern enum iso_extension_enums { +extern enum iso_extension_enum_s { ISO_EXTENSION_JOLIET_LEVEL1 = 0x01, ISO_EXTENSION_JOLIET_LEVEL2 = 0x02, ISO_EXTENSION_JOLIET_LEVEL3 = 0x04, diff --git a/include/cdio/rock.h b/include/cdio/rock.h index 643d3864..830381f9 100644 --- a/include/cdio/rock.h +++ b/include/cdio/rock.h @@ -1,5 +1,5 @@ /* - $Id: rock.h,v 1.7 2005/02/22 04:32:52 rocky Exp $ + $Id: rock.h,v 1.8 2005/02/22 10:42:50 rocky Exp $ Copyright (C) 2005 Rocky Bernstein @@ -38,7 +38,7 @@ be helpful in debuggers where wants just to refer to the ISO_ROCK_* names and get something. */ -extern enum cdio_rock_enums { +extern enum iso_rock_enums { ISO_ROCK_IRUSR = 000400, /**< read permission (owner) */ ISO_ROCK_IWUSR = 000200, /**< write permission (owner) */ ISO_ROCK_IXUSR = 000100, /**< execute permission (owner) */ @@ -60,7 +60,7 @@ extern enum cdio_rock_enums { ISO_ROCK_ISCHR = 020000, /**< character special */ ISO_ROCK_ISDIR = 040000, /**< directory */ ISO_ROCK_ISFIFO = 010000 /**< pipe or FIFO */ -} cdio_rock_enums; +} iso_rock_enums; #define ISO_ROCK_IRUSR 000400 /** read permission (owner) */ #define ISO_ROCK_IWUSR 000200 /** write permission (owner) */ @@ -350,6 +350,14 @@ int parse_rock_ridge_stat(iso9660_dir_t *de, /*out*/ iso9660_stat_t *p_stat); */ const char *iso9660_get_rock_attr_str(posix_mode_t st_mode); +/** These variables are not used, but are defined to facilatate debugging + by letting us use enumerations values (which also correspond to + #define's inside a debugged program. + */ +extern iso_rock_nm_flag_t iso_rock_nm_flag; +extern iso_rock_sl_flag_t iso_rock_sl_flag; +extern iso_rock_tf_flag_t iso_rock_tf_flag; + #endif /* __ISO_ROCK_H__ */ /* diff --git a/lib/iso9660/iso9660.c b/lib/iso9660/iso9660.c index 42dff426..09b9bcae 100644 --- a/lib/iso9660/iso9660.c +++ b/lib/iso9660/iso9660.c @@ -1,5 +1,5 @@ /* - $Id: iso9660.c,v 1.8 2005/02/22 09:55:47 rocky Exp $ + $Id: iso9660.c,v 1.9 2005/02/22 10:42:50 rocky Exp $ Copyright (C) 2000 Herbert Valerio Riedel Copyright (C) 2003, 2004, 2005 Rocky Bernstein @@ -48,12 +48,13 @@ const char ISO_STANDARD_ID[] = {'C', 'D', '0', '0', '1'}; #include #endif -static const char _rcsid[] = "$Id: iso9660.c,v 1.8 2005/02/22 09:55:47 rocky Exp $"; +static const char _rcsid[] = "$Id: iso9660.c,v 1.9 2005/02/22 10:42:50 rocky Exp $"; /* Variables to hold debugger-helping enumerations */ -enum iso_enums1 iso_enums1; -enum iso_flag_enums iso_flag_enums; -enum iso_vd_enums iso_vd_enums; +enum iso_enum1_s iso_enums1; +enum iso_flag_enum_s iso_flag_enums; +enum iso_vd_enum_s iso_vd_enums; +enum iso_extension_enum_s iso_extension_enums; /* some parameters... */ #define SYSTEM_ID "CD-RTOS CD-BRIDGE" diff --git a/lib/iso9660/libiso9660.sym b/lib/iso9660/libiso9660.sym index fb6c660a..f12fee32 100644 --- a/lib/iso9660/libiso9660.sym +++ b/lib/iso9660/libiso9660.sym @@ -1,3 +1,11 @@ +iso_enums1 +iso_extension_enums +iso_flag_enums +iso_vd_enums +iso_rock_enums +iso_rock_nm_flag +iso_rock_sl_flag +iso_rock_tf_flag iso9660_close iso9660_dir_add_entry_su iso9660_dir_calc_record_size diff --git a/lib/iso9660/rock.c b/lib/iso9660/rock.c index 9957ff65..286241db 100644 --- a/lib/iso9660/rock.c +++ b/lib/iso9660/rock.c @@ -1,5 +1,5 @@ /* - $Id: rock.c,v 1.10 2005/02/22 02:02:46 rocky Exp $ + $Id: rock.c,v 1.11 2005/02/22 10:42:50 rocky Exp $ Copyright (C) 2005 Rocky Bernstein Adapted from GNU/Linux fs/isofs/rock.c (C) 1992, 1993 Eric Youngdale @@ -41,6 +41,10 @@ #include #include +enum iso_rock_enums iso_rock_enums; +iso_rock_nm_flag_t iso_rock_nm_flag; +iso_rock_sl_flag_t iso_rock_sl_flag; +iso_rock_tf_flag_t iso_rock_tf_flag; /* Our own realloc routine tailored for the iso9660_stat_t symlink field. I can't figure out how to make realloc() work without