diff --git a/NEWS b/NEWS index 03b37dad..2977fe96 100644 --- a/NEWS +++ b/NEWS @@ -5,10 +5,11 @@ - Redo types of lsn and lba to allow negative values. Should model MMC3 specs. Add max/min values for lsn. - More complete MMC command set -- FreeBSD drive reading works better (thanks to Heiner) +- FreeBSD driver ioctl and CAM reading works better (thanks to Heiner) - OSX drive reading works better (thanks to Justin F. Hallett) - cd-read allows dumping bytes to stdout and hexdumps to a file via options --no-hexdump and --hexdump +- fewer error exits in drivers. Instead, a failure code is returned. - better NRG reading (thanks to Michael Kukat via extractnrg.pl) - better tracking of allocated variables (cd-read, cd-info, FreeBSD) - iso9660: Add interface to read PVD and pick out some of the fields in that. @@ -122,4 +123,4 @@ 0.1 Routines split off from VCDImager. -$Id: NEWS,v 1.46 2004/06/23 02:25:37 rocky Exp $ +$Id: NEWS,v 1.47 2004/06/25 21:10:36 rocky Exp $ diff --git a/lib/_cdio_bsdi.c b/lib/_cdio_bsdi.c index b753c46e..71059a2b 100644 --- a/lib/_cdio_bsdi.c +++ b/lib/_cdio_bsdi.c @@ -1,5 +1,5 @@ /* - $Id: _cdio_bsdi.c,v 1.26 2004/06/03 12:37:54 rocky Exp $ + $Id: _cdio_bsdi.c,v 1.27 2004/06/25 21:10:43 rocky Exp $ Copyright (C) 2001 Herbert Valerio Riedel Copyright (C) 2002, 2003, 2004 Rocky Bernstein @@ -27,7 +27,7 @@ # include "config.h" #endif -static const char _rcsid[] = "$Id: _cdio_bsdi.c,v 1.26 2004/06/03 12:37:54 rocky Exp $"; +static const char _rcsid[] = "$Id: _cdio_bsdi.c,v 1.27 2004/06/25 21:10:43 rocky Exp $"; #include #include @@ -122,7 +122,7 @@ static bool _cdio_init (_img_private_t *env) { if (env->gen.init) { - cdio_error ("init called more than once"); + cdio_warn ("init called more than once"); return false; } @@ -130,7 +130,7 @@ _cdio_init (_img_private_t *env) if (env->gen.fd < 0) { - cdio_error ("open (%s): %s", env->source_name, strerror (errno)); + cdio_warn ("open (%s): %s", env->source_name, strerror (errno)); return false; } @@ -173,7 +173,7 @@ _read_audio_sectors_bsdi (void *user_data, void *data, lsn_t lsn, switch (env->access_mode) { case _AM_NONE: - cdio_error ("no way to read audio"); + cdio_warn ("no way to read audio"); return 1; break; @@ -277,7 +277,7 @@ _read_mode2_sector_bsdi (void *user_data, void *data, lsn_t lsn, switch (env->access_mode) { case _AM_NONE: - cdio_error ("no way to read mode2"); + cdio_warn ("no way to read mode2"); return 1; break; @@ -369,7 +369,7 @@ _set_arg_bsdi (void *user_data, const char key[], const char value[]) if (!strcmp(value, "IOCTL")) env->access_mode = _AM_IOCTL; else - cdio_error ("unknown access type: %s. ignored.", value); + cdio_warn ("unknown access type: %s. ignored.", value); } else return -1; @@ -388,7 +388,7 @@ _cdio_read_toc (_img_private_t *env) /* read TOC header */ if ( ioctl(env->gen.fd, CDROMREADTOCHDR, &env->tochdr) == -1 ) { - cdio_error("%s: %s\n", + cdio_warn("%s: %s\n", "error in ioctl CDROMREADTOCHDR", strerror(errno)); return false; } @@ -398,7 +398,7 @@ _cdio_read_toc (_img_private_t *env) env->tocent[i-1].cdte_track = i; env->tocent[i-1].cdte_format = CDROM_MSF; if ( ioctl(env->gen.fd, CDROMREADTOCENTRY, &env->tocent[i-1]) == -1 ) { - cdio_error("%s %d: %s\n", + cdio_warn("%s %d: %s\n", "error in ioctl CDROMREADTOCENTRY for track", i, strerror(errno)); return false; @@ -418,7 +418,7 @@ _cdio_read_toc (_img_private_t *env) if (ioctl(env->gen.fd, CDROMREADTOCENTRY, &env->tocent[TOTAL_TRACKS]) == -1 ) { - cdio_error("%s: %s\n", + cdio_warn("%s: %s\n", "error in ioctl CDROMREADTOCENTRY for lead-out", strerror(errno)); return false; @@ -453,18 +453,18 @@ _eject_media_bsdi (void *user_data) { switch(status) { case CDS_TRAY_OPEN: if((ret = ioctl(fd, CDROMCLOSETRAY, 0)) != 0) { - cdio_error ("ioctl CDROMCLOSETRAY failed: %s\n", strerror(errno)); + cdio_warn ("ioctl CDROMCLOSETRAY failed: %s\n", strerror(errno)); } break; case CDS_DISC_OK: if((ret = ioctl(fd, CDROMEJECT, 0)) != 0) { - cdio_error("ioctl CDROMEJECT failed: %s\n", strerror(errno)); + cdio_warn("ioctl CDROMEJECT failed: %s\n", strerror(errno)); } break; } ret=0; } else { - cdio_error ("CDROM_DRIVE_STATUS failed: %s\n", strerror(errno)); + cdio_warn ("CDROM_DRIVE_STATUS failed: %s\n", strerror(errno)); ret=1; } close(fd); diff --git a/lib/_cdio_generic.c b/lib/_cdio_generic.c index 4fefb6f9..f768337f 100644 --- a/lib/_cdio_generic.c +++ b/lib/_cdio_generic.c @@ -1,5 +1,5 @@ /* - $Id: _cdio_generic.c,v 1.17 2004/06/19 19:15:15 rocky Exp $ + $Id: _cdio_generic.c,v 1.18 2004/06/25 21:10:43 rocky Exp $ Copyright (C) 2001 Herbert Valerio Riedel Copyright (C) 2002, 2003, 2004 Rocky Bernstein @@ -27,7 +27,7 @@ # include "config.h" #endif -static const char _rcsid[] = "$Id: _cdio_generic.c,v 1.17 2004/06/19 19:15:15 rocky Exp $"; +static const char _rcsid[] = "$Id: _cdio_generic.c,v 1.18 2004/06/25 21:10:43 rocky Exp $"; #include #include @@ -86,7 +86,7 @@ cdio_generic_init (void *user_data) { generic_img_private_t *_env = user_data; if (_env->init) { - cdio_error ("init called more than once"); + cdio_warn ("init called more than once"); return false; } diff --git a/lib/_cdio_linux.c b/lib/_cdio_linux.c index fde494da..5c7a9ce2 100644 --- a/lib/_cdio_linux.c +++ b/lib/_cdio_linux.c @@ -1,5 +1,5 @@ /* - $Id: _cdio_linux.c,v 1.55 2004/06/06 11:44:51 rocky Exp $ + $Id: _cdio_linux.c,v 1.56 2004/06/25 21:10:43 rocky Exp $ Copyright (C) 2001 Herbert Valerio Riedel Copyright (C) 2002, 2003, 2004 Rocky Bernstein @@ -27,7 +27,7 @@ # include "config.h" #endif -static const char _rcsid[] = "$Id: _cdio_linux.c,v 1.55 2004/06/06 11:44:51 rocky Exp $"; +static const char _rcsid[] = "$Id: _cdio_linux.c,v 1.56 2004/06/25 21:10:43 rocky Exp $"; #include @@ -397,7 +397,7 @@ _read_mode1_sector_linux (void *env, void *data, lsn_t lsn, switch (_obj->access_mode) { case _AM_NONE: - cdio_error ("no way to read mode1"); + cdio_warn ("no way to read mode1"); return 1; break; @@ -492,7 +492,7 @@ _read_mode2_sector_linux (void *user_data, void *data, lsn_t lsn, switch (env->access_mode) { case _AM_NONE: - cdio_error ("no way to read mode2"); + cdio_warn ("no way to read mode2"); return 1; break; @@ -627,7 +627,7 @@ _cdio_read_toc (_img_private_t *env) /* read TOC header */ if ( ioctl(env->gen.fd, CDROMREADTOCHDR, &env->tochdr) == -1 ) { - cdio_error("%s: %s\n", + cdio_warn("%s: %s\n", "error in ioctl CDROMREADTOCHDR", strerror(errno)); return false; } @@ -638,7 +638,7 @@ _cdio_read_toc (_img_private_t *env) env->tocent[i-FIRST_TRACK_NUM].cdte_format = CDROM_MSF; if ( ioctl(env->gen.fd, CDROMREADTOCENTRY, &env->tocent[i-FIRST_TRACK_NUM]) == -1 ) { - cdio_error("%s %d: %s\n", + cdio_warn("%s %d: %s\n", "error in ioctl CDROMREADTOCENTRY for track", i, strerror(errno)); return false; @@ -658,7 +658,7 @@ _cdio_read_toc (_img_private_t *env) if (ioctl(env->gen.fd, CDROMREADTOCENTRY, &env->tocent[TOTAL_TRACKS]) == -1 ) { - cdio_error("%s: %s\n", + cdio_warn("%s: %s\n", "error in ioctl CDROMREADTOCENTRY for lead-out", strerror(errno)); return false; @@ -748,7 +748,7 @@ _eject_media_linux (void *user_data) { switch(status) { case CDS_TRAY_OPEN: if((ret = ioctl(fd, CDROMCLOSETRAY)) != 0) { - cdio_error ("ioctl CDROMCLOSETRAY failed: %s\n", strerror(errno)); + cdio_warn ("ioctl CDROMCLOSETRAY failed: %s\n", strerror(errno)); ret = 1; } break; @@ -758,17 +758,17 @@ _eject_media_linux (void *user_data) { /* Try ejecting the MMC way... */ ret = _eject_media_mmc(fd); if (0 != ret) { - cdio_error("ioctl CDROMEJECT failed: %s\n", strerror(eject_error)); + cdio_warn("ioctl CDROMEJECT failed: %s\n", strerror(eject_error)); ret = 1; } } break; default: - cdio_error ("Unknown CD-ROM (%d)\n", status); + cdio_warn ("Unknown CD-ROM (%d)\n", status); ret = 1; } } else { - cdio_error ("CDROM_DRIVE_STATUS failed: %s\n", strerror(errno)); + cdio_warn ("CDROM_DRIVE_STATUS failed: %s\n", strerror(errno)); ret=1; } close(fd); diff --git a/lib/_cdio_sunos.c b/lib/_cdio_sunos.c index 759eabe4..b231a377 100644 --- a/lib/_cdio_sunos.c +++ b/lib/_cdio_sunos.c @@ -1,5 +1,5 @@ /* - $Id: _cdio_sunos.c,v 1.39 2004/06/13 20:38:58 rocky Exp $ + $Id: _cdio_sunos.c,v 1.40 2004/06/25 21:10:44 rocky Exp $ Copyright (C) 2001 Herbert Valerio Riedel Copyright (C) 2002, 2003, 2004 Rocky Bernstein @@ -38,7 +38,7 @@ #ifdef HAVE_SOLARIS_CDROM -static const char _rcsid[] = "$Id: _cdio_sunos.c,v 1.39 2004/06/13 20:38:58 rocky Exp $"; +static const char _rcsid[] = "$Id: _cdio_sunos.c,v 1.40 2004/06/25 21:10:44 rocky Exp $"; #ifdef HAVE_GLOB_H #include @@ -371,7 +371,7 @@ _cdio_read_toc (_img_private_t *env) /* read TOC header */ if ( ioctl(env->gen.fd, CDROMREADTOCHDR, &env->tochdr) == -1 ) { - cdio_error("%s: %s\n", + cdio_warn("%s: %s\n", "error in ioctl CDROMREADTOCHDR", strerror(errno)); return false; } @@ -381,7 +381,7 @@ _cdio_read_toc (_img_private_t *env) env->tocent[i-1].cdte_track = i; env->tocent[i-1].cdte_format = CDROM_MSF; if ( ioctl(env->gen.fd, CDROMREADTOCENTRY, &env->tocent[i-1]) == -1 ) { - cdio_error("%s %d: %s\n", + cdio_warn("%s %d: %s\n", "error in ioctl CDROMREADTOCENTRY for track", i, strerror(errno)); return false; @@ -394,7 +394,7 @@ _cdio_read_toc (_img_private_t *env) if (ioctl(env->gen.fd, CDROMREADTOCENTRY, &env->tocent[env->tochdr.cdth_trk1]) == -1 ) { - cdio_error("%s: %s\n", + cdio_warn("%s: %s\n", "error in ioctl CDROMREADTOCENTRY for lead-out", strerror(errno)); return false; @@ -419,7 +419,7 @@ _cdio_eject_media (void *user_data) { if (env->gen.fd > -1) { if ((ret = ioctl(env->gen.fd, CDROMEJECT)) != 0) { cdio_generic_free((void *) env); - cdio_error ("CDROMEJECT failed: %s\n", strerror(errno)); + cdio_warn ("CDROMEJECT failed: %s\n", strerror(errno)); return 1; } else { return 0; @@ -436,7 +436,7 @@ _cdio_malloc_and_zero(size_t size) { if( !size ) size++; if((ptr = malloc(size)) == NULL) { - cdio_error("malloc() failed: %s", strerror(errno)); + cdio_warn("malloc() failed: %s", strerror(errno)); return NULL; }