Please have a look at the German open Source Center BerliOS at www.berlios.de
BerliOS will continue to support free hosting of cryptography projects even
when US laws change and don't allow to host cryptography projects in the USA.
Also look at sourcewell.berlios.de, the first Open Source announcement service
that itself is implemented as Open Source project.

***************** Important news ****************************

For the 'Slottable Source Plugin Module' SSPM Features read README.SSPM

***************** Please Test *********************************

NEW features of cdrtools-2.01:


All:

-	Support for the ELF format in BSDi 4.x

-	Allow floating point printing on OS/2. This has been possible
	since 11/2001 but OS/2 has been forgotten.

-	Correct OS/2 ranlib handling

-	New architecture 9000-831-hp

-	Include +DAportable in HP-UX cc options

-	README.hpux enhanced to include hints on how to compile 64 bit
	binaries.

-	Support for NetBSD on PPC (macppc-netbsd-cc)

-	portable getdomainname() replacement now supports to get the domainname
	from /etc/resolv.conf. This allows usage even on OS/2

-	Typo in DEFAULTS files fixed

-	New generic target for symlinks

-	New file rename.c for portability part of libschily

-	Better Next STep support:

	-	Some workarounds for broken unistd.h

	-	-lkvm removed from Next Step config.

	-	waitdefs.h fixed for very old BSD based systems (~ 1980)
		like Next STep

	-	strdup() moved into portability part of libschily

	-	fixed typo in fctldefs.h R_RDONLY -> O_RDONLY

	-	New file ttydefs.h includes portability phrases from ved and bsh.

	-	Added an autoconf test for buggy termios.h in Next Step.
		Next STep provides fully functional termios.h but tcgetattt(), ...
		is missing in libc.

	-	Test for clock_t changed to deal with a bug in Next STep.
		Next Step illegally needs sys/time.h for clock_t


-	Make recently introduced symlink install use relative symlinks instead
	of absolute symlinks.

-	Change autoconf/statdefs.h to support nanosecond support for SCO
	UnixWare and FreeBSD

-	Call conf/mkdep-sco.sh via sh to be independent from 'x' bit.

-	libschily/rename.c fixed for SCO Openserver fo avoid warning
	for redefinition of MAXPATHNAME

-	libschily/usleep.c fixed to avoid SCO Openserver warning about
	non matchin prototype in system include files

-	Better Portability for SCO UnixWare

	-	New platforms i486, i586, Pentium III, Pentium Pro

	-	Let strdefs.h also include strings.h for strcasecmp()

	-	Support for missing struct sockaddr_storage

	-	Support for broken wait3() (returns wrong timings)

	-	Changed broken portability Prototype support in libfile
		to use 'makefiles / prototype.h' based system

	-	Changed fileopen() and filereopen() to avoid fdopen()
		provlems (does not accept mode string that does not
		match fd flags)

-	Catch the case where somebody tries to compile on Solaris with
	/usr/ucb in PATH before /opt/SUNWspro/bin and when calling 'cc'
	results in:
		/usr/ucb/cc:  language optional software package not installed

-	Trying to make the source get accepted by 'cstyle'.

-	Changes in the general topic 'Stack Scanning' and the software signal
	system handlecond()/raisecond() that make the software signal system
	now usable on all platforms.

-	Trying to support DOS with the DJGPP compilation environment
	Thanks to Alex Kopylov <reanimatolog@yandex.ru> for the first version
	of the port and further helping.

	Note that in order to compile cdrtools on DOS/DJGPP you need smake-1.2a20 or newer.
	GNU make does not seem to work for a DOS compilation.

-	New File README.msdos

-	New RULES for DOS/DJGPP

-	Make some vars in align_test.c static because Mac OS X creates unneeded
	name space pollution.

-	DJGPP has no SIGBUS, use #ifdef in avoffset.c and align_test.c

-	Several changes with casting Null pointer constants to Null Pointers
	if they are used as parameters in var arg lists (see below).

-	New gethostname() fallback emulation using uname(2).

-	Better rename(2) emulation for Platforms that don't have rename().

-	niread()/niwrite()/nixread()/nixwrite() in libschily now resets errno
	to the old value in case EINTR did occur.

-	README.msdos has been corrected according to a hint from Alex Kopylov

-	New macros to platform independently set up integers in little endian
	format. This is needed to e.g. write PC disk labels from big endian
	platforms.

-	Rules extended to support volume management libs

-	The install-sh script not takes care about UNIX variants like SCO UnixWare
	and SCO OpenServer that allow to give away files via chown.

	If this works and /tmp has the sticky bit set, the root test was unable
	to remove the test files later. For this reason, now a subdirectory
	in /tmp is used.


-	Support for the special .PHONY: target ---> needs smake-1.2a21 or newer

	This helps to deal with files like INSTALL operating systems
	like Win32 and Mac OS that don't honor file name case and prevents
	the file named INSTALL to get into trouble with 'make install'


-	'make install' now works on operating systems that require a '.exe'
	suffix for executable binaries

-	Updated the file README.ATAPI

	Updated information for Linux, SCO-OpenServer, SCO-UnixWare, Win32
	and DOS

-	mconfig.h now supports make COPTX=-DNO_FORK & COPTX=-DNO_VFORK

-	snprintf() from libschily now correctly follows POSIX.1-2001 for maxlength == 0

-	Workaround for a bug in the C-compiler from SCO-OpenServer. It
	is not very probable that this causes problems with cdrecord. The 
	function getfp() did not return the correct Frame Pointer when called
	as first function in another function as the compiler sdoes set up the
	new stack frame after getfp() has been called.

-	New function filemopen(char *name, char *omode, mode_t mode) with additional
	mode_t parameter.

-	update recent getargs() version from repository. This has been forgotten.
	
-	Add a workaround for a SCO OpenServer C-compiler bug.
	The bug causes the first function in a function to be called
	before the new stack frame has been established and did cause
	scanning the stack frame to fail.

-	Make snprintf() POSIX compliant.

-	Many typos in the READMEs fixed, thanks to a hint from Stefano Allrath

-	New global method to handle PATH environment delimiters (":" on
	POSIX systems and ";" on DOS).

-	New README.msdos reflecting new features of smake-1.2a23 on DOS/DJGPP

-	Some minor enhancements to the makefilesystem

-	Some minor changes for better compilation in SGI IRIX

-	Trying to start adding support for Win32/Mingw32

-	New global #define NEED_O_BINARY to make using setmode() easier

-	New autoconf test for struct stat.st_fstype

-	New autoconf test for fnmatch()

-	New autoconf test for blksize_t/blkcnt_t

