MIN_DRIVER, MIN_DEVICE_DRIVER, MAX_DEVICE_DRIVER -> CDIO_...

Add CDIO_MAX_DRIVER (distinct from CDIO_MAX_DEVICE_DRIVER

cdio.c (cdio_open): was only scanning devices. Change to scan
disk image files as well.
This commit is contained in:
rocky
2003-06-22 22:41:29 +00:00
parent be50d1a8d4
commit 597cef4818
5 changed files with 243 additions and 129 deletions

336
ChangeLog
View File

@@ -1,3 +1,204 @@
2003-06-13 00:47 rocky
* configure.ac: Order of libraries is important in cygwin (and
perhaps others): -lvcdinfo comes before -lvcd.
2003-06-13 00:36 rocky
* src/cd-info.c: Now use cdio enum rather than vcd enum for unknown
driver type.
2003-06-12 00:46 rocky
* lib/_cdio_generic.c, lib/_cdio_linux.c, lib/cdio_private.h,
src/cd-info.c: Make GNU/Linux smarter about finding a default
device -- code sort of from SDL. Better error checking all around.
2003-06-11 23:38 rocky
* lib/_cdio_win32.c: Pedantic change: subroutine name is probably
better.
2003-06-11 06:57 rocky
* test/.cvsignore: [no log message]
2003-06-11 06:57 rocky
* include/cdio/cdio.h, lib/cdio.c, src/Makefile.am: Enumeration had
grew but hadn't changed string array accordingly.
2003-06-11 06:55 rocky
* lib/_cdio_win32.c: Bug fixes for NT-derived systems
2003-06-09 21:19 rocky
* configure.ac: It's '=' not '=='
2003-06-08 09:08 rocky
* configure.ac, test/check_common_fn.in: Better way to deal with
diff vs. cmp and diff options.
2003-06-08 08:33 rocky
* configure.ac, test/check_common_fn, test/check_common_fn.in: Use
diff rather than cmp if possible. Also if possible do a unified
diff and for M$DOG strip whitespace for the \r\n vs \n differences.
2003-06-07 18:16 rocky
* src/cd-info.c: Reverting change (for now).
2003-06-07 18:13 rocky
* src/cd-info.c: Is this right?
2003-06-07 18:11 rocky
* lib/_cdio_win32.c: More bugs. By far not the last of them
though....
2003-06-07 16:42 rocky
* include/cdio/cdio.h, lib/_cdio_win32.c, lib/cdio.c: With M$ we
can no longer assume we can open a fd ant it will read properly.
Add yellow-mode reads interface.
There's lots of cleanup to do...
2003-06-07 16:41 rocky
* test/: cdda.right, check_common_fn, check_opts0.right,
check_opts1.right, check_opts2.right, check_opts3.right,
check_opts4.right, check_opts5.right, check_opts6.right,
check_opts7.right, isofs-m1.right, monvoisin.right,
svcd_ogt_test_ntsc.right, svcdgs.right, vcd_demo.right,
videocd.right: Remvoe headers. Run with --no-header now.
2003-06-07 16:40 rocky
* src/cd-info.c: Add option to nuke header for regression tests.
With M$ can no longer assume file descriptors do the right thing.
Have pay more attention to track formats.
2003-06-07 12:53 rocky
* include/cdio/cdio.h, lib/_cdio_win32.c, lib/cdio.c: More MinGW
things. Need generic routine for determining if a string is a
device
2003-06-07 12:49 rocky
* lib/_cdio_generic.c: Add generic routine to determine if a string
refers to a device or not.
2003-06-07 12:48 rocky
* lib/cdio_private.h: Add customized routines for determining if
whether a string refers to a device or not.
2003-06-07 08:47 rocky
* lib/_cdio_win32.c: First inkling of this actually working.
2003-06-07 06:44 rocky
* include/cdio/types.h, lib/_cdio_win32.c: More MinGW fixes.
2003-06-07 06:43 rocky
* src/cd-info.c: Show default device on version command. Don't put
/dev in front of device name if win32.
2003-06-07 04:53 rocky
* configure.ac, lib/_cdio_win32.c, src/cd-info.c: More MinGW fixes.
2003-06-06 21:20 rocky
* configure.ac, src/cd-info.c: cygwin/mingw improvements cd-info:
list drivers and exit when --version requested.
2003-06-06 21:19 rocky
* lib/cdio.c, include/cdio/cdio.h: Add access routine to return
driver string
2003-06-01 17:05 rocky
* configure.ac, src/Makefile.am, src/cd-info.c: Require libcddb
0.9.4 or nothing at all. We now allow: - setting cache directory -
disabling caching altogther - setting timeout on CDDB network
operations - setting email address reported to CDDB server -
setting name of CDDB server - printing/suppressing messages from
CDDB
2003-05-30 06:58 rocky
* test/check_common_fn: report name of cd-info program more
accurately and precisely
2003-05-30 06:21 rocky
* lib/_cdio_generic.c: Not everyone has sys/ioctl.h.
2003-05-26 22:58 rocky
* lib/_cdio_freebsd.c: Another holdover from constants that were
renamed.
2003-05-26 22:55 rocky
* configure.ac, include/cdio/cdio.h, include/cdio/types.h,
lib/Makefile.am, lib/_cdio_win32.c, lib/cdio.c, parse/.cvsignore:
Closer to having WIN32 CD-ROM support
2003-05-26 22:22 rocky
* lib/_cdio_freebsd.c: Miscellaneous constant changes and typos
2003-05-25 23:11 rocky
* include/cdio/sector.h: more pedantic types (which in fact match
the implimentation).
2003-05-25 06:35 rocky
* lib/_cdio_freebsd.c: Another small comment correction
2003-05-25 06:34 rocky
* lib/_cdio_freebsd.c: small eject comment correction
2003-05-24 11:46 rocky
* src/cd-info.c: Revert version number change since I'm not
prepared to change the regression test numbers.
2003-05-24 11:43 rocky
* lib/cdio_private.h: Add field for and save driver id used.
2003-05-24 11:26 rocky
* src/cd-info.c: Print out driver selected.
2003-05-24 11:25 rocky
* lib/cdio.c: Add cdio_get_driver_name: routine to list name of
driver selected.
2003-05-24 11:24 rocky
* include/cdio/cdio.h: Add cdio_get_driver_name: routine to return
driver selected.
2003-05-20 04:45 rocky
* ChangeLog: [no log message]
2003-05-20 04:23 rocky
* test/videocd.nrg: Test NRG file.
@@ -193,19 +394,8 @@
test/check_opts6.right, test/check_opts7.right, test/fsf.right,
test/isofs-m1.right, test/monvoisin.right,
test/svcd_ogt_test_ntsc.right, test/svcdgs.right,
test/vcd_demo.right, tests/.cvsignore, tests/Makefile.am,
tests/cdda.bin, tests/cdda.cue, tests/cdda.right,
tests/check_common_fn, tests/check_cue.sh.in, tests/check_nrg.sh,
tests/check_opts.sh, tests/check_opts0.right,
tests/check_opts1.right, tests/check_opts2.right,
tests/check_opts3.right, tests/check_opts4.right,
tests/check_opts5.right, tests/check_opts6.right,
tests/check_opts7.right, tests/fsf.right, tests/isofs-m1.bin,
tests/isofs-m1.cue, tests/isofs-m1.right, tests/monvoisin.right,
tests/svcd_ogt_test_ntsc.right, tests/svcdgs.right,
tests/vcd_demo.bin, tests/vcd_demo.right: tests -> test All public
includes are included via #include <cdio/....h> rather than
#include "....h"
test/vcd_demo.right: tests -> test All public includes are included
via #include <cdio/....h> rather than #include "....h"
(removed -I $top_srcdir/include/cdio)
@@ -217,18 +407,6 @@
* Makefile.am: Update regression version.
2003-04-21 21:32 rocky
* tests/check_nrg.sh: Add another Nero test.
2003-04-21 21:32 rocky
* tests/svcdgs.right: Yet another Nero test.
2003-04-21 19:31 rocky
* tests/.cvsignore: [no log message]
2003-04-21 19:30 rocky
* TODO: Where we might be going...
@@ -255,9 +433,8 @@
2003-04-21 10:13 hvr
* include/cdio/Makefile.am, include/cdio/logging.h,
include/cdio/sector.h, tests/check_cue.sh: public headers must nuse
unique #includes!
* include/cdio/: Makefile.am, logging.h, sector.h: public headers
must nuse unique #includes!
2003-04-21 06:17 hvr
@@ -266,30 +443,18 @@
2003-04-20 15:42 rocky
* ChangeLog, include/cdio/.cvsignore, tests/.cvsignore,
tests/check_cue.sh, tests/isofs-m1.right: CVS maintenance
* ChangeLog, include/cdio/.cvsignore: CVS maintenance
2003-04-20 15:27 rocky
* NEWS: [no log message]
2003-04-20 15:23 rocky
* tests/: check_cue.sh, check_cue.sh.in: May need --no-cddb option.
2003-04-20 13:24 rocky
* configure.ac, include/cdio/cdio.h, include/cdio/cdio.h.in,
src/cdinfo.c, tests/Makefile.am, tests/check_cue.sh,
tests/check_opts.sh, tests/check_opts.sh.in,
tests/check_opts0.right, tests/check_opts1.right,
tests/check_opts2.right, tests/check_opts3.right,
tests/check_opts4.right, tests/check_opts5.right,
tests/check_opts6.right, tests/check_opts7.right,
tests/fsf-tompox.bin, tests/fsf-tompox.right, tests/isofs-m1.bin,
tests/isofs-m1.cue: Reduce overall size yet again by replaing
isofs-m1 for fsf-tompox. cdinfo: Add options for CDDB port and
CDDB http enable fix bug if no CD in cdrom drive.
src/cdinfo.c: Reduce overall size yet again by replaing isofs-m1
for fsf-tompox. cdinfo: Add options for CDDB port and CDDB http
enable fix bug if no CD in cdrom drive.
2003-04-20 11:35 rocky
@@ -297,10 +462,8 @@
2003-04-20 11:34 rocky
* Makefile.am, configure.ac, lib/cdio.c, tests/Makefile.am,
tests/cdda.bin, tests/cdda.cue, tests/cdda.right,
tests/check_cue.sh: Add small cdda test. cdio.c: cdio_open was
opening image drivers.
* Makefile.am, configure.ac, lib/cdio.c: Add small cdda test.
cdio.c: cdio_open was opening image drivers.
2003-04-19 21:39 rocky
@@ -314,14 +477,8 @@
2003-04-19 15:12 rocky
* Makefile.am, NEWS, configure.ac, tests/Makefile.am,
tests/check_common_fn, tests/check_cue.sh, tests/check_nrg.sh,
tests/check_opts.sh.in, tests/check_opts0.right,
tests/check_opts1.right, tests/check_opts2.right,
tests/check_opts3.right, tests/check_opts4.right,
tests/check_opts5.right, tests/check_opts6.right,
tests/check_opts7.right: Break most of the larger regression tests
into a separate package.
* Makefile.am, NEWS, configure.ac: Break most of the larger
regression tests into a separate package.
2003-04-19 05:13 rocky
@@ -340,9 +497,9 @@
include/cdio/logging.h, include/cdio/sector.h,
include/cdio/types.h, include/cdio/util.h, lib/Makefile.am,
lib/cdio.h, lib/logging.h, lib/sector.h, lib/types.h, lib/util.h,
src/cdinfo.c, tests/.cvsignore: Move public includes to
include/cdio. This should facilitate having this source installed
locally since it allows #include <cdio/cdio.h> in the source tree.
src/cdinfo.c: Move public includes to include/cdio. This should
facilitate having this source installed locally since it allows
#include <cdio/cdio.h> in the source tree.
2003-04-18 20:53 rocky
@@ -381,27 +538,14 @@
2003-04-14 06:03 rocky
* configure.ac, tests/Makefile.am, tests/check_opts.sh,
tests/check_opts.sh.in: Need to conditionally add --no-cddb so we
added check_opts.sh.in. Rewrite for loop in lower-level
Bourne-shell style.
* configure.ac: Need to conditionally add --no-cddb so we added
check_opts.sh.in. Rewrite for loop in lower-level Bourne-shell
style.
2003-04-14 06:01 rocky
* src/cdinfo.c: One cddb reference not conditionally included.
2003-04-14 04:54 rocky
* tests/Makefile.am: Add check files to distribution.
2003-04-14 04:51 rocky
* tests/: Makefile.am, check_cue.sh, check_opts.sh,
check_opts0.right, check_opts1.right, check_opts2.right,
check_opts3.right, check_opts4.right, check_opts5.right,
check_opts6.right, check_opts7.right: Add regression test to check
cdinfo options processing.
2003-04-14 00:58 rocky
* src/cdinfo.c: libpopt options need to be integers. Change order
@@ -415,11 +559,6 @@
* configure.ac: Check for libcddb and use that if it's there.
2003-04-14 00:28 rocky
* tests/check_cue.sh: Don't give CDDB info for audio test since
it's not valid and we can't assume we're connected to the Internet.
2003-04-14 00:27 rocky
* lib/_cdio_bincue.c: If we don't think this is a cue file, we now
@@ -572,24 +711,6 @@
lib/_cdio_sunos.c, lib/sector.h, src/cdinfo.c: Change sector.h
constants, yet again. This time for Herbert Valiero Riedel.
2003-04-06 04:16 rocky
* tests/svcd_ogt_test_ntsc.bin: This file seems to get changed when
checking in.
2003-04-06 04:13 rocky
* tests/: Makefile.am, svcd_ogt_test_ntsc.bin:
svcd_ogt_test_ntsc.bin corrupted. Makefile: add other
bin/cue/nrg's
2003-04-06 01:46 rocky
* tests/: Makefile.am, check_cue.sh, fsf-tompox.bin,
fsf-tompox.right, fsf.right, svcd_ogt_test_ntsc.bin, vcd_demo.bin:
Add a CD audio test and an ISO 9660 joliet extension tst. Add in
the Video CD images I've been using.
2003-04-06 01:46 rocky
* src/cdinfo.c: Use new sector.h constants.
@@ -683,10 +804,9 @@
lib/_cdio_generic.c, lib/_cdio_linux.c, lib/_cdio_nrg.c,
lib/_cdio_stdio.c, lib/_cdio_stream.c, lib/_cdio_stream.h,
lib/_cdio_sunos.c, lib/cdio.c, lib/cdio.h, lib/cdio_private.h,
lib/cdio_types.h, lib/sector.h, src/Makefile.am, src/cdinfo.c,
tests/monvoisin.right: Add simple (non-mode2) read/seek.
_cdio_generic.c: place to save common driver routines add
cdio_get_track_sec_count.
lib/cdio_types.h, lib/sector.h, src/Makefile.am, src/cdinfo.c: Add
simple (non-mode2) read/seek. _cdio_generic.c: place to save
common driver routines add cdio_get_track_sec_count.
2003-03-24 21:10 rocky
@@ -720,11 +840,7 @@
lib/cdio_private.h, lib/cdio_types.h, lib/ds.c, lib/ds.h,
lib/logging.c, lib/logging.h, lib/sector.c, lib/sector.h,
lib/util.c, lib/util.h, src/.cvsignore, src/Makefile.am,
src/cdinfo-linux.c, src/cdinfo.c, tests/.cvsignore,
tests/Makefile.am, tests/check_common_fn, tests/check_cue.sh,
tests/check_nrg.sh, tests/monvoisin.right,
tests/svcd_ogt_test_ntsc.right, tests/vcd_demo.right: Initial
revision
src/cdinfo-linux.c, src/cdinfo.c: Initial revision
2003-03-24 14:01 rocky
@@ -738,9 +854,5 @@
lib/cdio_private.h, lib/cdio_types.h, lib/ds.c, lib/ds.h,
lib/logging.c, lib/logging.h, lib/sector.c, lib/sector.h,
lib/util.c, lib/util.h, src/.cvsignore, src/Makefile.am,
src/cdinfo-linux.c, src/cdinfo.c, tests/.cvsignore,
tests/Makefile.am, tests/check_common_fn, tests/check_cue.sh,
tests/check_nrg.sh, tests/monvoisin.right,
tests/svcd_ogt_test_ntsc.right, tests/vcd_demo.right: Imported
sources
src/cdinfo-linux.c, src/cdinfo.c: Imported sources

View File

@@ -1,5 +1,5 @@
/* -*- c -*-
$Id: cdio.h,v 1.14 2003/06/11 10:57:02 rocky Exp $
$Id: cdio.h,v 1.15 2003/06/22 22:41:29 rocky Exp $
Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org>
Copyright (C) 2003 Rocky Bernstein <rocky@panix.com>
@@ -83,9 +83,10 @@ extern "C" {
/* Make sure what's listed below is the last one above. Since we have
a bogus (but useful) 0th entry above we don't have to add one below.
*/
#define MAX_DRIVER DRIVER_NRG
#define MAX_DEVICE_DRIVER DRIVER_WIN32
#define MIN_DEVICE_DRIVER DRIVER_BSDI
#define CDIO_MIN_DRIVER DRIVER_BSDI
#define CDIO_MIN_DEVICE_DRIVER CDIO_MIN_DRIVER
#define CDIO_MAX_DRIVER DRIVER_NRG
#define CDIO_MAX_DEVICE_DRIVER DRIVER_WIN32
typedef enum {
TRACK_FORMAT_AUDIO, /* Audio track, e.g. CD-DA */

View File

@@ -1,5 +1,5 @@
/*
$Id: cdio.c,v 1.20 2003/06/11 10:57:02 rocky Exp $
$Id: cdio.c,v 1.21 2003/06/22 22:41:29 rocky Exp $
Copyright (C) 2003 Rocky Bernstein <rocky@panix.com>
Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org>
@@ -35,7 +35,7 @@
#include <cdio/logging.h>
#include "cdio_private.h"
static const char _rcsid[] = "$Id: cdio.c,v 1.20 2003/06/11 10:57:02 rocky Exp $";
static const char _rcsid[] = "$Id: cdio.c,v 1.21 2003/06/22 22:41:29 rocky Exp $";
const char *track_format2str[6] =
@@ -46,7 +46,7 @@ const char *track_format2str[6] =
/* The below array gives of the drivers that are currently available for
on a particular host. */
CdIo_driver_t CdIo_driver[MAX_DRIVER] = { {0} };
CdIo_driver_t CdIo_driver[CDIO_MAX_DRIVER] = { {0} };
/* The last valid entry of Cdio_driver.
-1 or (CDIO_DRIVER_UNINIT) means uninitialzed.
@@ -66,7 +66,7 @@ cdio_have_false(void)
/* The below array gives all drivers that can possibly appear.
on a particular host. */
CdIo_driver_t CdIo_all_drivers[MAX_DRIVER+1] = {
CdIo_driver_t CdIo_all_drivers[CDIO_MAX_DRIVER+1] = {
{DRIVER_UNKNOWN,
0,
"Unknown",
@@ -203,7 +203,7 @@ cdio_get_default_device (const CdIo *obj)
if (obj == NULL) {
driver_id_t driver_id;
/* Scan for driver */
for (driver_id=DRIVER_UNKNOWN; driver_id<=MAX_DRIVER; driver_id++) {
for (driver_id=DRIVER_UNKNOWN; driver_id<=CDIO_MAX_DRIVER; driver_id++) {
if ( (*CdIo_all_drivers[driver_id].have_driver)() &&
*CdIo_all_drivers[driver_id].get_default_device ) {
return (*CdIo_all_drivers[driver_id].get_default_device)();
@@ -415,7 +415,7 @@ cdio_init(void)
return false;
}
for (driver_id=DRIVER_UNKNOWN; driver_id<=MAX_DRIVER; driver_id++) {
for (driver_id=DRIVER_UNKNOWN; driver_id<=CDIO_MAX_DRIVER; driver_id++) {
all_dp = &CdIo_all_drivers[driver_id];
if ((*CdIo_all_drivers[driver_id].have_driver)()) {
*dp++ = *all_dp;
@@ -626,7 +626,7 @@ cdio_open (const char *orig_source_name, driver_id_t driver_id)
switch (driver_id) {
case DRIVER_UNKNOWN:
{
CdIo *cdio=scan_for_driver(MIN_DEVICE_DRIVER, MAX_DEVICE_DRIVER,
CdIo *cdio=scan_for_driver(CDIO_MIN_DRIVER, CDIO_MAX_DRIVER,
source_name);
if (cdio != NULL && cdio_is_device(source_name, cdio->driver_id)) {
driver_id = cdio->driver_id;
@@ -702,7 +702,8 @@ cdio_open_cd (const char *source_name)
if (CdIo_last_driver == -1) cdio_init();
/* Scan for a driver. */
return scan_for_driver(MIN_DEVICE_DRIVER, MAX_DEVICE_DRIVER, source_name);
return scan_for_driver(CDIO_MIN_DEVICE_DRIVER, CDIO_MAX_DEVICE_DRIVER,
source_name);
}

View File

@@ -1,5 +1,5 @@
/*
$Id: cdio_private.h,v 1.10 2003/06/12 04:46:27 rocky Exp $
$Id: cdio_private.h,v 1.11 2003/06/22 22:41:29 rocky Exp $
Copyright (C) 2003 Rocky Bernstein <rocky@panix.com>
@@ -212,7 +212,7 @@ extern "C" {
/* The below array gives of the drivers that are currently available for
on a particular host. */
extern CdIo_driver_t CdIo_driver[MAX_DRIVER];
extern CdIo_driver_t CdIo_driver[CDIO_MAX_DRIVER];
/* The last valid entry of Cdio_driver. -1 means uninitialzed. -2
means some sort of error.
@@ -221,7 +221,7 @@ extern "C" {
/* The below array gives all drivers that can possibly appear.
on a particular host. */
extern CdIo_driver_t CdIo_all_drivers[MAX_DRIVER+1];
extern CdIo_driver_t CdIo_all_drivers[CDIO_MAX_DRIVER+1];
/*!
Bogus eject media when there is no ejectable media, e.g. a disk image

View File

@@ -1,5 +1,5 @@
/*
$Id: cd-info.c,v 1.13 2003/06/13 04:36:35 rocky Exp $
$Id: cd-info.c,v 1.14 2003/06/22 22:41:29 rocky Exp $
Copyright (C) 2003 Rocky Bernstein <rocky@panix.com>
Copyright (C) 1996,1997,1998 Gerd Knorr <kraxel@bytesex.org>
@@ -471,7 +471,7 @@ PARTICULAR PURPOSE.\n\
if (version_only) {
char *default_device;
for (driver_id=DRIVER_UNKNOWN+1; driver_id<=MAX_DRIVER; driver_id++) {
for (driver_id=DRIVER_UNKNOWN+1; driver_id<=CDIO_MAX_DRIVER; driver_id++) {
if (cdio_have_driver(driver_id)) {
printf("Have driver: %s\n", cdio_driver_describe(driver_id));
}