Commit Graph

14 Commits

Author SHA1 Message Date
rocky
320c9bd55f Patch from Burkhard Plaum:
1. In the function is_cdrom_linux(...) in the file lib/driver/gnu_linux.c,
   the CDROMREADTOCHDR ioctl gets called, which fails when the drive is
   empty. The CDROM_GET_CAPABILITY ioctl always succeeds for CDrom drives
   and fails for hard disks etc.

2. For some reason, at least my (GNU/Linux 2.6.10) Kernel fails to
   open empty drives, when only O_RDONLY is used. Changing the open flag to
   O_RDONLY|O_NONBLOCK, the call succeeds also for emtpy drives.
   By the way, the cdrom header file in the kernel says explicitely,
   that O_RDONLY|O_NONBLOCK should used whenever a cdrom is touched.

rocky: also made a change to eject to continue even if we can't get
the drive status -- which we can't with an empty CD-ROM drive.
2005-04-23 01:16:19 +00:00
rocky
53916b41bf Add read_data_blocks via cooked mode. Seems to work better than read_cd. 2005-03-01 00:40:39 +00:00
rocky
78a3f49868 Add routine for reading data independent of or mode1 and mode2 format.
Should help with ISO 9660 reading. Add generic MMC READ_CD routine.

Warning - even more breakage in some situations. (But there's promise
of an overall brighter future.)
2005-02-17 04:57:21 +00:00
rocky
9e2eaf7546 cdparanoia: add ability to disable byte swapping
configure.ac: remove AIX driver for now - it doesn't really work
remove some (but not all) of the valgrind errors in cd-text
Some stylistic things, doxygen comment improvements typos, etc.
2005-01-27 03:10:06 +00:00
rocky
688c30e66a Move some of the "generic" routines using MMC into SCSI-MMC. Think is a
little bit clearer and cleaner.
2005-01-21 02:59:32 +00:00
rocky
d6b930e6cc Add get_blocksize. There may be some breakage as I haven't tested all of the
various drivers yet.
2005-01-20 05:07:00 +00:00
rocky
bd333bc73f Move a set_speed and set_blocksize (via MMC)from driver-specific
places to generic.

Add _t to yet another type.
2005-01-20 01:00:52 +00:00
rocky
7796f6cce7 Try to regularize driver operation return codes via a new enumeation
return type. (I may regret this later as we return ioctl's int value
in some cases).

cdio.h: get/set_arg moved to device.
2005-01-19 09:23:24 +00:00
rocky
e5bdc956e9 Add interface for setting speed and blocksize. Reinstated it in
cd-paranoia libraries and command.

Some more variable convention regularizations.
2005-01-18 00:57:19 +00:00
rocky
f226947ec6 Break out track and disc routines. (Disc needs more work)
Add more convenience track routines.
Set access-mode for image routines to be the image drivers - for uniformity.
Some name regularization.
And we're in 2005 now.
2005-01-04 04:33:36 +00:00
rocky
6c20c2ee86 Add common routine for setting track flags. 2005-01-01 15:08:48 +00:00
rocky
74045586bd Start to fill in cdio_get_preemphasis, cdio_get_copy_permit, and
cdio_get_channels. Internals reworked a little for this.
2004-12-31 05:47:36 +00:00
rocky
c51a6ba67e Add cd-paranoia's track flag routines: copy-permitted, pre-emphasis, channels.
Updates to drivers to set this properly is still needed.
2004-12-30 11:13:49 +00:00
rocky
6c14d28918 BIG REORGANIZATION.
Reorganize directory structure for inclusion of cd-paranoia. Works for
GNU/Linux. Other OS's may be broken. Regression test output needs to
be adjusted too.

Move:
lib/driver (split off of lib)
lib/iso9660 (split off of lib)

Add from paranoia:
lib/cdda_interface
lib/paranoia
src/paranoia

Also made some small changes to capability indentification to show
more reading capabilties and show that.

cd-info now shows the total disc size.
2004-12-18 17:29:32 +00:00