-	libscgily/stdio/io.h renamed to schilyio.h to avoid conflicts with
	DOS.

-	Added a Note to README.linux:

	NOTE for all Linux 2.5.x versions and all Linux versions before 2.6.8:
 
		Linux did ship with defective kernel include files starting
		with 2.5.x. These defective kernel include files did prevent
		compilation. If you have problems compiling software and see
		error messages related to include/scsi/scsi.h & include/scsi/sg.h
		either upgrade to Linux-2.6.8 or newer or remove /usr/src/linux

-	Support added to the makefile system that allows compilation on
	AMD x86_64 using non automake aware make programs like GNU make.
	Note that smake ftp://ftp.berlios.de/pub/smake/alpha/ is able to compile
	things even on unknown platforms as it includes auto make features.


Libparanoia (Ported by Jörg Schilling, originated by Monty xiphmont@mit.edu):

-	Included a bug fix from the libparanoia Author.
	Correctly allocate some arrays. Note: on 32 Bit machines, this patch does
	not result in a different binary but the code is now really correct.

-	New indentation is better conforming to 'cstyle'

-	Fixed a bug in libparanoia that prevented the statistics to show up
	the number of 'skips' (the number of exhausted read retries) when
	SKIP verification has been turned off.

-	modified to avoid GCCs shadowed variable warnings.

-	Try to use page aligned transfer buffers if possible.

-	Avoid buffer size problems wit non page aligned transfers on FreeBSD.

-	Avoid freeing pointers that are not from malloc() by copying the data
	to a second allocated chunk of free()able space. This has been a bug
	introduced while trying to handle buffer size problems with non page aligned
	transfers on FreeBSD.


Libedc (Optimized by Jörg Schilling, originated by Heiko Eißfeldt heiko@hexco.de):


Libscg:

-	Reordered and restructured scsi-remote.c code to allow compilation on OS/2
	and hopefully other OS like BeOS

-	First attempt to support QNX.
	Note that the sourcecode comes from QNX and it looks as if it 
	is buggy for commands that cause SCSI commands that result in 
	a Check Condition status. From looking at the source, the stack
	gets overwritten in this case.

-	SCSI adaptation layer for SCO UnixWare rewritten to support
	multiple opens and to better follow the libscg interface standard.

-	Second attempt to support QNX.
	Make it compile

-	Check kernel level error return codes on SCO-UnixWare

-	Starting to support SCSI reset on SCO-UnixWare

-	Extensions to libscg related include files to support DVD+RW formatting

-	Make libscg work on SCO UnixWare if an application like cdrecord
	has been installed suid root.

	Before, the called administration programs did not work if euid!=uid

-	Fixed a problem with possible garbage in the SCSI error string.
	Thanks to Stefano Di Paola <stefano.dipaola1@tin.it> for reporting.

-	Fixed another printf buffer vulnerability in scsi-remote.c

-	New version of scsi-amigaos.c from Thomas Langer

-	Added a work around for a Solaris 9 x86 bug:
	DKIOCINFO returns a max DMA size of 256 kB but only 68 kB will work.
	Check max DMA size for a IDE disk to get a correct value....

	For more information read the updated file README.solaris and the
	new files README.solaris-x86-ata-DMA and README.solaris-x86-ATAPI-DMA

-	Changed scsi-os2.c to allow 'cdrecord -scanbus' to find targets with
	target ids > 7.

-	Librscg now uses correct casting to a Null Pointer for execlp() as
	NULL is a Null Pointer Constant but no Null Pointer. This could
	make problems with some 64 bit architectures.

-	New driver scsi-dos.c acting as 16 bit DOS ASPI interface
	Thanks to Alex Kopylov <reanimatolog@yandex.ru> for the first version
	of the driver.

	Check his Web Page: http://bootcd.narod.ru/index_e.htm
	it contains precompiled DOS binaries.

-	The driver scsi-dos.c has already been verified with 'scgcheck'.

-	scsi-os2.c and scsi-wnt.c now correctly return 0 from scg_send() if
	the target is not valid.

-	scsi-wnt.c does now support multiple SCSI opens.

-	scsi-wnt.c does now correctly return SCG_NO_ERROR in case a SCSI command
	returned CHECK CONDITION.

-	scg__open() now prints a warning if it has not compiled with the results
	from a certified autoconf environment.

-	Introduced a fix to avoid the need for a #define ident prod_ident
	for SCSI Inquiry data. This #define did cause problems with the
	latest Sun Studio 8, C compilers

-	First attempt to support running cdrecord while the volume management is
	active.

-	Increased version number to 0.8

-	First attempt to work around the problems for suid programs introduced by
	Sun with Solaris 9. Programs that like to issue a USCSI ioctl() need to be
	root or get EPERM. Cdrecord did does up root privilleges eraly to avoid
	security problems.

	libscg now selectively runs the USCSI ioctl() as root if the program is installed
	suid root.

-	Fixed a bug in scsi-mac-iokit.c in scgo_havebus() that caused pxupgrade not
	to work on MacOS X.

-	First attempt to support the SPTI Ioctl interface on Windows NT.
	see also http://www.ste-home.de/cdrtools-spti/
	Thanks to Richard Stemmer, Jay A. Key and thomas podkanski

	This allows to use cdrtools on NT without the need to install ASPI in case
	you are administrator when yu run a program.

	Please note that the use of SPTI is default. If you like to force using
	ASPI, use dev=ASPI:b,t,l or dev=ASPI (in the -scanbus case).
	If you like to force STPI, use dev=SPTI:b,t,l or dev=SPTI.

	Currently, the interface does not yet fully matches the scg interface standard.

