From ecd5c28e480b202ba912db288f3ba7049e24a513 Mon Sep 17 00:00:00 2001
From: Thomas Schmitt
Date: Mon, 23 Apr 2007 15:43:51 +0000
Subject: [PATCH] Made number transition and activated development
documentation
---
libburn/trunk/Makefile.am | 2 +-
libburn/trunk/README | 2 +
libburn/trunk/cdrskin/README | 40 ++++++-------
libburn/trunk/cdrskin/cdrskin.c | 23 ++++----
libburn/trunk/cdrskin/cdrskin_eng.html | 69 +++++++++++------------
libburn/trunk/cdrskin/cdrskin_timestamp.h | 2 +-
libburn/trunk/cdrskin/compile_cdrskin.sh | 10 ++--
libburn/trunk/cdrskin/wiki_plain.txt | 2 +-
libburn/trunk/configure.ac | 4 +-
libburn/trunk/doc/comments | 2 +-
10 files changed, 79 insertions(+), 77 deletions(-)
diff --git a/libburn/trunk/Makefile.am b/libburn/trunk/Makefile.am
index 1cc89b67..95443831 100644
--- a/libburn/trunk/Makefile.am
+++ b/libburn/trunk/Makefile.am
@@ -103,7 +103,7 @@ test_structest_SOURCES = test/structest.c
## cdrskin construction site - ts A60816 - A70312
cdrskin_cdrskin_CPPFLAGS = -Ilibburn
-cdrskin_cdrskin_CFLAGS = -DCdrskin_libburn_0_3_5
+cdrskin_cdrskin_CFLAGS = -DCdrskin_libburn_0_3_7
cdrskin_cdrskin_LDADD = $(libburn_libburn_la_OBJECTS) $(THREAD_LIBS)
cdrskin_cdrskin_SOURCES = cdrskin/cdrskin.c cdrskin/cdrfifo.c cdrskin/cdrfifo.h cdrskin/cdrskin_timestamp.h
##
diff --git a/libburn/trunk/README b/libburn/trunk/README
index 44498c9b..72312d25 100644
--- a/libburn/trunk/README
+++ b/libburn/trunk/README
@@ -197,6 +197,8 @@ Project history as far as known to me:
DVD media. Code for double layer DVD+/-R is implemented but awaits a tester
yet.
+- 23th April 2000 version 0.3.6 follows the unanimous opinion of Linux kernel
+ people that one should not use /dev/sg on kernel 2.6.
------------------------------------------------------------------------------
diff --git a/libburn/trunk/cdrskin/README b/libburn/trunk/cdrskin/README
index fc3fd7fd..b252bbf9 100644
--- a/libburn/trunk/cdrskin/README
+++ b/libburn/trunk/cdrskin/README
@@ -26,12 +26,12 @@ following possible.
cdrskin. By Thomas Schmitt
Integrated sub project of libburnia.pykix.org but also published via:
http://scdbackup.sourceforge.net/cdrskin_eng.html
-http://scdbackup.sourceforge.net/cdrskin-0.3.5.tar.gz
+http://scdbackup.sourceforge.net/cdrskin-0.3.7.tar.gz
Copyright (C) 2006-2007 Thomas Schmitt
------------------------------------------------------------------------------
-On top of libburn there is implemented cdrskin 0.3.5, a limited cdrecord
+On top of libburn there is implemented cdrskin 0.3.7, a limited cdrecord
compatibility wrapper which allows to use some libburn features from
the command line.
Interested users of cdrecord are invited to participate in the development
@@ -59,16 +59,16 @@ systems, including 64 bit systems. (Further reports are welcome.)
Compilation, First Glimpse, Installation
-Obtain cdrskin-0.3.5.tar.gz, take it to a directory of your choice and do:
+Obtain cdrskin-0.3.7.tar.gz, take it to a directory of your choice and do:
- tar xzf cdrskin-0.3.5.tar.gz
- cd cdrskin-0.3.5
+ tar xzf cdrskin-0.3.7.tar.gz
+ cd cdrskin-0.3.7
Or obtain a libburnia.pykix.org SVN snapshot,
go into the toplevel directory of the snapshot (e.g. cd libburn_pykix ),
and execute the autotools script ./bootstrap . Use autools version >= 1.7 .
-Within that toplevel directory of either cdrskin-0.3.5 or libburn then execute:
+Within that toplevel directory of either cdrskin-0.3.7 or libburn then execute:
./configure
make
@@ -126,16 +126,16 @@ The superuser should be able to see any usable drive and then set the
permissions as needed. If this hangs then there is a drive with
unexpected problems (locked, busy, broken, whatever). You might have to
guess the address of your (non-broken) burner by other means, then.
-On Linux 2.4 this would be some /dev/sgN and on 2.6. some /dev/hdX.
+On Linux 2.4 this would be some /dev/sgN and on 2.6. some /dev/srM or /dev/hdX.
The output of cdrskin --devices might look like
- 0 dev='/dev/sg0' rwrwr- : '_NEC' 'DVD_RW ND-4570A'
- 1 dev='/dev/sg1' rwrw-- : 'HL-DT-ST' 'DVDRAM GSA-4082B'
+ 0 dev='/dev/sr0' rwrwr- : '_NEC' 'DVD_RW ND-4570A'
+ 1 dev='/dev/sr1' rwrw-- : 'HL-DT-ST' 'DVDRAM GSA-4082B'
So full and insecure enabling of both for everybody would look like
- chmod a+rw /dev/sg0 /dev/sg1
+ chmod a+rw /dev/sr0 /dev/sr1
I strongly discourage to run cdrskin with setuid root or via sudo !
It is not checked for the necessary degree of hacker safety.
@@ -152,7 +152,7 @@ Get an overview of cdrecord style addresses of available devices
cdrskin --devices
Adresses reported with dev=ATA need prefix "ATA:". Address examples:
- dev=0,1,0 dev=ATA:1,0,0 dev=/dev/sg1 dev=/dev/hdc
+ dev=0,1,0 dev=ATA:1,0,0 dev=/dev/sg1 dev=/dev/hdc dev=/dev/sr0
See also "Drive Addressing" below.
Obtain some info about the drive
@@ -210,7 +210,7 @@ cdrskin -scanbus (and hopefully as listed with cdrecord -scanbus) :
or a device file address as listed by --devices with an accessible drive :
- export SCDBACKUP_SCSI_ADR="/dev/sg1"
+ export SCDBACKUP_SCSI_ADR="/dev/sr1"
Set usage of cdrskin with appropriate options rather than cdrecord :
@@ -272,8 +272,8 @@ the meaning of the components. A cdrecord-style address for cdrskin
can be interpreted in two different modes.
Standard mode tries to be compatible to original cdrecord. This should be true
-with (emulated) SCSI where the /dev/sgN with is looked up with matching
-scsibus,target,lun as given by the operating system.
+with (emulated) SCSI where the device file /dev/s[rg]N with is looked up with
+matching scsibus,target,lun as given by the operating system.
With dev=ATA: or dev=ATAPI: the translation to /dev/hdX is purely literal
but matches the cdrecord addresses on all systems tested so far:
X = 'a' + 2 * scsibus + target
@@ -293,8 +293,8 @@ Component "scsibus" indicates the translation method. Defined busses are:
1 associated to device file /dev/sgN , target chooses N
2 associated to device file /dev/hdX , target 0='a', 1='b' ..., 25='z'
-So "1,1,0" is /dev/sg1, "2,3,0" is /dev/hdd, "0,2,0" is libburn drive #2 at
-some unspecified device file.
+So "1,1,0" is /dev/sg1 (resp. its /dev/sr*), "2,3,0" is /dev/hdd,
+"0,2,0" is libburn drive #2 at some unspecified device file.
This scheme shall help to keep cdrecord-style addresses stable and exchangeable
between users without excluding drives with unexpected device addresses.
The numbering on bus 0 is prone to arbitrary changes caused by changes in
@@ -314,12 +314,12 @@ Old frontends which do not know dev=ATA or dev=ATAPI and which do ask their
To direct any remaining stubborn callers to the appropriate drives, cdrskin
allows to define device address aliases. Like
- cdrskin dev_translation=+1,0,0+/dev/sg1 \
- dev_translation=+ATA:1,0,0+/dev/sg1 \
+ cdrskin dev_translation=+1,0,0+/dev/sr1 \
+ dev_translation=+ATA:1,0,0+/dev/sr1 \
dev_translation=-"cd+dvd"-0,1,0 \
...
Any of the addresses dev=1,0,0, dev=ATA:1,0,0, dev=cd+dvd will be mapped to
-/dev/sg1 resp. to 0,1,0.
+/dev/sr1 resp. to 0,1,0.
The first character after "dev_translation=" defines the character which
separates the two parts of the translation pair. (Above: "+" and "-".)
@@ -331,7 +331,7 @@ and to make them default in menu
A suitable setting for "cdrecord" in menu
Settings:Configure K3b...:Programs:User Parameters
would then probably be
- -v dev_translation=+1,0,0+/dev/sg1
+ -v dev_translation=+1,0,0+/dev/sr1
You will learn from button "Show Debugging Output" after a failed burn run
what cdrecord command was used with what address "dev=...". This address "..."
will be the right one to replace "1,0,0" in above example.
diff --git a/libburn/trunk/cdrskin/cdrskin.c b/libburn/trunk/cdrskin/cdrskin.c
index fa256c77..527d3fb9 100644
--- a/libburn/trunk/cdrskin/cdrskin.c
+++ b/libburn/trunk/cdrskin/cdrskin.c
@@ -86,7 +86,7 @@ or
/** The official program version */
#ifndef Cdrskin_prog_versioN
-#define Cdrskin_prog_versioN "0.3.5"
+#define Cdrskin_prog_versioN "0.3.7"
#endif
/** The source code release timestamp */
@@ -119,25 +119,24 @@ or
#endif /* Cdrskin_libburn_cvs_A60220_tS */
-#ifdef Cdrskin_libburn_0_3_4
-#define Cdrskin_libburn_versioN "0.3.4"
+#ifdef Cdrskin_libburn_0_3_6
+#define Cdrskin_libburn_versioN "0.3.6"
#define Cdrskin_libburn_from_pykix_svN 1
-#endif /* Cdrskin_libburn_0_3_4 */
+#endif /* Cdrskin_libburn_0_3_6 */
-#ifdef Cdrskin_libburn_0_3_5
-#define Cdrskin_libburn_versioN "0.3.5"
+#ifdef Cdrskin_libburn_0_3_7
+#define Cdrskin_libburn_versioN "0.3.7"
#define Cdrskin_libburn_from_pykix_svN 1
/* Place novelty switch macros here.
Move them down to Cdrskin_libburn_from_pykix_svN on version leap
*/
-#define Cdrskin_libburn_preset_device_familY 1
-#define Cdrskin_libburn_has_track_set_sizE 1
+/* - no novelty switches currently - */
-#endif /* Cdrskin_libburn_0_3_5 */
+#endif /* Cdrskin_libburn_0_3_7 */
#ifndef Cdrskin_libburn_versioN
-#define Cdrskin_libburn_versioN "0.3.4"
+#define Cdrskin_libburn_versioN "0.3.6"
#define Cdrskin_libburn_from_pykix_svN 1
#endif
@@ -190,6 +189,10 @@ or
#define Cdrskin_libburn_has_allow_untested_profileS 1
#define Cdrskin_libburn_has_set_forcE 1
+/* 0.3.6 */
+#define Cdrskin_libburn_preset_device_familY 1
+#define Cdrskin_libburn_has_track_set_sizE 1
+
#ifdef Cdrskin_new_api_tesT
/* put macros under test caveat here */
diff --git a/libburn/trunk/cdrskin/cdrskin_eng.html b/libburn/trunk/cdrskin/cdrskin_eng.html
index f2f279e1..21b4ebd5 100644
--- a/libburn/trunk/cdrskin/cdrskin_eng.html
+++ b/libburn/trunk/cdrskin/cdrskin_eng.html
@@ -56,9 +56,9 @@ and to MMC-5 for DVD).
GPL software included:
-- libburn-0.3.4
+- libburn-0.3.6
- (by Derek Foreman, Ben Jansens, and team of libburnia.pykix.org)
-- transfers data to CD
+- transfers data to CD and DVD
@@ -98,7 +98,7 @@ wishes as well as on the development of libburn.
# cdrskin -scanbus
# cdrskin dev=ATA -scanbus
# cdrskin --devices
-Being superuser avoids permission problems with /dev/sgN resp. /dev/hdX .
+Being superuser avoids permission problems with /dev/srN resp. /dev/hdX .
Ordinary users should then get granted rw access to the /dev files
as listed by option --devices.
@@ -178,8 +178,8 @@ man cdrecord
- Download as source code (see README):
-- cdrskin-0.3.4.pl00.tar.gz
-(590 KB).
+
- cdrskin-0.3.6.pl00.tar.gz
+(605 KB).
-
The "stable" cdrskin tarballs are source code identical with "stable"
@@ -189,14 +189,14 @@ cdrskin is part of libburn - full libburn is provided with cdrskin releases.
-
- Download as single x86 binaries (untar and move to /usr/bin/cdrskin):
--
-cdrskin_0.3.4.pl00-x86-suse9_0.tar.gz, (85 KB),
+
-
+cdrskin_0.3.6.pl00-x86-suse9_0.tar.gz, (90 KB),
- runs on SuSE 9.0 (2.4.21) , RIP-14.4 (2.6.14) ,
Gentoo (2.6.15 x86_64 Athlon).
--
-cdrskin_0.3.4.pl00-x86-suse9_0-static.tar.gz, (285 KB), -static compiled,
+
-
+cdrskin_0.3.6.pl00-x86-suse9_0-static.tar.gz, (290 KB), -static compiled,
- runs on SuSE 7.2 (2.4.4), and on the systems above.
@@ -223,17 +223,16 @@ cdrskin_0.3.4.pl00-x86-suse9_0-static.tar.gz, (285 KB), -static compiled,
-Enhancements towards previous stable version cdrskin-0.3.2:
+Enhancements towards previous stable version cdrskin-0.3.4:
-- Multi-session burning to DVD+R
-- New option --tell_media_space tells the maximum size for the next burn
-- New option assert_write_lba=0 prevents inadverted writing to appendable
-media
-- Bug fix: Multi-track runs with fifo could stall in rare cases
+- Use of /dev/srN rather than /dev/sgN on Linux >= 2.6
+- Option drive_scsi_dev_family=sr|scd|sg to select explicitely
+- Option -isosize is supported now
+- DVD+R now get finalized (if not -multi is given)