-	Try to support the half hearted and badly designed /dev/hd* interface
	from Linux-2.6 in a more usable way.

	The only reason for adding this kind of support is that the Linux kernel
	hackers reject to fix the known DMA bugs in the already existing SCSI
	transport interfaces in the Linux kernel. Using /dev/hd* is unfortunately
	the only way to get DMA with sector size being 2352, 2448 or similar.

	Use cdrecord -scanbus dev=ATA and
	cdrecord dev=ATA:1,0,0

	Note: The Bus mapping function inside the kernel for this interface is
	a dummy. For this reason, we need to do the mapping ourselves.
	Busnumber is ("/dev/hd*"[7] - 'a') / 2
	Target    is ("/dev/hd*"[7] - 'a') % 2

	Also note that creating this interface in the Linux kernel was a waste of
	time. It did need a lot of effort to be created. Instead of first adding
	a new interface with a new broken DMA implementation and later fixing
	the DMA bugs, it would have been better to just fix the DMA bugs
	in ide-scsi.c

	Adding SCSI transport to something like /dev/hd* on an OS that includes
	a generic SCSI transport driver is disregarding SCSI protocol layering.
	A clean way to implement ATAPI on Linux would be to rather introduce a
	SCSI hostadaptor driver that sends the SCSI commands via the
	ATA hardware.

	Linux users should think about buying a CD writer for Linus Torvalds.
	Maybe this could help to get better SCSI support in the Linux. Currently
	Linus doesn't know anything about the CD-writing problems on Linux and
	his contributions to CD-writing related issues in discussions are just
	guesses that are not related to own experiences and understanding for
	the matter :-(

	It seems that the Linux way of dealing with bugs is to implement a new
	incompatible interface instead of fixing the known bugs from 
	old interfaces :-(

-	Allow cdrecord -scanbus dev=ASPI and cdrecord -scanbus dev=SPTI to work
	on win32.

-	Correct a bug in the Win32 version analyze function that is needed to
	use the correct SPTI interface. Unfortunately, the interface did
	change with a NT-4.0 service pack. It is unclear whether the currently
	used interface type is correct for all possible NT-4.0 variants.

-	For Win32, default to STPI only if on NT-5.x as there is a bug in some
	UDMA implementations that causes blue screens.

-	The Mac OS X SCSI low level transport now roughly meets the interface standard.
	For this reason, the file scsi-mac-iokit.c now is marked with Author "schily"

-	Indented according to the cstyle standard.

-	For win32, dev=ASPI:1,0 and dev=SPTI:1,0 work again

-	Trying to add a workaround for the Linux problem with USB where the
	kernel issues a request sense even when there was only a DMA underrun
	and the drive replies as expected with no-sense. Our problem in this
	case is that we needed to ad another workaround because sometimes
	Linux clears the status byte and we did assume a CHECK CONDITION in case
	sense[0] was != 0.

-	Enhanced max # of SCSI busses to 256 for the Linux sg driver.
	This was needed because of the (compared to Solaris) suboptimal
	way of dealing with instance numbers on Linuux.

	While Solaris keeps a data base with instance numbers, disconnecting and
	reconnecting a USB drive results in the USB device getting the same 
	SCSI address as before.

	As Linux does not have such a data base, disconnecting/reconnecting
	a USB device has the unfortunate side effect of assigning a new and
	different SCSI address with every USB connect. This also creates problems
	when software likes to manage access rights to devices for non-root
	users.

-	Win32 SPTI interface now also supports controllers with more than one
	SCSI Bus. Thanks to Richard Stemmer

-	Fixed a bug in the Win32 SPTI/ASPI interface introduced with 2.01a28
	that caused core dumps because it did try to access data behind the end of the
	sense data array in the ASPI cmd structure.

-	Scan /dev/hda../dev/hdz instead of /dev/hda../dev/hdt for dev=ATAPI on Linux.

-	Trying to write a better warning message for the dev=ATAPI: interface
	on Linux (the related kernel interface is unmaintained and does
	not support DMA at all).

-	Fixed a bug in Win-NT Version string handling in scsi-wnt.c
	Thanks to Alex Kopylov <reanimatolog@yandex.ru>
	This caused that libscg did not properly recognize NT-4.x with service pack 4
	to be equivalent to NT-5.0 (Win2k).

-	Trying to avoid using the WinNT-SPTI interface for NT-4.0

-	Fixed a security bug in scsi-remote.c (the RSCSI client).


Rscsi:

-	Support for IPv6

-	Workaround for missing struct sockaddr_storage on SCO UnixWare

-	Security update. Forbid to write arbitrary debug files, only allow
	a debug file name that has been configured in /etc/default/rscsi.
	Writing arbitrary files with a siud root program could be used to become
	root on a local machine if you are already logged into that local machine.

-	README.rscsi typo's corrected.


Cdrecord:

-	Use correct set_mode_params() return value in deflt_writemodes_mmc()

-	Correct a debug printing to go to stderr instead of stdout.

-	Workaround for broken Firmware for LG (Lucky Goldstar) drives.
	These drives have been unable to write Audio in TAO mode because
	they have an illegal audio pause length default.

	Thanks to a hint from: Mark Vytlacil <markvyt@comcast.net>

-	Man page now correctly describes the data formats used with -xa1 & -xa2

-	Use Prototypes for functions with enum parameter in fifo.c to avoid
	warnings on SCO UnixWare

-	Trying to catch SIGHUP to avoid hung recorders after people
	close X windows by accident (This in most cases happens because
	some newer GUIs try try copy bad ideas from Microsoft like the 'x'
	button on the top bar in the window.

-	Trying to print hints if the SCSI error core looks like a buffer
	underrun occurred.

-	First (still mostly empty) driver for the Matsushita CW-7501

-	First TAO writing support for the Matsushita CW-7501

-	New option -setdropts to allow cdrecord to set driver specific
	parameters and exit.

-	Added support to disable/enable the Plextor PowerRec feature.
	Use driveropts=forcespeed
	Be very careful as this will cause in badly readable disks.
	The only senseful reason to use this feature is to run tests in
	-dummy mode to check whether the system would be able to record
	fast enough and to later buy High-Speed Media.
	Note that documentation for the related SCSI command is not
	oficially available and thus the information has been "guessed".

-	Added support to enable/disable the Plextor SpeedRead feature.
	Use driveropts=speedread
	to allow the drive to read CDs faster than 40x.
	Be very careful as this may cause the media to break in the drive
	while reading, resulting in a destroyed media and drive!
	Note that documentation for the related SCSI command is not
	oficially available and thus the information has been "guessed".

-	Added support to enable/disable the Plextor SingleSession feature.
	Use driveropts=singlesession
	This allows to read defective (illegal) media with extremely
	non-standard additional TOC entries. You need to enable Single Session
	mode before you insert the defective disk!
	Note that documentation for the related SCSI command is not
	oficially available and thus the information has been "guessed".

-	Added support to enable/disable the Plextor Hide CD-R feature.
	Use driveropts=hidecdr
	This allows to make CD-Rs look like CD-ROMs and applications believe
	that the media in the drive is not a CD-R.
	Note that documentation for the related SCSI command is not
	oficially available and thus the information has been "guessed".

-	Added reading out "real" Burn-Proof counter for Plextor drives.
	Note that documentation for the related SCSI command is not
	oficially available and thus the information has been "guessed".

-	Try to do a more correct job when doing Buffer Underrun estimation
	counts.

-	Make the explicit Buffer underrun error checking work for
	Plextor drives too.

-	Fixed the command line parser for driveropts= parameters.
	Before the fix, driveropts=noburnfree,hidecdr would result
	in assuming: driveropts=noburnfree,nohidecdr

-	Now also supporting SAO/DAO write mode for the CW-7501

-	New option -lock (similar to -load) that loads the media but leaves
	the drive in locked status.

-	New driver interface to allow SAO recording for the CW-7501
	Simplified: "dummy" and "multi" Parameter information has been
	moved into the track structure.

-	Removed the internal implication that -packet is a TAO write mode.
	Please test! It may be that this did introduce bugs.

-	Try to avoid ANSI C arithmetic conformance change warnings from 
	SCO C-compiler by introducing proper casting.

-	Driver interface restructured to support aborting SAO recording
	with the Sony CDU-948

-	"Driver flags" printing corrected

-	Better behavior with CADDY drives and -load option

-	Fixed a bug that caused cdrecord not to abort if Tracks with unknown
	length are present in RAW write mode.

-	Print extended Power Rec Speed information for Plextor drives.

-	CUE Sheet handling generalized to allow to implement SAO writing
	for more drives.

-	Start supporting the Sony CDU-948 in SAO mode. Currently not yet working:

	-	Multi-session

	-	MCN/ISRC

-	Grace time handling restructured. The grate time waiting is now done 
	even before the forced blanking and it is made sure that the waiting
	is done only once.

-	Several changes in the open source part are visible as a result of the
	new DVD+RW / DVD+R support.

-	cdrecord-ProDVD now includes first DVD+RW and DVD+R support.
	Check ftp://ftp.berlios.de/pub/cdrecord/ProDVD/ 
	on Thursday 24.4.2002 for the first binaries

-	Do not try to lower the possible number of open files in raise_fdlim()
	anymore.

-	Check return code of driver's init function.

-	Better error messages from main write loop.

-	Write a hint that a user may have used a "preformatted" CD-RW if 
	read_next_writable_address fails for the "invisible" track
	and tell him to run cdrecord blank=....

-	Fixed a bug that caused cdrecord to prevent a 3rd session on a
	multi session disk. This bug was introduced with the driver
	restructuring a few releases before.

-	Better driver text strings for the driver IDs in the CD MMC drivers.

-	Move Plextor PowerRec speed info completely to the statistics _past_
	the recording activities.

-	Allow more nonstandard Cue sheets to be accepted by the Sony CDU-924
	and CDU-948.

-	Implement MMC-3 DVD+ Drive/Media recognition to avoid that cdrecord starts
	to treat a DVD+ as a CD-R because the DVD+ drive identifies as CD-R/RW + DVD-ROM
	with "no DVD media installed" from a MMC-2 viewpoint.

-	Added a note to the cdrecord man page how to use mkisofs
	to allow cdrecord to knoe about track sizes in SAO or RAW mode.

-	Fixed a multi session bug that has been introduced with the DVD+R/RW 
	restructuring with cdrecord-2.01a11. This bug caused cdrecord to be unable
	to start a track from a sector number != 0 in TAO mode.

-	Fixed a problem with cdrecord -msinfo introduced with the the DVD+R/RW
	restructuring with cdrecord-2.01a11. The unwanted verbose printing has been
	removed with this version.

-	New option -xa to create CD-ROM XA mode 2 form 1 sectors with 2048 bytes
	of user data

-	New option -xamix to create mixed CD-ROM XA mode 2 form 1/2 sectors 
	with 2332 bytes of user supplied data.

-	Restructured sector types to make them usable:

	-mode2         CD-ROM data mode 2	 - 2336 bytes
	-xa            CD-ROM XA mode 2 form 1	 - 2048 bytes
	-xa1           CD-ROM XA mode 2 form 1	 - 2056 bytes
	-xa2           CD-ROM XA mode 2 form 2	 - 2324 bytes
	-xamix         CD-ROM XA mode 2 form 1/2 - 2332 bytes

	To write conforming CD-ROM XA multisession disks use cdrecord -multi -xa1
	together with mkisofs -XA -sectype xa1

-	-cdi is now implemented how it should be: as a flat to change
	the TOC type of a CD and not as a sector mode.

-	Track parsing completely restructured to allow new features.
	One of the features is to write audio CDs from a pipe,
	other features will follow.

-	Cdrecord now resets euid to the uid of the caller (if called suid root)
	before it opens data files.

-	Fixed a bug that caused cdrecord to insert two grace wait periods
	if a disk was blanked and rewritten in one call.

-	Allow cdrecord to copy audio CDs from a pipe from cdda2wav
	without using an intermediate file on disk.

       To copy an audio CD  from  a  pipe  (without  intermediate
       files), first run

           cdda2wav dev=1,0 -vall cddb=0 -info-only

       and then run

           cdda2wav dev=1,0 -no-infofile -B -Oraw - | \
           cdrecord dev=2,0 -v -dao -audio -useinfo -text *.inf

       This  will get all information (including track size info)
       from the *.inf files and then read  the  audio  data  from
       stdin.

       If  you  like to write from stdin, make sure that cdrecord
       is called with a large enough fifo size  (e.g.   fs=128m),
       reduce  the write speed to a value below the read speed of
       the source drive (e.g.  speed=12), and  switch  the  burn-
       free   option   for  the  recording  drive  on  by  adding
       driveropts=burnfree.

-	New option -abort allows you to send a write abort sequence to a drive.
	This may help if other software did leave the drive in an unusable
	condition.

-	New 'xio' module allows to open a file virtually more than once to
	support CDRWIN CUE sheets in cdrecord.

-	Run Plextor Speedinfo SCSI command in silent mode as old Plextor drives
	do not support this command.

-	Workaround for a Plextor (Premium only???) firmware bug that may result
	in a B0 pointer A5:A5:A5 instead of FF:FF:FF.

	This made it impossible to blank a freshly written CD-RW witout reloading
	the media. Now cdrecord does not check the disk size anymore if the number
	of tracks to be written is 0.

-	First CDRWIN CUE sheet support.

	Cdrecord currently supports what is in the CUE sheet description in
	the CDRWIN documentation (with a few exceptions). Note that the
	examples in the rest of the CDRWIN man page are mostly illegal 
	if you compare them against the CDRWIN CUE sheet syntax documentation.

	These exceptions are currently in effect:

	-	Only one FILE Line per CUE sheet file (This is compliant to the
		CUE shet format documentation although the examples show CUE
		files with more than one FILE line). NOTE that the CUE syntax has
		been ill defined so that it would not make sense to e.g. use
		more than one FILE line for audio CDs.

	-	The AIFF File type is not implemented (because I have no documentation
		for this audio file format).

	-	The MP3 File type is not yet implemented.

	-	The CDG data type keyword will not yet work

	-	The CDI data type keyword will not yet work

	-	Only a sector size of 2048 will work with MODE1

	-	Sectors with sector size 2336 will not yet work

	-	POSTGAP will not yet work.

	Note that the CDRWIN CUE documentation is bad and it is unclear how
	formless (non XA) MODE 2 sectors should be made.
	
	CDI is not a sector/track property but a disk property.

	The File type BINARY vs. MOTOROLA is unclear.

	To use the cue sheet feature call:

		cdrecord dev=.... -v -dao cuefile=xx.cue

	The main reason for implementing CUE sheet support was to allow to
	write VCD/SVCD with cdrecord. It has currently tested with the
	test SVCD from ftp://ftp.vcdimager.org/pub/vcdimager/examples/test_svcd/

	Cdrecord should allow to write audio type CUE sheet based CDs also.


-	Modified the notes close to the Copyright printing code in cdrecord.c
	to make clear that this note is not a deviation from the GPL but just
	a memorandum on how to understand the GPL.

-	Fixed a bug in file descriptor handling that caused cdrecord not
	to continue at offset xxx in the file after a new track did start.

-	Added a forgotten feature in the CUE Sheet parser so it will now know that
	WAVE files use swapped (intel) byte order.

-	Restructured the main program of cdrecord so that cdrecord overall
	behaves similar to before when cue sheets are used.
	e.g. cdrecord -eject cuefile=xxx did only eject the disk instead of
	first writing and then ejecting.

-	Added some hints to the man page to make speed= handling clearer

-	Fixed some typos in the man page

-	Added the -format option to the man page

-	CD-Text handling reworked:

	CD-Text from textfile= or from CUE CDTEXTFILE wins over CD-Text
	from *.inf files and over CUE SONGRITER.

-	CD-Text from CUE file (either CDTEXTFILE or SONGRITER) now needs
	-text in addition in order to be not ignored.

-	Fixed a bug in the recognition for cdda2wav | cdrecord *.inf
	that caused a message
		WARNING: Stdin is connected to a terminal.
	if not writing from a pipe.

-	Small fix in auinfo.c to again allow compilation on K&R systems

-	Typo fixes for the cdrecord man page

-	The clone write code is now part of the GPL'd source
	Note that this part of the code is now more than 2 years old but previously
	has been excluded from the publically visible part of the source.

	To understand how to use the clone mode read README.clone

-	New option ts= to set the SCSI transfer buffer size

-	Man page corrected to correctly mention current format for /etc/default/cdrecord

-	call setmode(fileno, O_BINARY) for DOS/DJGPP also

-	Better check if we use the FIFO to avoid core dumps with too small FIFO sizes.

-	Switch off FIFO of fifo size is < 2 * SCSI transferbuffer

-	Fixed a small bug in the man page (..sp instead of .sp). Thanks to Eric Raymond
	for reporting!

-	Work around for a problem in the Plextor 708 firmware (at least 1.01..1.02)
	that caused cdrecord to be unable to recognize that a DVD medium is present instead
	of a CD medium.

-	Changed the GPL clarifications text in a way so Debian people still
	agree with me that cdrecord is free software. The clarifications are
	needed in order to tell people/companies (like Mr. Rosenkranzer,
	RedHat & SuSE) who create broken branches from cdrecord that they are
	not legally publishing their branches because they violate the
	GPL § 2 Paragraph c) and GPL Preamble Section 6).

	If would be better if the named persons/companies would rather stay
	in contact to the Authors, discuss things and contribute to the
	community instead of creating useless/broken changes and in case
	of SuSE Linux even creating hacks that introduce security risks.

	Note that now, RedHat Linux (enterprise server) or the SuSE Linux
	are even more expensive than e.g. Solaris x86, see:

	http://www.osnews.com/story.php?news_id=5416&page=5
	Small Correction to this web page: Solaris x86 is free again for
	personal use.

-	Extended the man page to make it more clear that all CD/DVD-writers
	ever made use only SCSI commands.

-	Another change to the man page according to a hint from
	Eric Raimond in order to get better compliance for troff -> "*ml"
	converters.

-	Allow people who cannot provide an e-mail address or who
	don't like to support their modifications to modify cdrecord

-	Some CUE sheet modifications in drv_mmc.c now made it into
	the official SCCS history file.

-	Several fixes to avoid the need for a #define ident prod_ident
	for SCSI Inquiry data. This #define did cause problems with the
	latest Sun Studio 8, C compilers

-	Hack to work around a POSIX real time priotity design bug that
	causes us to become root again on e.g. Linux in order to be able
	to lower the priority of the FIFO background process.

-	Better documentation and EXAMPLE for -setdropts driveropts=
	in the man page.

-	print a help message to direct the user to use -raw96r in case
	the drive does not accept the cue sheet with -dao.

-	Mark all drives that cannot be accessed because the volume management is
	running and no media is in the drive with '?' instead of '*', so they
	may be distinct from non existing drives.

	Read README.volmgt for more information

-	Now works again suid root on Solaris 9

-	Fixed a bug introduced in 2.01alpha by a source consolidation.
	cdrecord -toc did not work anymore for CD-ROM readers

-	Updated README.audio

-	Make the CUE Sheet handling search for a file name from a FILE statement
	also in the directory where the CUE sheet is found (in case there is no
	slash (/) in the file name from 'FILE').

-	Avoid coredumps when cdrecord is called with -xd and there is no known
	driver for the current drive.

-	New option -tao is now needed if you like to write in TAO mode.
	Cdrecord now does no longer writes if no write mode has been specified.

-	New option -sao as alias for -dao. As the official name for the write mode
	is SAO, -sao is more correct than -dao.

-	Fixes for minor typos in cdrecord.1

-	Fixed a bug with pad=xxx and pad sizes > 2 GB.

-	Trying to fix a bug introduced lately with the check for specified
	write mode options. As a result, only TAO mode writing did work.

-	Better man page & online help for the ts= option.

-	Fixed a typo in the man page.

-	Better error messages when audio size is < 300 Sectors or needs padding.
	Thanks to a hint from Stefano Allrath

-	cdrecord -scanbus now checks for 256 SCSI busses

-	cdrecord -scanbus now checks for 256 SCSI busses
	This has already been announced for 2.01a28 but forgotten to include

-	Some Man Page Fixes trying to avoid coding problems for non 7-bit ACSII

-	Several typos in the man page fixed

-	Man page enhanced to include a better documentation for the driver=
	option.

-	Several other enhancements to the man page

-	modified to avoid GCCs shadowed variable warnings.	

-	Cdrecord now tolerates the OPC "error code" "Power calibration area almost full"
	to not a real error.

-	Fix for a bug that caused cdrecord to be unable
	to reload the media for some drives.
	The fix helps with the following problem:

	Trying to clear drive status.
	cdrecord: Drive needs to reload the media to return to proper status.
	cdrecord: Cannot load media with this drive!
	cdrecord: Try to load media by hand.
	cdrecord: Cannot load media.

-	man page enhanced

-	Print the "Make sure you are root" only if root privilleges are missing.

-	Avoid warning for not working nice() on DOS
	Thanks to Alex Kopylov <reanimatolog@yandex.ru>

-	-clone option documented in the man page. This has been forgotten before.

-	Several typos in the man page fixed

-	Do not try to call nice() on DOS/DJGPP

-	cdrecord now tries to check the DMA speed if the drive supports to read the
	drive buffer. If the DMA speed is not sufficient, then cdrecord requires 
	that burnfree is activated. If the environment variable "CDR_FORCESPEED"
	is set or -force has been specified, then cdrecord does not try to enforce
	that the available DMA speed is 2x the expected write speed.

-	Make some symbols static to avoid problem with a badly designed libc on
	OpenBSD that violates POSIX by pulluting the namespace with symbols
	like 'pl'.


Cdda2wav (By Heiko Eißfeldt heiko@hexco.de):

-	fixed typo in cdda2ogg.1

-	Do not use uname() but gethostname() for portability.

-	include unistd.h for abs() 

-	old Toshiba's usable again

-	Multisession Non-CD-Extra disks now work again
	Now also a lot more broken disks are readable again.

-	not using ioctl in signalhandler any more

-	trying to support sound on Win32

-	Several changes (mostly OS/2 related) for more ask Heiko

-	bugfix add cdda2ogg manpage,and script and makefile install target 
 
-	support BeOS shared memory and FIFO 
 
-	support soundcard output under QNX 
 
-	windows-users! Cygwin has fixed the bug introduced with 1.3.18. Please  
	upgrade to the new 1.5.3-1 release. 

-	call setmode(fileno, O_BINARY) for DOS/DJGPP also

-	Now using the major() macro for some Linux duties.

	WARNING to creators of Linux distributions:

	It has _always_ been wrong to compile software only once for different 
	kernel versions (e.g. for compile Linux-2.4 and later install a
	2.2 kernel on the so created system).

	Now that Linux-2.6 introduces incompatible changes to kernel/user
	interfaces, the resulting binaries will not work correctly anymore.

-	Made CD-Text handling reentrant to overcome a problem triggered by XCDRoast

-	Now works again suid root on Solaris 9

-	Fix for a Bug that prevents paranoia statistics from being printed
	because the paranoia statistics for the forked version has not been
	inside the shared memory.

-	New paranoia sub option paraopts=overlap=xx

	This is mainly a bug fix for cdda2wav. Cdda2wav previously _always_ did
	completely deactivate the dynamic overlapping from libparanoia. Instead,
	it did set the overlapping to the statical value 0.

	If you omit paraopts=overlap=xx, cdda2wav will now use dynamic overlapping
	with -paranoia.

	If you like the old behavior, use: paraopts=overlap=0

-	New paranoia sub option paraopts=minoverlap=xx
	This sets the minimum dynamic overlap

-	New paranoia sub option paraopts=maxoverlap=xx
	This sets the maximum dynamic overlap

-	Better paranoia statistics output

-	Fixed a Problem with some Linux sound card drivers that caused cdda2wav to be
	unable to output to the soundcard.

-	cdda2wav now checks /etc/default/cdrecord and accepts dev=plextor as
	cdrecord does.

-	Trying to add verbose output that estimates the read quality with -paranoia

-	Trying to convert non-ascii characters in user & host names into '_'
	for better cddb compatibility.

-	Some Man Page Fixes trying to avoid coding problems for non 7-bit ACSII
	
-	New option -scanbus

-	Removed some "historical junk" that caused cdda2wav to define a
	compile time default input device. This conflicts with cdda2wav -scanbus
	and is superfluous and contra productive since cdda2wav reads 
	/etc/default/cdrecord

-	cdda2wav has signed bitfields of size 1 :-(

-	Fixed a typo in cdda2ogg.1

-	Bug fix from Heiko for index lists that contain offset values of -1 in the middle

-	Trying to handle interface setup more carefully if SCSI Generic is not
	used.

-	Better Debug Code in setuid.c

-	Trying to fix a bug in UID handling on FreeBSD
	Thanks to the bugs reports and help from Fabian Keil <fk@fabiankeil.de>

-	Try to workaround a bug in GCC that caused incorrect warnings
	for "strict-aliasing rules"	


Readcd:

-	First (hacky) implementation of a way to meter the read speed
	as a function of the disk location modeled after a idea from
	Markus Plail <cdrecord@gitteundmarkus.de>

	Call:
		readcd dev=b,t,l meshpoints=1000 > outfile
	then
		gnuplot
		gnuplot> plot "outfile" w l

	or
		
		gnuplot> replot "outfile" w l

	if you like to overlay graphs.

-	New option fs=# (same syntax as with cdrecord fs=#) to allow the
	user to set the maximum transfer size even in non-interactive mode.
	This may help is the OS (as it has been the case for Solaris 9 x86)
	reports a wrong maximum DMA size or there is a bug in libscg.

-	Speed printing with meshpoints=# now is based on 1000 bytes == 1 kb
	as documented in the SCSI standard.

-	Stop reading if the OS replies with a DMA residual count != 0

-	New option -factor will cause the read speed values to be printed
	be based on the single speed of the current medium. This is only
	possible if readcd is able to find out the current medium type.

-	The clone read code is now part of the GPL'd source
	Note that this part of the code is now more than 2 years old but previously
	has been excluded from the publically visible part of the source.

	Clone writing has been designed to allow to copy complex structured media
	like e.g. SVCDs without the need to first do a sector by sector analysis
	on the source media.

	To understand how to use the clone mode read README.clone

-	New option ts= to set the SCSI transfer buffer size

-	call setmode(fileno, O_BINARY) for DOS/DJGPP also

-	Now works again suid root on Solaris 9

-	Better man page & online help for the ts= option.

-	New option -scanbus

-	Fixed a bug with -scanbus (did not work correctly if /etc/default/cdrecord
	exists).

-	Added an allocated list of defective sectors, that is printed to the end of
	a read operation.


Scgcheck:

-	Trying to check if multiple scg_open() requests result in
	usable interfaces.

-	Send more outout to stdout instead of stderr.

-	More correct test for max sense count.

-	Eject CD _after_ asking for it.

-	Abor further DMA residual tests if a basic DMA residual test fails.

-	Second open test enhanced.

-	A small fix to prevent a core dump caused by a problem on Mac OS X.


Scgskeleton:

-	New Skeleton program as sample and template for programs that like to 
	use libscg.

	This template has been included to help people like the Author of the
	BTC firmware flash program to write simple portable applications that
	send arbitrary SCSI commands to arbitrary drives.


Mkisofs (By Jörg Schilling and James Pearson j.pearson@ge.ucl.ac.uk):

-	First attempt to support ISO-9660:1999 (Version 2) via -iso-level 4
	This allows 207 chars in filenames if Rock Ridge is not used
	ans 197 207 chars in filenames if Rock Ridge is used.

	Note that this as an absolutely nontrivial change. Problems may 
	even occur when not using -iso-level 4. Please test and report
	problems.

	It is not clear whether mkisofs should characters in the range
	outside 7-Bit ASCII. Currently, mkisofs allows any 7-Bit ASCII
	character except '\0' and '/'.

-	Second attempt to support ISO-9660:1999 (Version 2) via -iso-level 4
	This allows 207 chars in filenames if Rock Ridge is not used
	and 197 207 chars in filenames if Rock Ridge is used.

	In version 2.01a01 the extended VD used the wrong signature 1.
	This has been corrected.

-	isoinfo is now able to recognize ISO-9660:1999 

-	Enhanced the filename length for graft points to 2x PATH_MAX

-	Abort with a warning message if the total size of the image data
	created by mkisofs would differ from the size printed by -print-size

-	udf.c indented according to hints from the program 'cstyle'

-	UDF now uses the same 'now' timestamp as the ISO-9660 part of the FS.

-	New Stream File feature and new options:

	-stream-file-name
	-stream-media-size

	This feature has been implemented after an idea from M.H. Voase.
	Mkisofs had to be heavily modified to allow this feature.

	A typical usage would look like this:

	star -c . | mkisofs -stream-media-size 333000 | cdrecord dev=b,t,l -dao tsize=333000s -

	The maximum size of the tar archive is 332800 sectors.
	Note that only plain vanilla ISO-9660 is possible in this mode.


-	The final padding that is added by default is now 150 sectors
	which is the required size of the track post gap on a CD.

-	Inter partition padding is now only chosen to make the next partition
	start on a sector number that is a multiple of 16.

-	isoinfo now also prints root directory extent # in debug mode

-	First step to allow mkisofs to support Kodak Photo CD and
	Kodak Picture CD format:

	Try to correctly support associated files in multi-session mode.


-	Diagnostic programs modified to use ttydefs.h and to have better
	portability for the built in "stty" features.

-	isoinfo now prints the ISO-9660 directory flags.

-	Make mkhybrid a symlink to mkisofs instead of a hardlink


-	getopt.h/fnmatch.h  changed to use 'makefiles / prototype.h' based 
	system instead FSD junk system

-	Removed FSF junk from getopt.c that either created problems
	with SCO Unixware or did not compile on AIX

-	Prototype for DVDOpenFile() to avoid warning on SCO UnixWare
	related to enum function parameter

-	Fixed a bug with split symbolic links found by Klaus Kopper
	with the new debug messages introduced with mkisofs-2.01a04

-	Changed #if __STDC__ to #ifdef PROTOTYPES for better portability

-	Now using character code translation for 8 Bit characters that
	are used with -iso-level 4 (ISO-9660-1999).

-	Fixed a typo in the on-line Usage information for isoinfo

-	New options -XA & -xa

	-XA	Generate XA iso-directory attributes with original owner
		and mode information.

	-xa	Generate XA iso-directory attributes with rationalized owner
		and mode information (user/group == 0).

	In the first phase of the implementation you need to specify -R in
	addition.

-	Try to support files >= 2 GB.
	Note that mkisofs is not yet written cleanly so there may be problems
	if files >= are used. In such a case, please report.

-	Create XA "CD-XA001" signature in PVD with -XA or -xa

	In the first phase of the implementation you need to specify -R in
	addition to -XA or -xa or no XA signatures will be written.

-	Removed a debug statement that has been introduced to implement
	support for filees >= 2GB.

-	This version of mkisofs allows to create sectors with 2056 bytes if the
	option -XA or -xa has been used together with -sectype xa1.
	This is 2048 bytes + sub-header.

-	-apple does no longer include -R or -r.
	If you like to use -apple, you need to use -R/-r or -XA/-xa in addition.

-	New option -sectype SECTYPE / -s SECTYPE

	Possible parameters are:

	data	2048 bytes per sector - the old and current default

	xa1	2056 bytes per sector - this is what you need for a conforming
		CD-ROM XA multi session CD. Use -sectype xa1 together with -XA

-	Fixed a bug in the Rock Ridge symlink handling with Continuation records
	triggered by '/../' filename components.
	Thanks to jmmikkel@bbn.com (Joanne M Mikkelson)
	for the fix.

-	man page corrected

-	Moved Eltorito PVD before ISO-9660:1999 enhanced PCD to allow
	bootable CD with ISO-9660:1999

-	-sort file handling fixed: mkisofs now looks for SPACE/TAB whatever
	comes last (as documented in the man page).

-	Better error message in case of a stat(2) buffer overflow (too long
	filename). This release now prints the file name that caused the problem.

-	call setmode(fileno, O_BINARY) for DOS/DJGPP also

-	Added a NOTE regarding the SILO boot program for Linux sparc to the
	man page.

-	Added support for Solaris x86 boot CDs.
	This includes the following new options:

	-	-sunx86-boot	to create a fdisk & SVr4 partition table

	-	-sunx86-label	to set the "disk label" name for the
				SVr4 partition table.

-	New file README.sunx86boot

-	The file README.sunx86boot has been reworked to make it more correct
	and contain less typos.

-	Fixed a Rock-Ridge length handling bug in update_nlink()/increment_nlink() (tree.c)
	that may have caused an endless loop.

-	"Total extents including sparc boot" Message is now correctly
	"Total extents including %s boot" sparc/sunx86

-	mkisofs now checks /etc/default/cdrecord and allows e.g.
	"mkisofs -C 0,1234 dev=plextor ...." as cdrecord does

-	Unclean message ....extents written (%d Mb) changed to
	....extents written (%d MB) to avoid "MegaBit" confusion.

-	Minor change for old UNIX versions like SCO OpenServer to get
	smooth compilation on system where mode_t is a short.

-	Fix for a bug in RockRidge name handling for long file names
	that need to be split into more than one sector.
	Thanks to Patrick Ohly <Patrick.Ohly@gmx.de>

-	Trying to fix a bug in the multi session time stamp comparing
	functions. CE records have not been handled correctly here.

-	Support for PowerPC CHRP Boot added, thanks to
	"Leigh Brown" <leigh@solinno.co.uk>

-	Support for -uid/-gid for UDF Filesystems added

-	isoinfo now is able to list ElTorito Boot information with -d

-	isoinfo now correctly shows long RR filenames from CE Extension records.

-	Fixed a bug in the PowerPC CHRP Boot, thanks to
	"Leigh Brown" <leigh@solinno.co.uk>

-	New options -root & -old-root from Patrick Ohly
	This allows mkisofs to be used for "incremental backups" where
	each backup is put into a separate directory tree on the CD.

-	Default to System ID "UNIX" for unknown platforms instead of
	uning LINUX.

-	Support System ID "SCO-OPENSERVER" and "SCO-UNIXWARE"

-	Better error message when a user tries to create a multi session image
	out of a multi-volume image.

-	When doing malloc(), include Null Byte at end of TRANS_TBL data to
	avoid memory size conflicts.

-	Fix for a core dump caused by a double free() when doing:
	echo bar >/tmp/bar
	echo foo/bar=/tmp/bar > /tmp/pathlist
	env LD_PRELOAD=libumem.so.1 UMEM_DEBUG=default UMEM_LOGGING=transaction \
	    mkisofs -hfs -graft-points -o /tmp/foo.raw -path-list=/tmp/pathlist

	Thanks to Jürgen Keil jk@tools.de

-	Fixed a typo in write.c "Padbock" -> "Padblock"
	Thanks to  Richard Dawe <rich@phekda.gotadsl.co.uk>

-	Trying to fix a problem with comparing relaxed ISO-9660 file names
	that contain a ';' which normally is a separator for the ISO-9660
	version number. The fix is in hash.c, please test!

-	Avoid GCCs shadowed variable warnings.

-	Added a comment is in hope to prevent silly people from
	e.g. SuSE (who did not yet learn C but believe that
	they need to patch other peoples code) from changing a
	valid cast into an illegal lhs cast expression.
	The cast in the unodified version of write.c is the correct way to
	handle the problem.

	It would save a lot of time if people from companies like SuSE
	would remember the Open Source software development model and
	contact the Author for help rather than introducing proprietary
	changes that result in worse and incompatible software variants.

	The way, companies like SuSE deal with Open Source software just
	proves that Jonathan Schwartz from Sun is not wrong when he calls
	SuSE and RedHat proprietary software companies. Users from Open Source
	software expect that companies like SuSE and RedHat are in close
	contact with the software developers but they unfortunately are not.
	They prefer to create proprietary variants that are usually much
	worse than the original software. The only explanation I have for this
	behaviour is that SuSE likes to deviate from RedHat and RedHat likes
	to deviate from SuSE in hope to get customer retention this way.
	While the last 150 years did prove that this proprietary method to
	tie up customers works for a limited time, it did always fail after
	some time.

-	Removed verbose output for Eltorito boot method when called with -quiet

-	The Eltorito boot catalog and the Eltorito boot files are now by default
	sorted to the beginning of the filesystem image as sime BIOS versions don't
	boot from locations beyond 512 MB.

-	All programs from mkisofs/diag now support libscg so you may now 
	use e.g. isoinfo to list end extract from CDs directly on platforms 
	that do not support a usual driver interface (like on Win32).

-	Set default SYSID to "DOS" for DJGPP
	Thanks to Alex Kopylov <reanimatolog@yandex.ru>

-	devdump isodebug isodump isoinfo isovfy
	now include libscg and allow to use SCSI devices as input

-	devdump isodebug isodump isoinfo isovfy
	now implement a new option dev= to force to use the SCSI 
	interface from libscg.

-	isoinfo now correctly sets the filemode of stdout to O_BINARY
	on DOS alike Platforms like Win32 & DJGPP
	This affects the '-x pathname' option
	Thanks to Alex Kopylov <reanimatolog@yandex.ru>

-	The options -H/-L/-P from mkisofs have been marked "outdated"
	as they are reserved by POSIX.1-2001 for other purposes.

	Mkisofs-2.02 will start to implement the POSIX.1-2001 semantics for
	these options.

-	The max. length for the strings in the Primary volume descriptor
	is now also documented in the options section of the man page.

-	Speed up by 30% in the case that a directory contains many (> 5000)
	pathological file name entries (that _all_ do not differ in 8.3).

-	A minor speed up in devdump & isodump was made by no longer calling
	strlen() in the end condition of a for loop (this still was old
	code from Eric).

-	fixed a bug with -dvd-video
	The bug caused mkisofs not to find the IFO file when VIDEO_TS was not
	the first entry in the unsorted source directory.
	Thanks to a hint from Johan Borg borg@morth.org

-	The option -volset-size does no longer accept numbers > 1

	This change was needed because Eric Youngdale did completely
	missunderstand the ISO-9660 standard with respect to Volume Set
	Sizes.

	A Volume Set is not a numbered set of CDs but a set of CDs that
	contains a coherent directory tree that would not fit on a single
	volume.

-	Fixed a typo in the mkisofs man page

-	man page enhanced to make clear that the options
	-no-split-symlink-fields & -no-split-symlink-components
	are most likely not needed as they have been introduced by Eric Youngdale
	when serious bugs have been in mkisofs.

-	Changelog updated

-	Try to workaround a bug in GCC that caused incorrect warnings
	for "strict-aliasing rules"	

TODO:
	-	read Joliet filenames with multi-session if no TRANS.TBL
		or RR is present. I am looking for a volunteer for this task!

		Note that this can never be 100% correct as there is no relation
		between the names on the master (UNIX) filesystem, the ISO-9660
		names and the Joliet names. Only the Rock Ridge names are
		untranslated with respect to the original files on the
		master (UNIX) filesystem.

	-	add libecc/edc for CDI and similar.


CYGWIN NT-4.0 NOTES:

To compile on Cygwin32, get Cygwin and install it.
For more information read README.win32

The files are located on:

ftp://ftp.berlios.de/pub/cdrecord/alpha ...

NOTE:	These tar archives are 100% POSIX compatible. GNU tar may get some
	minor trouble. If you like a 100% POSIX compliant tar, get star from
	ftp://ftp.berlios.de/pub/star/

WARNING: Do not use 'winzip' to extract the tar file!
	Winzip cannot extract symbolic links correctly.

Joerg
