Compare commits
20 Commits
ZeroFiveZe
...
ZeroFiveTw
Author | SHA1 | Date | |
---|---|---|---|
ead6d3d7b7 | |||
a6846a779a | |||
87c0be3dbf | |||
46cb414f29 | |||
576af9ea89 | |||
214d6e6741 | |||
0c655d438e | |||
f68f875a6c | |||
13c327e370 | |||
3f42df50a3 | |||
9e78c78e43 | |||
99e2df2208 | |||
04c6625024 | |||
f68ee78352 | |||
b76161a698 | |||
2eec5bf40a | |||
2d11c253e3 | |||
a2a778c72f | |||
78fc4007ba | |||
27ba46494d |
17
Makefile.am
17
Makefile.am
@ -92,9 +92,10 @@ buildstamped: buildstamp
|
||||
|
||||
|
||||
|
||||
## Build test applications
|
||||
## Build companion applications
|
||||
noinst_PROGRAMS = \
|
||||
test/compare_file
|
||||
test/compare_file \
|
||||
xorriso/make_xorriso_1
|
||||
|
||||
# A program to compare two files in mirrored trees in mounted filesystems
|
||||
# To compare tree /media/dvd and /original/dir :
|
||||
@ -105,6 +106,12 @@ test_compare_file_CFLAGS =
|
||||
test_compare_file_LDADD =
|
||||
test_compare_file_SOURCES = test/compare_file.c
|
||||
|
||||
# Specialized converter from xorriso/xorriso.texi to xorriso/xorriso.1
|
||||
#
|
||||
xorriso_make_xorriso_1_CPPFLAGS =
|
||||
xorriso_make_xorriso_1_CFLAGS =
|
||||
xorriso_make_xorriso_1_LDADD =
|
||||
xorriso_make_xorriso_1_SOURCES = xorriso/make_xorriso_1.c
|
||||
|
||||
## ========================================================================= ##
|
||||
|
||||
@ -159,6 +166,8 @@ nodist_pkgconfig_DATA = \
|
||||
|
||||
man_MANS = xorriso/xorriso.1
|
||||
|
||||
info_TEXINFOS = xorriso/xorriso.texi
|
||||
|
||||
EXTRA_DIST = \
|
||||
libisoburn-1.pc.in \
|
||||
version.h.in \
|
||||
@ -172,6 +181,8 @@ EXTRA_DIST = \
|
||||
INSTALL \
|
||||
xorriso/changelog.txt \
|
||||
xorriso/xorriso_buildstamp_none.h \
|
||||
xorriso/README \
|
||||
xorriso/README_gnu_xorriso \
|
||||
xorriso/make_docs.sh \
|
||||
$(man_MANS)
|
||||
|
||||
|
||||
|
12
README
12
README
@ -4,7 +4,7 @@
|
||||
libisoburn and xorriso. By Vreixo Formoso <metalpain2002@yahoo.es>
|
||||
and Thomas Schmitt <scdbackup@gmx.net>
|
||||
Integrated sub project of libburnia-project.org.
|
||||
http://files.libburnia-project.org/releases/libisoburn-0.4.8.pl00.tar.gz
|
||||
http://files.libburnia-project.org/releases/libisoburn-0.5.2.pl00.tar.gz
|
||||
Copyright (C) 2006-2010 Vreixo Formoso, Thomas Schmitt.
|
||||
Provided under GPL version 2 or later.
|
||||
------------------------------------------------------------------------------
|
||||
@ -31,17 +31,17 @@ By using this software you agree to the disclaimer at the end of this text:
|
||||
|
||||
Compilation, First Glimpse, Installation
|
||||
|
||||
Dynamic library and compile time header requirements for libisoburn-0.4.8 :
|
||||
Dynamic library and compile time header requirements for libisoburn-0.5.2 :
|
||||
- libburn.so.4 , version libburn-0.7.6 or higher
|
||||
- libisofs.so.6 , version libisofs-0.6.26 or higher
|
||||
- libisofs.so.6 , version libisofs-0.6.28 or higher
|
||||
libisoburn and xorriso will not start with libraries which are older than their
|
||||
headers seen at compile time.
|
||||
|
||||
Obtain libisoburn-0.4.8.pl00.tar.gz, take it to a directory of your choice
|
||||
Obtain libisoburn-0.5.2.pl00.tar.gz, take it to a directory of your choice
|
||||
and do:
|
||||
|
||||
tar xzf libisoburn-0.4.8.pl00.tar.gz
|
||||
cd libisoburn-0.4.8
|
||||
tar xzf libisoburn-0.5.2.pl00.tar.gz
|
||||
cd libisoburn-0.5.2
|
||||
|
||||
Within that directory execute:
|
||||
|
||||
|
20
configure.ac
20
configure.ac
@ -1,4 +1,4 @@
|
||||
AC_INIT([libisoburn], [0.4.9], [http://libburnia-project.org])
|
||||
AC_INIT([libisoburn], [0.5.2], [http://libburnia-project.org])
|
||||
AC_PREREQ([2.50])
|
||||
dnl AC_CONFIG_HEADER([config.h])
|
||||
|
||||
@ -22,8 +22,8 @@ dnl LT_CURREN, LT_AGE, LT_REVISION where SONAME becomes LT_CURRENT - LT_AGE
|
||||
dnl
|
||||
dnl These three are only copies to provide libtool with unused LT_RELEASE
|
||||
ISOBURN_MAJOR_VERSION=0
|
||||
ISOBURN_MINOR_VERSION=4
|
||||
ISOBURN_MICRO_VERSION=9
|
||||
ISOBURN_MINOR_VERSION=5
|
||||
ISOBURN_MICRO_VERSION=2
|
||||
|
||||
dnl ISOBURN_VERSION=$ISOBURN_MAJOR_VERSION.$ISOBURN_MINOR_VERSION.$ISOBURN_MICRO_VERSION
|
||||
|
||||
@ -36,16 +36,16 @@ dnl Libtool versioning
|
||||
dnl Generate libisoburn.so.1.x.y
|
||||
dnl SONAME will become LT_CURRENT - LT_AGE
|
||||
dnl
|
||||
dnl ts B00125
|
||||
dnl ### This is the release version 0.4.8 = libisoburn.so.1.37.0
|
||||
dnl This is the development version after above stable release
|
||||
dnl ts B00329
|
||||
dnl This is the release version 0.5.2 = libisoburn.so.1.41.0
|
||||
dnl ### This is the development version after above stable release
|
||||
dnl LT_CURRENT++, LT_AGE++ have not happened yet.
|
||||
dnl ### LT_CURRENT++, LT_AGE++ has happened meanwhile.
|
||||
dnl
|
||||
dnl SONAME = 38 - 37 = 1 . Library name = libisoburn.so.1.37.0
|
||||
dnl SONAME = 42 - 41 = 1 . Library name = libisoburn.so.1.41.0
|
||||
LT_RELEASE=$ISOBURN_MAJOR_VERSION.$ISOBURN_MINOR_VERSION
|
||||
LT_CURRENT=38
|
||||
LT_AGE=37
|
||||
LT_CURRENT=42
|
||||
LT_AGE=41
|
||||
LT_REVISION=0
|
||||
LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
|
||||
|
||||
@ -236,7 +236,7 @@ AC_CHECK_HEADER(libburn/libburn.h)
|
||||
AC_CHECK_HEADER(libisofs/libisofs.h)
|
||||
|
||||
dnl Check for proper library versions
|
||||
LIBBURN_REQUIRED=0.7.6
|
||||
LIBBURN_REQUIRED=0.7.8
|
||||
LIBISOFS_REQUIRED=0.6.28
|
||||
PKG_CHECK_MODULES(LIBBURN, libburn-1 >= $LIBBURN_REQUIRED)
|
||||
PKG_CHECK_MODULES(LIBISOFS, libisofs-1 >= $LIBISOFS_REQUIRED)
|
||||
|
@ -282,7 +282,9 @@ static int isoburn_welcome_media(struct isoburn **o, struct burn_drive *d,
|
||||
struct isoburn_toc_track **tracks;
|
||||
int num_sessions= 0, num_tracks= 0, track_count= 0, session_no= 0;
|
||||
char msg[80];
|
||||
enum burn_disc_status s;
|
||||
|
||||
s= burn_disc_get_status(d);
|
||||
profile_name[0]= 0;
|
||||
ret= burn_disc_get_profile(d, &profile, profile_name);
|
||||
if(ret<=0)
|
||||
@ -339,7 +341,7 @@ static int isoburn_welcome_media(struct isoburn **o, struct burn_drive *d,
|
||||
|
||||
/* >>> recognize unsuitable media (but allow read-only media) */;
|
||||
|
||||
if(readonly) {
|
||||
if(readonly && s != BURN_DISC_EMPTY) {
|
||||
(*o)->fabricated_disc_status= BURN_DISC_FULL;
|
||||
/* This might be overwriteable media in a -ROM drive.
|
||||
Pitfall:
|
||||
@ -1634,7 +1636,7 @@ int isoburn_drive_set_msgs_submit(struct burn_drive *d,
|
||||
int isoburn_set_msc1(struct burn_drive *d, int adr_mode, char *adr_value,
|
||||
int flag)
|
||||
{
|
||||
int ret, num_sessions, num_tracks, adr_num, i, j, total_tracks;
|
||||
int ret, num_sessions= 0, num_tracks, adr_num, i, j, total_tracks;
|
||||
int lba, best_lba, size, re_valid= 0, track_count= 0;
|
||||
time_t start_time= 0, last_pacifier= 0, now;
|
||||
char volid[33], msg[160];
|
||||
|
@ -225,7 +225,7 @@ void isoburn_version(int *major, int *minor, int *micro);
|
||||
*/
|
||||
#define isoburn_libburn_req_major 0
|
||||
#define isoburn_libburn_req_minor 7
|
||||
#define isoburn_libburn_req_micro 6
|
||||
#define isoburn_libburn_req_micro 8
|
||||
|
||||
|
||||
/** The minimum version of libisofs to be used with this version of libisoburn
|
||||
@ -260,8 +260,8 @@ int isoburn_libburn_req(int *major, int *minor, int *micro);
|
||||
@since 0.1.0
|
||||
*/
|
||||
#define isoburn_header_version_major 0
|
||||
#define isoburn_header_version_minor 4
|
||||
#define isoburn_header_version_micro 9
|
||||
#define isoburn_header_version_minor 5
|
||||
#define isoburn_header_version_micro 2
|
||||
/** Note:
|
||||
Above version numbers are also recorded in configure.ac because libtool
|
||||
wants them as parameters at build time.
|
||||
|
@ -4,7 +4,7 @@
|
||||
GNU xorriso. By Thomas Schmitt <scdbackup@gmx.net>
|
||||
Derived from and supported by libburnia-project.org, published via:
|
||||
http://www.gnu.org/software/xorriso/xorriso_eng.html
|
||||
http://www.gnu.org/software/xorriso/xorriso-0.4.9.tar.gz
|
||||
ftp://ftp.gnu.org/gnu/xorriso/xorriso-0.5.2.tar.gz
|
||||
Provided under GPL version 3 or later. No warranty.
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
@ -46,10 +46,10 @@ Optional at compile time are:
|
||||
If they were present at compile time, then the optional libraries have to
|
||||
be present at runtime, too.
|
||||
|
||||
Obtain xorriso-0.4.9.tar.gz, take it to a directory of your choice and do:
|
||||
Obtain xorriso-0.5.2.tar.gz, take it to a directory of your choice and do:
|
||||
|
||||
tar xzf xorriso-0.4.9.tar.gz
|
||||
cd xorriso-0.4.9
|
||||
tar xzf xorriso-0.5.2.tar.gz
|
||||
cd xorriso-0.5.2
|
||||
|
||||
Within that directory execute:
|
||||
|
||||
@ -71,22 +71,25 @@ or you may execute as superuser:
|
||||
make install
|
||||
|
||||
For general concepts, options and usage examples see
|
||||
info xorriso
|
||||
or
|
||||
man 1 xorriso
|
||||
|
||||
This man page is part of the tarball as
|
||||
The documents are part of the tarball as
|
||||
xorriso/xorriso.info
|
||||
xorriso/xorriso.1
|
||||
Original source text of both is
|
||||
xorriso/xorriso.texi
|
||||
You may get a first glimpse by
|
||||
info ./xorriso/xorriso.info
|
||||
man ./xorriso/xorriso.1
|
||||
|
||||
It gets installed with "make install" but may also be placed manually in the
|
||||
./man1 directory below one of the directories mentioned in environment
|
||||
variable $MANPATH.
|
||||
|
||||
The installation creates several alias links pointing to the xorriso binary:
|
||||
xorrisofs starts xorriso with -as mkisofs emulation already enabled
|
||||
xorrecord starts xorriso with -as cdrecord emulation already enabled
|
||||
osirrox starts with -osirrox image-to-disk copying already enabled
|
||||
|
||||
|
||||
If you want to avoid dependecy on libreadline although the libreadline
|
||||
development package is installed, then rather build xorriso by:
|
||||
./configure --prefix=/usr --disable-libreadline
|
||||
@ -280,9 +283,9 @@ and a matching dynamically linked xorriso binary.
|
||||
This binary is leaner but depends on properly installed libraries of suitable
|
||||
revision.
|
||||
|
||||
Dynamic library and compile time header requirements for libisoburn-0.4.8 :
|
||||
Dynamic library and compile time header requirements for libisoburn-0.5.2 :
|
||||
- libburn.so.4 , version libburn-0.7.6 or higher
|
||||
- libisofs.so.6 , version libisofs-0.6.26 or higher
|
||||
- libisofs.so.6 , version libisofs-0.6.28 or higher
|
||||
libisoburn and xorriso will not start with libraries which are older than their
|
||||
headers seen at compile time. So compile in the oldest possible installation
|
||||
setup unless you have reason to enforce a newer bug fix level.
|
||||
@ -335,7 +338,7 @@ Copyright (C) 2002-2006 Derek Foreman and Ben Jansens
|
||||
This text itself is
|
||||
Copyright (c) 2007 - 2010 Thomas Schmitt <scdbackup@gmx.net>
|
||||
and is freely distributable.
|
||||
This text shall only be modified in sync with the technical properties of
|
||||
xorriso. If you make use of the license to derive modified versions of xorriso
|
||||
It shall only be modified in sync with the technical properties of xorriso.
|
||||
If you make use of the license to derive modified versions of xorriso
|
||||
then you are entitled to modify this text under that same license.
|
||||
|
||||
|
@ -6871,14 +6871,351 @@ xorriso/xorriso_private.h
|
||||
test/compare_file.c
|
||||
Lifted ban to derive GPLv3, extended copyright range to 2010
|
||||
|
||||
25 Jan 2010 [] ([3044])
|
||||
25 Jan 2010 [3049] ([3044])
|
||||
xorriso/changelog.txt
|
||||
Documented changes and release timestamp
|
||||
|
||||
------------------------------------ cycle - xorriso-0.4.9 - 2010.01.25.142705
|
||||
|
||||
------------------------------------ cycle - xorriso-0.4.9 -
|
||||
------------------------------------ cycle - xorriso-0.4.9 -
|
||||
|
||||
25 Jan 2010 [3050]
|
||||
move -m Promoted branch to tag \
|
||||
http://svn.libburnia-project.org/libisoburn/branches/ZeroFourEight \
|
||||
http://svn.libburnia-project.org/libisoburn/tags/ZeroFourEight
|
||||
|
||||
27 Jan 2010 [3051]
|
||||
README
|
||||
Changed leftover text which disallowed GPLv3
|
||||
|
||||
04 Feb 2010 [3052]
|
||||
xorriso/xorriso.1
|
||||
Small corrections in xorriso man page
|
||||
|
||||
2010.02.04.082710 [3053]
|
||||
acinclude.m4
|
||||
configure.ac
|
||||
xorriso/configure_ac.txt
|
||||
Forcing use of /usr/local on FreeBSD by LDFLAGS and CPPFLAGS
|
||||
|
||||
2010.02.08.110814 [3055]
|
||||
xorriso/xorrisoburn.c
|
||||
Removed surplus quotes from an error message
|
||||
|
||||
8 Feb 2010 [3056]
|
||||
svn move -m 'Marked libisofs SVN copy as outdated (use bzr on lp)'
|
||||
http://svn.libburnia-project.org/libisofs
|
||||
http://svn.libburnia-project.org/libisofs_outdated
|
||||
|
||||
2010.02.10.150252 [3057]
|
||||
README
|
||||
Updated license statement about our legal view and future licenses
|
||||
|
||||
2010.02.10.150501 [3058]
|
||||
configure.ac
|
||||
libisoburn/libisoburn.h
|
||||
Requiring libisofs-0.6.28 now
|
||||
|
||||
2010.02.10.150547 [3059]
|
||||
xorriso/configure_ac.txt
|
||||
Adapted xorriso-standalone to version leap libisofs-0.6.29
|
||||
|
||||
10 Feb 2010 [3060]
|
||||
xorriso/xorriso_eng.html
|
||||
Updated xorriso web page
|
||||
|
||||
------------------------------------ cycle - xorriso-0.4.9 - 2010.02.10.150547
|
||||
Bug fix: Regression in libisofs introduced with xorriso-0.4.2 in August 2009:
|
||||
-boot_image could lead to SIGSEGV
|
||||
|
||||
|
||||
12 Feb 2010 [3061]
|
||||
xorriso/README
|
||||
Switched from xorriso-standalone GPLv2+ to GNU xorriso GPLv3+
|
||||
|
||||
svn move -m 'Renamed xorriso/README to xorriso/README_gnu_xorriso' \
|
||||
xorriso/README xorriso/README_gnu_xorriso
|
||||
|
||||
2010.02.12.153945 [3062]
|
||||
xorriso/xorriso.c
|
||||
xorriso/make_xorriso_standalone.sh
|
||||
xorriso/README_gnu_xorriso
|
||||
+ xorriso/COPYING_gnu_xorriso
|
||||
xorriso/xorriso_eng.html
|
||||
Switched from xorriso-standalone GPLv2+ to GNU xorriso GPLv3+
|
||||
|
||||
2010.02.12.213121 [3065]
|
||||
xorriso/xorriso.1
|
||||
libisoburn/libisoburn.h
|
||||
xorriso/xorriso_eng.html
|
||||
Changed docs and comments to "GNU/Linux" where appropriate
|
||||
|
||||
------------------------------------ cycle - xorriso-0.4.9 - 2010.02.12.213121
|
||||
|
||||
2010.02.14.151045 [3067]
|
||||
README
|
||||
COPYRIGHT
|
||||
libisoburn/libisoburn.h
|
||||
libisoburn/isoburn.h
|
||||
libisoburn/isoburn.c
|
||||
libisoburn/data_source.c
|
||||
libisoburn/burn_wrap.c
|
||||
libisoburn/isofs_wrap.c
|
||||
Added or adjusted copyright and license statements in single files
|
||||
|
||||
2010.02.14.151610 [3068]
|
||||
xorriso/xorriso.c
|
||||
xorriso/xorrisoburn.c
|
||||
xorriso/make_xorriso_standalone.sh
|
||||
xorriso/configure_ac.txt
|
||||
xorriso/xorriso_makefile_am.txt
|
||||
xorriso/xorriso.1
|
||||
xorriso/xorriso_eng.html
|
||||
+ xorriso/AUTHORS_gnu_xorriso
|
||||
+ xorriso/COPYRIGHT_gnu_xorriso
|
||||
Added or adjusted copyright and license statements in single files
|
||||
|
||||
2010.02.14.172124 [3070]
|
||||
README
|
||||
xorriso/make_xorriso_standalone.sh
|
||||
xorriso/xorriso_makefile_am.txt
|
||||
Excluded unused libburn source module crc.c from GNU xorriso tarball
|
||||
|
||||
2010.02.15.204530 [3072]
|
||||
xorriso/xorriso_eng.html
|
||||
Adjustments with web page of GNU xorriso
|
||||
|
||||
------------------------------------ cycle - xorriso-0.4.9 - 2010.02.15.204530
|
||||
|
||||
2010.02.17.140002 [3074]
|
||||
xorriso/xorriso.c
|
||||
Bug fix for FreeBSD: xorriso could leave the drive tray locked
|
||||
|
||||
2010.02.18.125019 [3076]
|
||||
xorriso/xorriso.h
|
||||
xorriso/xorriso_private.h
|
||||
xorriso/xorriso.c
|
||||
xorriso/xorrisoburn.h
|
||||
xorriso/xorrisoburn.c
|
||||
xorriso/xorriso.1
|
||||
New option -scsi_log
|
||||
|
||||
2010.02.19.172125 [3077]
|
||||
xorriso/xorrisoburn.c
|
||||
Bug fix: xorriso -update_r could lead to SIGSEGV if applied to a data file
|
||||
|
||||
19 Feb 2010 [3078] [3079]
|
||||
xorriso/xorriso_eng.html
|
||||
Adjustments with web page of GNU xorriso
|
||||
|
||||
------------------------------------ cycle - xorriso-0.4.9 - 2010.02.19.172125
|
||||
Bug fix on FreeBSD: xorriso could leave the drive tray locked
|
||||
Bug fix on FreeBSD: Piped input was falsely attributed a small fixed size
|
||||
Bug fix: xorriso -update_r could lead to SIGSEGV if applied to a data file
|
||||
New option -scsi_log
|
||||
|
||||
22 Feb 2010 [3081]
|
||||
xorriso/README_gnu_xorriso
|
||||
xorriso/xorriso_eng.html
|
||||
Mentioned bug-xorriso@gnu.org as a contact address for GNU xorriso
|
||||
|
||||
2010.02.22.195623 [3082]
|
||||
xorriso/make_xorriso_standalone.sh
|
||||
xorriso/xorriso.h
|
||||
xorriso/xorriso.c
|
||||
Changed versioning and tarball name to match unpack directory name
|
||||
|
||||
22 Feb 2010 [3083]
|
||||
svn copy -m Branching for libisoburn release 0.5.0
|
||||
http://svn.libburnia-project.org/libisoburn/trunk
|
||||
http://svn.libburnia-project.org/libisoburn/branches/ZeroFiveZero
|
||||
|
||||
2010.02.22.213001 [3084]
|
||||
configure.ac
|
||||
README
|
||||
libisoburn/libisoburn.h
|
||||
xorriso/README_gnu_xorriso
|
||||
xorriso/xorriso.h
|
||||
xorriso/xorriso.c
|
||||
xorriso/xorrisoburn.h
|
||||
xorriso/xorriso_eng.html
|
||||
xorriso/make_xorriso_standalone.sh
|
||||
xorriso/configure_ac.txt
|
||||
xorriso/xorriso_timestamp.h
|
||||
Version leap to libisoburn-0.5.0
|
||||
|
||||
22 Feb 2010 [3085]
|
||||
Makefile.am
|
||||
Delivering xorriso/README_gnu_xorriso with libisoburn
|
||||
|
||||
22 Feb 2010 [3086]
|
||||
xorriso/changelog.txt
|
||||
Documented changes and release timestamp
|
||||
|
||||
----------------------------------- release - xorriso-0.5.0 - 2010.02.22.213001
|
||||
Bug fix: Regression in libisofs introduced with xorriso-0.4.2 in August 2009:
|
||||
-boot_image could lead to SIGSEGV
|
||||
Bug fix on FreeBSD: xorriso could leave the drive tray locked
|
||||
Bug fix on FreeBSD: Piped input was falsely attributed a small fixed size
|
||||
Bug fix: xorriso -update_r could lead to SIGSEGV if applied to a data file
|
||||
New option -scsi_log
|
||||
|
||||
|
||||
2010.02.23.093924 [3087]
|
||||
configure.ac
|
||||
README
|
||||
libisoburn/libisoburn.h
|
||||
xorriso/README_gnu_xorriso
|
||||
xorriso/xorriso.h
|
||||
xorriso/xorriso.c
|
||||
xorriso/xorrisoburn.h
|
||||
xorriso/xorriso_eng.html
|
||||
xorriso/make_xorriso_standalone.sh
|
||||
xorriso/configure_ac.txt
|
||||
xorriso/xorriso_timestamp.h
|
||||
Version leap to libisoburn-0.5.1
|
||||
|
||||
23 Feb 2010 [3088]
|
||||
Makefile.am
|
||||
Delivering xorriso/README_gnu_xorriso with libisoburn
|
||||
|
||||
23 Feb 2010 [3089]
|
||||
svn move -m Promoted branch to tag
|
||||
http://svn.libburnia-project.org/libisoburn/branches/ZeroFiveZero
|
||||
http://svn.libburnia-project.org/libisoburn/tags/ZeroFiveZero
|
||||
|
||||
------------------------------------ cycle - xorriso-0.5.1 - 2010.02.23.093924
|
||||
|
||||
|
||||
28 Feb 2010 [3094]
|
||||
xorriso/make_xorriso_standalone.sh
|
||||
Adjusted patcher of Makefile.in for GNU xorriso
|
||||
|
||||
28 Feb 2010 [3095]
|
||||
xorriso/xorriso.1
|
||||
Corrected spelling errors in xorriso man page
|
||||
|
||||
2010.03.09.065117 [3109]
|
||||
libisoburn/libisoburn.h
|
||||
Requiring libburn-0.7.7 now
|
||||
|
||||
2010.03.09.065408 [3110]
|
||||
xorriso/xorriso_private.h
|
||||
xorriso/xorriso.h
|
||||
xorriso/xorriso.c
|
||||
xorriso/xorrisoburn.c
|
||||
Adapted xorriso signal handling to new libburn advise
|
||||
|
||||
2010.03.10.183348 [3121]
|
||||
configure.ac
|
||||
libisoburn/libisoburn.h
|
||||
Requiring libburn-0.7.8 now
|
||||
|
||||
2010.03.10.183426 [3122]
|
||||
xorriso/configure_ac.txt
|
||||
Adapted GNU xorriso to version leap libburn-0.7.9
|
||||
|
||||
2010.03.18.101202 [3125]
|
||||
Makefile.am
|
||||
xorriso/xorriso_makefile_am.txt
|
||||
xorriso/make_xorriso_standalone.sh
|
||||
+ xorriso/xorriso.texi
|
||||
+ xorriso/xorriso.info
|
||||
+ xorriso/make_xorriso_1.c
|
||||
+ xorriso/make_docs.sh
|
||||
xorriso/xorriso.1
|
||||
xorriso/convert_man_to_html.sh
|
||||
Switched xorriso documentation to a hybrid of texinfo and man page
|
||||
|
||||
------------------------------------ cycle - xorriso-0.5.1 - 2010.03.18.101202
|
||||
* xorriso documentation now also available in (tex)info format
|
||||
|
||||
|
||||
2010.03.20.165317 [3126]
|
||||
xorriso/make_docs.sh
|
||||
xorriso/xorriso.texi
|
||||
xorriso/xorriso.info
|
||||
xorriso/xorriso.1
|
||||
xorriso/convert_man_to_html.sh
|
||||
Restructured xorriso documentation and added index
|
||||
|
||||
2010.03.21.124435 [3127]
|
||||
Makefile.am
|
||||
xorriso/xorriso_makefile_am.txt
|
||||
xorriso/xorriso.texi
|
||||
xorriso/xorriso.info
|
||||
Distributing and installing xorriso.info
|
||||
|
||||
2010.03.21.124517 [3128]
|
||||
libisoburn/burn_wrap.c
|
||||
Silenced a harmless compiler warning
|
||||
|
||||
22 Mar 2010 [3129]
|
||||
xorriso/xorriso.texi
|
||||
Changed global info dir entry of xorriso.texi
|
||||
|
||||
22 Mar 2010 [3130]
|
||||
xorriso/xorriso.info
|
||||
Changed global info dir entry of xorriso.info
|
||||
|
||||
2010.03.29.103419 [3136]
|
||||
libisoburn/burn_wrap.c
|
||||
Avoided to declare empty tray as written media
|
||||
|
||||
2010.03.29.103533 [3137]
|
||||
xorriso/xorrisoburn.c
|
||||
Better handling of empty tray when aquiring drive
|
||||
|
||||
------------------------------------ cycle - xorriso-0.5.1 - 2010.03.29.103533
|
||||
|
||||
29 Mar 2010 [3138]
|
||||
svn copy -m Branching for libisoburn release 0.5.2
|
||||
http://svn.libburnia-project.org/libisoburn/trunk
|
||||
http://svn.libburnia-project.org/libisoburn/branches/ZeroFiveTwo
|
||||
|
||||
2010.03.29.190001 [3139]
|
||||
configure.ac
|
||||
README
|
||||
libisoburn/libisoburn.h
|
||||
xorriso/README_gnu_xorriso
|
||||
xorriso/xorriso.h
|
||||
xorriso/xorriso.c
|
||||
xorriso/xorrisoburn.h
|
||||
xorriso/xorriso_eng.html
|
||||
xorriso/make_xorriso_standalone.sh
|
||||
xorriso/configure_ac.txt
|
||||
xorriso/xorriso_timestamp.h
|
||||
Version leap to libisoburn-0.5.2
|
||||
|
||||
[]
|
||||
xorriso/changelog.txt
|
||||
Documented changes and release timestamp
|
||||
|
||||
----------------------------------- release - xorriso-0.5.2 - 2010.03.29.190001
|
||||
* xorriso documentation now also available in (tex)info format
|
||||
* Prepared FreeBSD system adapter to work with ahci driver
|
||||
|
||||
|
||||
2010.03.30.082405 []
|
||||
configure.ac
|
||||
README
|
||||
libisoburn/libisoburn.h
|
||||
xorriso/README_gnu_xorriso
|
||||
xorriso/xorriso.h
|
||||
xorriso/xorriso.c
|
||||
xorriso/xorrisoburn.h
|
||||
xorriso/xorriso_eng.html
|
||||
xorriso/make_xorriso_standalone.sh
|
||||
xorriso/configure_ac.txt
|
||||
xorriso/xorriso_timestamp.h
|
||||
Version leap to libisoburn-0.5.2
|
||||
|
||||
[]
|
||||
xorriso/changelog.txt
|
||||
Documented changes and release timestamp
|
||||
|
||||
------------------------------------ cycle - xorriso-0.5.3 -
|
||||
------------------------------------ cycle - xorriso-0.5.3 -
|
||||
------------------------------------ cycle - xorriso-0.5.3 -
|
||||
|
||||
===============================================================================
|
||||
TODO
|
||||
@ -6886,6 +7223,42 @@ Documented changes and release timestamp
|
||||
|
||||
------------------------------------------------- bugs
|
||||
|
||||
- DVD-ROM drives report CD tracks with size up to the next track start.
|
||||
Why ? -> libburn
|
||||
Eventually restrict -check_media to ISO image size ?
|
||||
|
||||
- make iso_init() and iso_finish() safe against multiple calls
|
||||
from multiple threads.
|
||||
|
||||
- ??? disable isohybrid by default ?
|
||||
|
||||
|
||||
- Is it harmless to have an empty xorriso->loaded_boot_cat_path ?
|
||||
This situation appears if an image gets loaded that was created
|
||||
by mkisofs ... -hide boot.catalog ...
|
||||
xorriso -toc reports:
|
||||
Boot bin_path: '/boot/isolinux/isolinux.bin'
|
||||
Boot cat_path: -not-found-at-load-time-
|
||||
|
||||
- Not reproducible any more ?
|
||||
Sesssion without MD5 does not get loaded if -md5 on
|
||||
e.g. intenso USB when session 45 was youngest (w/o MD5)
|
||||
|
||||
libburn : DEBUG : burn_drive_is_enumerable_adr( stdio:/dev/sdb ) is true
|
||||
libisoburn: DEBUG : Found 45 ISO sessions by scanning 2880 kB in 0 seconds
|
||||
xorriso : NOTE : Loading ISO image tree from LBA 0
|
||||
libisofs: FAILURE : Checksum mismatch between checksum tag and data blocks
|
||||
libisofs: FAILURE : Image loading aborted due to MD5 mismatch of image tree data
|
||||
libisofs: HINT : You may override this refusal by disabling MD5 checking
|
||||
libisofs: FAILURE : Checksum mismatch in System Area, Volume Descriptors, or directory tree
|
||||
Only the output drive remains. Created empty ISO image.
|
||||
Drive current: -outdev '/dev/sdb'
|
||||
Media current: stdio file, overwriteable
|
||||
Media status : is written , is appendable
|
||||
Media summary: 45 sessions, 774442 data blocks, 1513m data, 398m free
|
||||
xorriso : FATAL : Cannot read ISO image tree
|
||||
xorriso : HINT : You might get a questionable ISO image tree by option -md5 'off'.
|
||||
xorriso : NOTE : Tolerated problem event of severity 'FATAL'
|
||||
|
||||
|
||||
- what about split files and hard links ?
|
||||
@ -6902,6 +7275,9 @@ xorriso : UPDATE : 3691 MB written (fifo 78%) [buf 100%] 2.3x.
|
||||
|
||||
------------------------------------------------- important
|
||||
|
||||
- introduce a read offset for displaced ISO images ?
|
||||
(Copy from CD block 123456 to disk. Apply -img_displaced_by 123456s )
|
||||
|
||||
- options -print_info , -print_mark
|
||||
|
||||
- (ECMA-119 names in: -copyright_id , -abstract_id , -biblio_id)
|
||||
@ -6932,8 +7308,9 @@ xorriso : UPDATE : 3691 MB written (fifo 78%) [buf 100%] 2.3x.
|
||||
|
||||
------------------------------------------------- development
|
||||
|
||||
- Replace Libisofs_new_fs_image_inO by Libisofs_hardlink_prooF
|
||||
and make the latter unconditional.
|
||||
- Is it possible to make use of iso_node_set_hidden()
|
||||
to hide e.g. boot catalogs ?
|
||||
Eventually emulate mkisofs -hide -hide-list
|
||||
|
||||
- Special pseudo ACL: "--remove-default"
|
||||
|
||||
@ -7000,11 +7377,6 @@ xorriso : UPDATE : 3691 MB written (fifo 78%) [buf 100%] 2.3x.
|
||||
iso_node_set_name("xyz");
|
||||
}
|
||||
|
||||
- demo/ produces on FreeBSD several binaries of 500k each.
|
||||
On all systems gcc issues warnings.
|
||||
- Which demo binary is still valid ?
|
||||
|
||||
|
||||
------ feature enhancements :
|
||||
|
||||
- With 100,000 files in a single directory, adding new nodes becomes
|
||||
@ -7027,14 +7399,6 @@ xorriso : UPDATE : 3691 MB written (fifo 78%) [buf 100%] 2.3x.
|
||||
- $partok {0...1} = 0
|
||||
|
||||
|
||||
- File checksums as backpack and as xattr values.
|
||||
Problem: If they are scattered over the data section then they will cause
|
||||
a lot of random access and thus be slow with BD. They need to be buffered
|
||||
in memory as zinfo and written all together after data section.
|
||||
|
||||
- Image checksum tag in the last data blocks of an image.
|
||||
A data file entry should point to that block.
|
||||
|
||||
- A dummy option in IsoWriteOpts which causes iso_image_create_burn_source()
|
||||
to end before actually data get written. (For -print_size)
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
# Copyright (c) 2007 - 2010 Thomas Schmitt <scdbackup@gmx.net>
|
||||
# Provided under GPL version 2 or later.
|
||||
|
||||
AC_INIT([xorriso], [0.4.9], [http://libburnia-project.org])
|
||||
AC_INIT([xorriso], [0.5.2], [http://libburnia-project.org])
|
||||
AC_PREREQ([2.50])
|
||||
dnl AC_CONFIG_HEADER([config.h])
|
||||
|
||||
@ -16,7 +16,7 @@ AM_INIT_AUTOMAKE([subdir-objects])
|
||||
|
||||
BURN_MAJOR_VERSION=0
|
||||
BURN_MINOR_VERSION=7
|
||||
BURN_MICRO_VERSION=7
|
||||
BURN_MICRO_VERSION=9
|
||||
AC_SUBST(BURN_MAJOR_VERSION)
|
||||
AC_SUBST(BURN_MINOR_VERSION)
|
||||
AC_SUBST(BURN_MICRO_VERSION)
|
||||
|
@ -55,12 +55,16 @@ then
|
||||
-e 's/<b>Command processing:<\/b>/\ <BR><b>Command processing:<\/b>/' \
|
||||
-e 's/<b>Dialog, Readline, Result pager:<\/b>/\ <BR><b>Dialog, Readline, Result pager:<\/b>/' \
|
||||
-e 's/<b>Aquiring source and target drive:<\/b>/\ <BR><b>Aquiring source and target drive:<\/b><BR>\ <BR>/' \
|
||||
-e 's/<b>Data manipulations:<\/b>/\ <BR><b>Data manipulations:<\/b><BR>\ <BR>/' \
|
||||
-e 's/<b>Influencing the behavior of image/\ <BR><b>Influencing the behavior of image/' \
|
||||
-e 's/<b>Inserting files into ISO image:<\/b>/\ <BR><b>Inserting files into ISO image:<\/b><BR>\ <BR>/' \
|
||||
-e 's/<b>File manipulations:<\/b>/\ <BR><b>File manipulations:<\/b><BR>\ <BR>/' \
|
||||
-e 's/<b>Tree traversal command -find:<\/b>/\ <BR><b>Tree traversal command -find:<\/b><BR>\ <BR>/' \
|
||||
-e 's/^<p><b>−iso_rr_pattern/<p>\ <BR><b>\−iso_rr_pattern/' \
|
||||
-e 's/EXAMPLES):<br>/<A HREF="#EXAMPLES">EXAMPLES<\/A>):<br>/' \
|
||||
-e 's/<b>Writing the result:<\/b>/\ <BR><b>Writing the result:<\/b><BR>/' \
|
||||
-e 's/<b>Filters for data file content:<\/b>/\ <BR><b>Filters for data file content:<\/b><BR>\ <BR>/' \
|
||||
-e 's/<b>Writing the result, drive control:<\/b>/\ <BR><b>Writing the result, drive control:<\/b><BR>\ <BR>/' \
|
||||
-e 's/^-find \/ /\ \ -find \/ /' \
|
||||
-e 's/<b>Settings for data insertion:<\/b>/\ <BR><b>Settings for data insertion:<\/b><BR>\ <BR>/' \
|
||||
-e 's/<b>Settings for file insertion:<\/b>/\ <BR><b>Settings for file insertion:<\/b><BR>\ <BR>/' \
|
||||
-e 's/^$<\/b> ln -s/\ \ $<\/b> ln -s/' \
|
||||
-e 's/<b>Settings for result writing:<\/b>/\ <BR><b>Settings for result writing:<\/b><BR>\ <BR>/' \
|
||||
-e 's/^706k = 706kB/\ \ 706k = 706kB/' \
|
||||
@ -73,7 +77,7 @@ then
|
||||
-e 's/<b>Navigation in ISO image/\ <BR><b>Navigation in ISO image/' \
|
||||
-e 's/^filesystem:<\/b>/filesystem:<\/b><BR>\ <BR>/' \
|
||||
-e 's/<b>Evaluation of readability and recovery:<\/b>/\ <BR><b>Evaluation of readability and recovery:<\/b><BR>\ <BR>/' \
|
||||
-e 's/<b>osirrox restore options:<\/b>/\ <BR><b>osirrox restore options:<\/b><BR>\ <BR>/' \
|
||||
-e 's/<b>osirrox ISO-to-disk restore options:<\/b>/\ <BR><b>osirrox ISO-to-disk restore options:<\/b><BR>\ <BR>/' \
|
||||
-e 's/<b>Command compatibility emulations:<\/b>/\ <BR><b>Command compatibility emulations:<\/b><BR>\ <BR>/' \
|
||||
-e 's/^<p><b>−as</<p>\ <BR><b>\−as</' \
|
||||
-e 's/<b>Scripting, dialog and/\ <BR><b>Scripting, dialog and/' \
|
||||
|
10
xorriso/make_docs.sh
Executable file
10
xorriso/make_docs.sh
Executable file
@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Produce man page xorriso/xorriso.1 and info file xorriso/xorriso.info
|
||||
# from base file xorris/xorriso.texi.
|
||||
|
||||
( cd xorriso ; makeinfo ./xorriso.texi )
|
||||
|
||||
xorriso/make_xorriso_1 -auto
|
||||
|
||||
|
329
xorriso/make_xorriso_1.c
Normal file
329
xorriso/make_xorriso_1.c
Normal file
@ -0,0 +1,329 @@
|
||||
|
||||
/*
|
||||
( cd xorriso ; cc -g -Wall -o make_xorriso_1 make_xorriso_1.c )
|
||||
*/
|
||||
/*
|
||||
Specialized converter from xorriso/xorriso.texi to xorriso/xorriso.1.
|
||||
|
||||
The conversion rules are described at the beginning of xorriso/xorriso.texi
|
||||
|
||||
Copyright 2010 Thomas Schmitt, <scdbackup@gmx.net>
|
||||
|
||||
Provided under GPL version 2 or later.
|
||||
*/
|
||||
|
||||
#include <unistd.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
#include <errno.h>
|
||||
|
||||
|
||||
/* The conversion state
|
||||
*/
|
||||
struct Mx1 {
|
||||
|
||||
char prog[4096];
|
||||
|
||||
int count_in;
|
||||
int count_out;
|
||||
|
||||
int skipping; /* <0 stacked skipping , 0= no , >0 counting down */
|
||||
|
||||
};
|
||||
|
||||
|
||||
int Mx1_init(struct Mx1 *m, char *prog, int flag)
|
||||
{
|
||||
strncpy(m->prog, prog, sizeof(m->prog) - 1);
|
||||
m->prog[sizeof(m->prog) - 1]= 0;
|
||||
m->count_in= 0;
|
||||
m->count_out= 0;
|
||||
m->skipping= 0;
|
||||
return(1);
|
||||
}
|
||||
|
||||
|
||||
int Mx1_report_error(struct Mx1 *m, char *text, int flag)
|
||||
{
|
||||
fprintf(stderr, "%s : line %d : %s\n", m->prog, m->count_in, text);
|
||||
return(1);
|
||||
}
|
||||
|
||||
|
||||
int Mx1__get_word(char *line, char word[256], char **remainder, int flag)
|
||||
{
|
||||
char *cpt, *start;
|
||||
int l;
|
||||
|
||||
word[0]= 0;
|
||||
*remainder= NULL;
|
||||
for(cpt= line; *cpt != 0 && isspace(*cpt); cpt++);
|
||||
if(*cpt == 0)
|
||||
return(0);
|
||||
start= cpt;
|
||||
for(cpt= line; *cpt != 0 && ! isspace(*cpt); cpt++);
|
||||
l= cpt - start;
|
||||
if(l > 0)
|
||||
strncpy(word, start, l);
|
||||
word[l]= 0;
|
||||
*remainder= cpt;
|
||||
return(1);
|
||||
}
|
||||
|
||||
|
||||
int Mx1_substitute(struct Mx1 *m, char line_in[256], char line_out[256],
|
||||
int raw, int flag)
|
||||
{
|
||||
char *rpt, *wpt, *ept;
|
||||
int l;
|
||||
|
||||
wpt= line_out;
|
||||
for(rpt= line_in; *rpt != 0; rpt++) {
|
||||
if(rpt - line_in < raw) {
|
||||
*(wpt++)= *rpt;
|
||||
continue;
|
||||
}
|
||||
if(*rpt == '@') {
|
||||
if(strncmp(rpt, "@strong{", 8) == 0) {
|
||||
/* @strong{-...} gets mapped to \fB\-...\fR . */;
|
||||
/* @strong{... } gets mapped to \fB...\fR . */
|
||||
ept= strchr(rpt, '}');
|
||||
if(ept == NULL) {
|
||||
Mx1_report_error(m, "No closing bracket found for '@strong{'", 0);
|
||||
return(-1);
|
||||
}
|
||||
l= ept - rpt - 8;
|
||||
if((wpt - line_out) + l + 6 + (rpt[8] == '-') > 255)
|
||||
goto overflow;
|
||||
strcpy(wpt, "\\fB");
|
||||
wpt+= 3;
|
||||
if(rpt[8] == '-')
|
||||
*(wpt++)= '\\';
|
||||
strncpy(wpt, rpt + 8, l);
|
||||
wpt+= l;
|
||||
strcpy(wpt, "\\fR");
|
||||
wpt+= 3;
|
||||
rpt+= ept - rpt;
|
||||
} else if(strncmp(rpt, "@minus{}", 8) == 0) {
|
||||
/* @minus{} will become "-". */
|
||||
if((wpt - line_out) + 1 > 255)
|
||||
goto overflow;
|
||||
*(wpt++)= '-';
|
||||
rpt+= 7;
|
||||
} else if(strncmp(rpt, "@@", 2) == 0 ||
|
||||
strncmp(rpt, "@{", 2) == 0 ||
|
||||
strncmp(rpt, "@}", 2) == 0) {
|
||||
/* @@ , @{, @} will get stripped of their first @. */
|
||||
*(wpt++)= *(rpt + 1);
|
||||
rpt++;
|
||||
}
|
||||
} else if(*rpt == '\\') {
|
||||
/* "\" becomes "\\" */
|
||||
if((wpt - line_out) + 2 > 255)
|
||||
goto overflow;
|
||||
*(wpt++)= '\\';
|
||||
*(wpt++)= '\\';
|
||||
} else if((wpt - line_out) + 1 > 255) {
|
||||
overflow:;
|
||||
Mx1_report_error(m, "Line length overflow while text substitution", 0);
|
||||
return(-1);
|
||||
} else
|
||||
*(wpt++)= *rpt;
|
||||
}
|
||||
*wpt= 0;
|
||||
return(1);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
@return 1= line_out is valid, 0= do not put out line_out, -1 = error
|
||||
*/
|
||||
int Mx1_convert(struct Mx1 *m, char line_in[256], char line_out[256], int flag)
|
||||
{
|
||||
int l, num, keep= 0, ret, raw;
|
||||
char word[256], buf[256], *remainder;
|
||||
|
||||
m->count_in++;
|
||||
l= strlen(line_in);
|
||||
|
||||
if(m->skipping > 0) {
|
||||
m->skipping--;
|
||||
return(0);
|
||||
}
|
||||
|
||||
/* The first line gets discarded. */
|
||||
if(m->count_in == 1)
|
||||
return(0);
|
||||
|
||||
/* Line start "@c man " will become "", the remainder is put out unaltered. */
|
||||
if(strncmp(line_in, "@c man ", 7) == 0) {
|
||||
strcpy(line_out, line_in + 7);
|
||||
m->count_out++;
|
||||
return(1);
|
||||
}
|
||||
|
||||
/* Lines "@*" will be converted to ".br" */
|
||||
if(strcmp(line_in, "@*") == 0) {
|
||||
strcpy(line_out, ".br");
|
||||
m->count_out++;
|
||||
return(1);
|
||||
}
|
||||
|
||||
/* @c man-ignore-lines N will discard N following lines.
|
||||
"@c man-ignore-lines begin" discards all following lines
|
||||
up to "@c man-ignore-lines end".
|
||||
*/
|
||||
if(strncmp(line_in, "@c man-ignore-lines ", 20) == 0) {
|
||||
if(strcmp(line_in + 20, "begin") == 0) {
|
||||
m->skipping--;
|
||||
return(0);
|
||||
} else if(strcmp(line_in + 20, "end") == 0) {
|
||||
if(m->skipping < 0)
|
||||
m->skipping++;
|
||||
return(0);
|
||||
} else if(m->skipping == 0) {
|
||||
num= 0;
|
||||
sscanf(line_in + 20, "%d", &num);
|
||||
if(num > 0) {
|
||||
m->skipping= num;
|
||||
return(0);
|
||||
}
|
||||
}
|
||||
Mx1_report_error(m, "Inappropriate use of '@c man-ignore-lines'", 0);
|
||||
return(-1);
|
||||
}
|
||||
|
||||
/* Line blocks of "@menu" "@end menu" will be discarded. */
|
||||
if(strcmp(line_in, "@menu") == 0) {
|
||||
m->skipping--;
|
||||
return(0);
|
||||
}
|
||||
if(strcmp(line_in, "@end menu") == 0) {
|
||||
if(m->skipping < 0)
|
||||
m->skipping++;
|
||||
return(0);
|
||||
}
|
||||
if(m->skipping)
|
||||
return(0);
|
||||
|
||||
/* "@item -word words" becomes "\fB\-word\fR words". */
|
||||
/* "@item word words" becomes "\fBword\fR words". */
|
||||
if(strncmp(line_in, "@item ", 6) == 0) {
|
||||
ret= Mx1__get_word(line_in + 6, word, &remainder, 0);
|
||||
if(ret <= 0) {
|
||||
Mx1_report_error(m, "Found no word after @item", 0);
|
||||
return(0);
|
||||
}
|
||||
strcpy(buf, "\\fB");
|
||||
if(word[0] == '-') {
|
||||
if(l >= 255) {
|
||||
Mx1_report_error(m, "Line length overflow while converting @item", 0);
|
||||
return(-1);
|
||||
}
|
||||
strcat(buf, "\\");
|
||||
}
|
||||
strcat(buf, word);
|
||||
strcat(buf, "\\fR");
|
||||
raw= strlen(buf);
|
||||
strcat(buf, remainder);
|
||||
ret= Mx1_substitute(m, buf, line_out, raw, 0);
|
||||
if(ret <= 0)
|
||||
return(-1);
|
||||
m->count_out++;
|
||||
return(1);
|
||||
}
|
||||
|
||||
/* @strong{-...} gets mapped to \fB\-...\fR . */
|
||||
/* @strong{... } gets mapped to \fB...\fR . */
|
||||
/* @minus{} will become "-". */
|
||||
/* @@ , @{, @} will get stripped of their first @. */
|
||||
/* "\" becomes "\\" */
|
||||
if(line_in[0] != '@' ||
|
||||
strncmp(line_in, "@strong{", 8) == 0 ||
|
||||
strncmp(line_in, "@minus{}", 8) == 0 ||
|
||||
strncmp(line_in, "@@", 2) == 0 ||
|
||||
strncmp(line_in, "@{", 2) == 0 ||
|
||||
strncmp(line_in, "@}", 2) == 0) {
|
||||
keep= 1;
|
||||
ret= Mx1_substitute(m, line_in, line_out, 0, 0);
|
||||
if(ret <= 0)
|
||||
return(-1);
|
||||
}
|
||||
|
||||
/* Other lines which begin by "@" will be discarded. */
|
||||
if(! keep) {
|
||||
if(line_in[0] == '@')
|
||||
return(0);
|
||||
strcpy(line_out, line_in);
|
||||
}
|
||||
m->count_out++;
|
||||
return(1);
|
||||
}
|
||||
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
int ret, l, as_filter= 0, i;
|
||||
char line_in[256], line_out[256], *got;
|
||||
static char name_in[]= {"xorriso/xorriso.texi"};
|
||||
static char name_out[]= {"xorriso/xorriso.1"};
|
||||
struct Mx1 m;
|
||||
FILE *fp_in= stdin, *fp_out= stdout;
|
||||
|
||||
Mx1_init(&m, argv[0], 0);
|
||||
|
||||
if(argc < 2) {
|
||||
usage:;
|
||||
fprintf(stderr, "usage: %s -auto|-filter\n", argv[0]);
|
||||
fprintf(stderr, " -auto xorriso/xorriso.texi -> xorriso/xorriso.1\n");
|
||||
fprintf(stderr, " -filter stdin -> stdout\n");
|
||||
exit(2);
|
||||
}
|
||||
for(i= 1; i < argc; i++) {
|
||||
if(strcmp(argv[i], "-filter") == 0)
|
||||
as_filter= 1;
|
||||
else if(strcmp(argv[i], "-auto") == 0)
|
||||
as_filter= 0;
|
||||
else {
|
||||
fprintf(stderr, "%s : unknown option %s\n", argv[0], argv[i]);
|
||||
goto usage;
|
||||
}
|
||||
}
|
||||
|
||||
if(!as_filter) {
|
||||
fp_in= fopen(name_in, "r");
|
||||
if(fp_in == NULL) {
|
||||
fprintf(stderr, "%s : failed to fopen( %s ,r) : %d %s\n",
|
||||
argv[0], name_in, errno, strerror(errno));
|
||||
exit(3);
|
||||
}
|
||||
fp_out= fopen(name_out, "w");
|
||||
if(fp_out == NULL) {
|
||||
fprintf(stderr, "%s : failed to fopen( %s ,w) : %d %s\n",
|
||||
argv[0], name_out, errno, strerror(errno));
|
||||
exit(4);
|
||||
}
|
||||
}
|
||||
while(1) {
|
||||
got= fgets(line_in, sizeof(line_in), fp_in);
|
||||
if(got == NULL)
|
||||
break;
|
||||
l= strlen(line_in);
|
||||
while(l > 0) {
|
||||
if(line_in[l - 1] == '\r' || line_in[l - 1] == '\n') {
|
||||
line_in[l - 1] = 0;
|
||||
l--;
|
||||
} else
|
||||
break;
|
||||
}
|
||||
ret= Mx1_convert(&m, line_in, line_out, 0);
|
||||
if(ret < 0)
|
||||
exit(1);
|
||||
if(ret == 0)
|
||||
continue;
|
||||
fprintf(fp_out, "%s\n", line_out);
|
||||
}
|
||||
exit(0);
|
||||
}
|
@ -40,7 +40,7 @@ create_gnu_xorriso="yes"
|
||||
current_dir=$(pwd)
|
||||
lone_dir="$current_dir"/"xorriso-standalone"
|
||||
|
||||
xorriso_rev=0.4.9
|
||||
xorriso_rev=0.5.2
|
||||
# For unstable uploads and patch level 0 of stable releases:
|
||||
xorriso_pl=""
|
||||
# For higher patch levels of stable releases:
|
||||
@ -135,13 +135,17 @@ xorriso/convert_man_to_html.sh
|
||||
create_dir "$lone_dir"/xorriso
|
||||
copy_files \
|
||||
xorriso/xorrisoburn.[ch] \
|
||||
xorriso/xorriso.[ch1] \
|
||||
xorriso/xorriso.[ch] \
|
||||
xorriso/xorriso_private.h \
|
||||
\
|
||||
xorriso/xorriso_timestamp.h \
|
||||
\
|
||||
xorriso/changelog.txt \
|
||||
xorriso/xorriso_eng.html \
|
||||
xorriso/xorriso.texi \
|
||||
xorriso/xorriso.info \
|
||||
xorriso/make_xorriso_1.c \
|
||||
xorriso/xorriso.1 \
|
||||
xorriso/man_1_xorriso.html \
|
||||
"$lone_dir"/xorriso
|
||||
|
||||
@ -272,9 +276,8 @@ rm -r ./autom4te.cache
|
||||
|
||||
if test "$create_gnu_xorriso" = "yes"
|
||||
then
|
||||
# ftp-upload@gnu.org dislikes my automake 1.9 and its chmod a+rwx
|
||||
sed -e 's/by automake 1.9.6/by automake 1.11.1/' \
|
||||
-e 's/-perm -777 -exec chmod a+rwx/-perm -755 -exec chmod u+rwx,go+rx/' \
|
||||
# ftp-upload@gnu.org rejects Makefile.in with a dangerous chmod on make dist
|
||||
sed -e 's/-perm -777 -exec chmod a+rwx/-perm -755 -exec chmod u+rwx,go+rx/' \
|
||||
< Makefile.in > new_Makefile.in
|
||||
|
||||
mv new_Makefile.in Makefile.in
|
||||
|
1080
xorriso/xorriso.1
1080
xorriso/xorriso.1
File diff suppressed because it is too large
Load Diff
@ -166,6 +166,10 @@ or
|
||||
#include "xorrisoburn.h"
|
||||
|
||||
|
||||
/* See Xorriso__preset_signal_behavior() */
|
||||
static int Xorriso_signal_behavioR= 1;
|
||||
|
||||
|
||||
/* ------------------------------------------------------------------------ */
|
||||
|
||||
|
||||
@ -5033,6 +5037,21 @@ int Xorriso_destroy(struct XorrisO **xorriso, int flag)
|
||||
}
|
||||
|
||||
|
||||
int Xorriso__preset_signal_behavior(int behavior, int flag)
|
||||
{
|
||||
if(behavior < 0 || behavior > 1)
|
||||
return(0);
|
||||
Xorriso_signal_behavioR= behavior;
|
||||
return(1);
|
||||
}
|
||||
|
||||
|
||||
int Xorriso__get_signal_behavior(int flag)
|
||||
{
|
||||
return(Xorriso_signal_behavioR);
|
||||
}
|
||||
|
||||
|
||||
int Xorriso_dialog_input(struct XorrisO *xorriso, char line[], int linesize,
|
||||
int flag)
|
||||
/*
|
||||
@ -20629,7 +20648,7 @@ char *Xorriso__get_patch_level_text(int flag)
|
||||
/* xorriso consists only of a main() stub which has an own version to match
|
||||
the version of libxorriso header and runtime code.
|
||||
*/
|
||||
#define Xorriso_main_program_versioN "0.4.9"
|
||||
#define Xorriso_main_program_versioN "0.5.2"
|
||||
|
||||
#else /* Xorriso_without_subS */
|
||||
|
||||
|
@ -16,7 +16,7 @@
|
||||
struct XorrisO;
|
||||
|
||||
|
||||
#define Xorriso_program_versioN "0.4.9"
|
||||
#define Xorriso_program_versioN "0.5.2"
|
||||
#define Xorriso_program_patch_leveL ""
|
||||
|
||||
|
||||
@ -39,6 +39,20 @@ char *Xorriso__get_version_text(int flag);
|
||||
char *Xorriso__get_patch_level_text(int flag);
|
||||
|
||||
|
||||
/* Choose how Xorriso_startup_libraries() and the XorrisO object shall
|
||||
prepare for eventual signals.
|
||||
@param behavior Default is behavior 1.
|
||||
0= no own signal handling. The main application has to do
|
||||
that. Do not start burn runs without any handling !
|
||||
1= use libburn signal handler. Most time with action
|
||||
0. During writing, formatting, blanking: 0x30.
|
||||
Only usable with a single xorriso object.
|
||||
@param flag unused yet, submit 0
|
||||
@return <= 0 is error, >0 is success
|
||||
*/
|
||||
int Xorriso__preset_signal_behavior(int behavior, int flag);
|
||||
|
||||
|
||||
/* Mandatory call:
|
||||
Create a new xorriso object and tell it the program name to be used
|
||||
with messages and for decision of special behavior.
|
||||
|
3971
xorriso/xorriso.info
Normal file
3971
xorriso/xorriso.info
Normal file
File diff suppressed because it is too large
Load Diff
4733
xorriso/xorriso.texi
Normal file
4733
xorriso/xorriso.texi
Normal file
File diff suppressed because it is too large
Load Diff
@ -57,7 +57,8 @@ Images or add-on sessions may be written to about any kind of file object.
|
||||
<DD>With kernel 2.4 a PATA/IDE drive has to be under ide-scsi emulation.</DD>
|
||||
<DD>With kernel 2.6 ide-scsi is not needed.</DD>
|
||||
<DT>or FreeBSD, libc, libpthread :</DT>
|
||||
<DD>PATA/IDE and SATA drives need atapicam running.</DD>
|
||||
<DD>PATA/IDE drives need atapicam running.</DD>
|
||||
<DD>SATA drives need atapicam or ahci running.</DD>
|
||||
<DD>libcam has to be installed.</DD>
|
||||
<DD>libiconv has to be installed.</DD>
|
||||
<DT>or some other X/Open system, libc, libpthread :</DT>
|
||||
@ -435,10 +436,20 @@ files or trees to disk:
|
||||
<P>
|
||||
<DL>
|
||||
<DT><H3>Download as source code (see README):</H3></DT>
|
||||
<DD><A HREF="xorriso-0.4.8.pl01.tar.gz">xorriso-0.4.8.pl01.tar.gz</A>
|
||||
(1360 KB).
|
||||
<DD><A HREF="xorriso-0.5.2.tar.gz">xorriso-0.5.2.tar.gz</A>
|
||||
(1560 KB).
|
||||
</DD>
|
||||
<DD>(Released 29 Mar 2010)</DD>
|
||||
<DD><A HREF="xorriso-0.5.2.tar.gz.sig">xorriso-0.5.2.tar.gz.sig</A></DD>
|
||||
<DD>
|
||||
(detached GPG signature for verification by
|
||||
<KBD>gpg --verify xorriso-0.5.2.tar.gz.sig xorriso-0.5.2.tar.gz</KBD>).
|
||||
</DD>
|
||||
<DD>
|
||||
Also on <A HREF="http://www.gnu.org/prep/ftp.html">
|
||||
mirrors of ftp://ftp.gnu.org/gnu/ </A>
|
||||
as xorriso/xorriso-0.5.2.tar.gz
|
||||
</DD>
|
||||
<DD>(Released 10 Feb 2010, GPLv2+, predecessor of GNU xorriso)</DD>
|
||||
</DL>
|
||||
</DD>
|
||||
</DL>
|
||||
@ -449,16 +460,15 @@ files or trees to disk:
|
||||
</DL>
|
||||
<A NAME="contact"></A>
|
||||
<DL><DT>Contact:</DT>
|
||||
<DD>Thomas Schmitt, <A HREF="mailto:scdbackup@gmx.net">scdbackup@gmx.net</A></DD>
|
||||
<DD>GNU xorriso support mailing list,
|
||||
<A HREF="mailto:bug-xorriso@gnu.org">bug-xorriso@gnu.org</A></DD>
|
||||
<DD>libburnia development mailing list,
|
||||
<A HREF="mailto:libburn-hackers@pykix.org">libburn-hackers@pykix.org</A></DD>
|
||||
<DD>Thomas Schmitt, <A HREF="mailto:scdbackup@gmx.net">scdbackup@gmx.net</A></DD>
|
||||
</DL>
|
||||
<DL><DT>License:</DT>
|
||||
<DD><A HREF="COPYING_xorriso">GPL version 2 or later.</A>
|
||||
<DD><A HREF="COPYING_xorriso">GPL version 3 or later.</A>
|
||||
</DD>
|
||||
<DD>(To become with the next release a derived GPL version 3 or later.)</DD>
|
||||
<DD> </DD>
|
||||
</DL>
|
||||
</P>
|
||||
@ -466,18 +476,9 @@ files or trees to disk:
|
||||
<HR>
|
||||
|
||||
<P>
|
||||
Bug fixes towards xorriso-0.4.6.pl00:
|
||||
Bug fixes towards xorriso-0.5.0:
|
||||
<UL>
|
||||
<LI>
|
||||
With non-Linux system adapters there were 0 readable bytes on block devices
|
||||
which acted as pseudo drives.
|
||||
</LI>
|
||||
<LI>
|
||||
xorriso did not blank CD-RW with images that were prepared on hard disk
|
||||
</LI>
|
||||
<LI>
|
||||
Invalid checksum tags were preserved if the new session produced no checksums
|
||||
</LI>
|
||||
<LI>- none -</LI>
|
||||
<!--
|
||||
<LI>- none -</LI>
|
||||
-->
|
||||
@ -485,33 +486,24 @@ Invalid checksum tags were preserved if the new session produced no checksums
|
||||
</P>
|
||||
|
||||
<!--
|
||||
-->
|
||||
<P>
|
||||
Bug fixes towards xorriso-0.4.8.pl00:
|
||||
<UL>
|
||||
<LI>
|
||||
Regression in libisofs introduced with xorriso-0.4.2:
|
||||
-boot_image isolinux patch could lead to SIGSEGV
|
||||
</LI>
|
||||
</UL>
|
||||
</P>
|
||||
-->
|
||||
|
||||
<P>
|
||||
Enhancements towards previous stable version xorriso-0.4.6.pl00:
|
||||
Enhancements towards previous stable version xorriso-0.4.8.pl00:
|
||||
<UL>
|
||||
<LI>
|
||||
New configure option --enable-libcdio for system adapter to libcdio-0.83git
|
||||
Manual now based on hybrid format of Texinfo and man-page.
|
||||
Copies included: xorriso.texi, xorriso.info , xorriso.1
|
||||
</LI>
|
||||
<LI>
|
||||
The checksum buffer for the emerging image gets now marked as invalid if
|
||||
image generation is canceled.
|
||||
</LI>
|
||||
<LI>
|
||||
More graceful reaction on filesystems where ACL are not enabled but
|
||||
nevertheless requested by the application.
|
||||
</LI>
|
||||
<LI>
|
||||
Made FreeBSD system adapter safe from mutal burn spoiling and drive deadlock.
|
||||
On FreeBSD: support for upcomming SATA driver "ahci"
|
||||
</LI>
|
||||
<!--
|
||||
<LI>- none -</LI>
|
||||
@ -535,16 +527,16 @@ libburnia project and the legal intentions of
|
||||
<A HREF="http://www.fsf.org/"> FSF </A> match completely.
|
||||
</DT>
|
||||
<DD> </DD>
|
||||
<DT>libburn-0.7.7</DT>
|
||||
<DT>libburn-0.7.9</DT>
|
||||
<DD>reads and writes data from and to CD, DVD, BD.</DD>
|
||||
<DD>(founded by Derek Foreman and Ben Jansens,
|
||||
developed and maintained since August 2006 by
|
||||
Thomas Schmitt from team of libburnia-project.org)</DD>
|
||||
<DT>libisofs-0.6.27</DT>
|
||||
<DT>libisofs-0.6.29</DT>
|
||||
<DD>operates on ISO 9660 filesystem images.</DD>
|
||||
<DD>(By Vreixo Formoso, Mario Danic and Thomas Schmitt
|
||||
from team of libburnia-project.org)</DD>
|
||||
<DT>libisoburn-0.4.8</DT>
|
||||
<DT>libisoburn-0.5.2</DT>
|
||||
<DD>coordinates libburn and libisofs, emulates multi-session where needed,
|
||||
and hosts the original source code of program xorriso.</DD>
|
||||
<DD>(By Vreixo Formoso and Thomas Schmitt
|
||||
@ -559,45 +551,28 @@ cdrecord and mkisofs.</DT>
|
||||
|
||||
<P>
|
||||
<DL>
|
||||
<DT><H3>Development snapshot, version 0.4.9 :</H3></DT>
|
||||
<DD>Bug fixes towards xorriso-0.4.8.pl00:
|
||||
<DT><H3>Development snapshot, version 0.5.3 :</H3></DT>
|
||||
<DD>Bug fixes towards xorriso-0.5.2:
|
||||
<UL>
|
||||
<LI>
|
||||
Regression in libisofs introduced with xorriso-0.4.2:
|
||||
-boot_image isolinux patch could lead to SIGSEGV
|
||||
</LI>
|
||||
<LI>
|
||||
On FreeBSD: xorriso could leave the drive tray locked.
|
||||
</LI>
|
||||
<LI>
|
||||
On FreeBSD: Piped input was falsely attributed a small fixed size.
|
||||
</LI>
|
||||
<LI>
|
||||
Option -update_r could lead to SIGSEGV if applied to a data file rather
|
||||
than a directory.
|
||||
</LI>
|
||||
<LI>- none yet -</LI>
|
||||
<!--
|
||||
<LI>- none yet -</LI>
|
||||
-->
|
||||
</UL>
|
||||
</DD>
|
||||
<DD>Enhancements towards stable version 0.4.8.pl00:
|
||||
<DD>Enhancements towards stable version 0.5.2:
|
||||
<UL>
|
||||
|
||||
<LI>Transition of documentation and program messages towards GNU xorriso</LI>
|
||||
<LI>
|
||||
New option -scsi_log
|
||||
</LI>
|
||||
|
||||
<LI>- none yet -</LI>
|
||||
<!--
|
||||
<LI>- none yet -</LI>
|
||||
-->
|
||||
</UL>
|
||||
</DD>
|
||||
<DD> </DD>
|
||||
<DD><A HREF="README_xorriso_devel">README 0.4.9</A>
|
||||
<DD><A HREF="xorriso_help_devel">xorriso_0.4.9 -help</A></DD>
|
||||
<DD><A HREF="man_1_xorriso_devel.html">man xorriso (as of 0.4.9)</A></DD>
|
||||
<DD><A HREF="README_xorriso_devel">README 0.5.3</A>
|
||||
<DD><A HREF="xorriso_help_devel">xorriso_0.5.3 -help</A></DD>
|
||||
<DD><A HREF="man_1_xorriso_devel.html">man xorriso (as of 0.5.3)</A></DD>
|
||||
<DD> </DD>
|
||||
<DT>If you want to distribute development versions of xorriso, then use
|
||||
this tarball which produces static linking between xorriso and the
|
||||
@ -607,8 +582,8 @@ libburnia libraries.
|
||||
installation see README)
|
||||
</DD>
|
||||
<DD>
|
||||
<A HREF="xorriso-0.4.9.tar.gz">xorriso-0.4.9.tar.gz</A>
|
||||
(1365 KB, GPLv3+, already dubbed GNU xorriso).
|
||||
<A HREF="xorriso-0.5.3.tar.gz">xorriso-0.5.3.tar.gz</A>
|
||||
(1560 KB).
|
||||
</DD>
|
||||
<DT>A dynamically linked development version of xorriso can be obtained
|
||||
from repositories of
|
||||
|
@ -174,7 +174,8 @@ xorriso_xorriso_SOURCES = \
|
||||
# libburn/crc.c
|
||||
|
||||
noinst_PROGRAMS = \
|
||||
test/compare_file
|
||||
test/compare_file \
|
||||
xorriso/make_xorriso_1
|
||||
|
||||
# A program to compare two trees of files in mounted filesystems
|
||||
# To compare tree /media/dvd and /original/dir :
|
||||
@ -185,6 +186,13 @@ test_compare_file_CFLAGS =
|
||||
test_compare_file_LDADD =
|
||||
test_compare_file_SOURCES = test/compare_file.c
|
||||
|
||||
# Specialized converter from xorriso/xorriso.texi to xorriso/xorriso.1
|
||||
#
|
||||
xorriso_make_xorriso_1_CPPFLAGS =
|
||||
xorriso_make_xorriso_1_CFLAGS =
|
||||
xorriso_make_xorriso_1_LDADD =
|
||||
xorriso_make_xorriso_1_SOURCES = xorriso/make_xorriso_1.c
|
||||
|
||||
|
||||
# Install symbolic links to the xorriso binary
|
||||
#
|
||||
@ -233,6 +241,8 @@ indent: $(indent_files)
|
||||
|
||||
man_MANS = xorriso/xorriso.1
|
||||
|
||||
info_TEXINFOS = xorriso/xorriso.texi
|
||||
|
||||
EXTRA_DIST = \
|
||||
xorriso.pc.in \
|
||||
version.h.in \
|
||||
@ -244,6 +254,7 @@ EXTRA_DIST = \
|
||||
INSTALL \
|
||||
xorriso/changelog.txt \
|
||||
xorriso/xorriso_buildstamp_none.h \
|
||||
xorriso/make_docs.sh \
|
||||
$(man_MANS) \
|
||||
doc/susp_aaip_2_0.txt \
|
||||
doc/susp_aaip_isofs_names.txt \
|
||||
@ -259,3 +270,4 @@ EXTRA_DIST = \
|
||||
libburn/sg-freebsd.c \
|
||||
libburn/sg-libcdio.c \
|
||||
libburn/sg-linux.c
|
||||
|
||||
|
@ -50,10 +50,6 @@ struct SectorbitmaP; /* Distiniction between valid and invalid sectors */
|
||||
/* maximum number of history lines to be reported with -status:long_history */
|
||||
#define Xorriso_status_history_maX 100
|
||||
|
||||
/* <<< ??? */
|
||||
/* try to catch signals and ignore them during abort handling */
|
||||
#define Xorriso_abort_handler_defaulT (1|(2<<4))
|
||||
|
||||
|
||||
/** The list of startup file names */
|
||||
#define Xorriso_rc_nuM 4
|
||||
@ -475,6 +471,8 @@ struct XorrisO { /* the global context of xorriso */
|
||||
};
|
||||
|
||||
|
||||
int Xorriso__get_signal_behavior(int flag);
|
||||
|
||||
int Xorriso_prepare_regex(struct XorrisO *xorriso, char *adr, int flag);
|
||||
|
||||
int Xorriso_result(struct XorrisO *xorriso, int flag);
|
||||
|
@ -1 +1 @@
|
||||
#define Xorriso_timestamP "2010.02.22.195623"
|
||||
#define Xorriso_timestamP "2010.03.29.190001"
|
||||
|
@ -144,6 +144,25 @@ static const char *un0(const char *text)
|
||||
}
|
||||
|
||||
|
||||
int Xorriso_abort(struct XorrisO *xorriso, int flag)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret= burn_abort(4440, burn_abort_pacifier, "xorriso : ");
|
||||
if(ret<=0) {
|
||||
fprintf(stderr,
|
||||
"\nxorriso : ABORT : Cannot cancel burn session and release drive.\n");
|
||||
return(0);
|
||||
}
|
||||
fprintf(stderr,
|
||||
"xorriso : ABORT : Drive is released and library is shut down now.\n");
|
||||
fprintf(stderr,
|
||||
"xorriso : ABORT : Program done. Even if you do not see a shell prompt.\n");
|
||||
fprintf(stderr, "\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
|
||||
int Xorriso_destroy_node_array(struct XorrisO *xorriso, int flag)
|
||||
{
|
||||
int i;
|
||||
@ -537,11 +556,31 @@ int Xorriso_search_di_range(struct XorrisO *xorriso, IsoNode *node,
|
||||
|
||||
/* ------------------------------------------------------------------------ */
|
||||
|
||||
/* @param flag bit0= asynchronous handling (else catch thread, wait, and exit)
|
||||
*/
|
||||
int Xorriso_set_signal_handling(struct XorrisO *xorriso, int flag)
|
||||
{
|
||||
char *handler_prefix= NULL;
|
||||
|
||||
if(Xorriso__get_signal_behavior(0) != 1)
|
||||
return(2);
|
||||
handler_prefix= calloc(strlen(xorriso->progname)+3+1, 1);
|
||||
if(handler_prefix==NULL) {
|
||||
sprintf(xorriso->info_text,
|
||||
"Cannot allocate memory for for setting signal handler");
|
||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "FATAL", 0);
|
||||
return(-1);
|
||||
}
|
||||
sprintf(handler_prefix, "%s : ", xorriso->progname);
|
||||
burn_set_signal_handling(handler_prefix, NULL, (flag & 1) * 0x30);
|
||||
free(handler_prefix);
|
||||
return(1);
|
||||
}
|
||||
|
||||
|
||||
int Xorriso_startup_libraries(struct XorrisO *xorriso, int flag)
|
||||
{
|
||||
int ret, major, minor, micro;
|
||||
char *handler_prefix= NULL;
|
||||
char *queue_sev, *print_sev, reason[1024];
|
||||
struct iso_zisofs_ctrl zisofs_ctrl= {0, 6, 15};
|
||||
|
||||
@ -587,13 +626,6 @@ LIBISOBURN_MISCONFIGURATION_ = 0;
|
||||
|
||||
/* End of ugly compile time test (scroll up for explanation) */
|
||||
|
||||
handler_prefix= calloc(strlen(xorriso->progname)+3+1, 1);
|
||||
if(handler_prefix==NULL) {
|
||||
sprintf(xorriso->info_text,
|
||||
"Cannot allocate memory for initializing libraries");
|
||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "FATAL", 0);
|
||||
return(-1);
|
||||
}
|
||||
reason[0]= 0;
|
||||
ret= isoburn_initialize(reason, 0);
|
||||
if(ret==0) {
|
||||
@ -602,7 +634,6 @@ LIBISOBURN_MISCONFIGURATION_ = 0;
|
||||
sprintf(xorriso->info_text+strlen(xorriso->info_text),
|
||||
". Reason given:\n%s", reason);
|
||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "FATAL", 0);
|
||||
free(handler_prefix);
|
||||
return(0);
|
||||
}
|
||||
ret= isoburn_is_compatible(isoburn_header_version_major,
|
||||
@ -640,8 +671,9 @@ LIBISOBURN_MISCONFIGURATION_ = 0;
|
||||
isoburn_set_msgs_submit(Xorriso_msgs_submit_void, (void *) xorriso,
|
||||
(3<<2) | 128 , 0);
|
||||
|
||||
sprintf(handler_prefix, "%s : ", xorriso->progname);
|
||||
burn_set_signal_handling(handler_prefix, NULL, 0);
|
||||
ret= Xorriso_set_signal_handling(xorriso, 0);
|
||||
if(ret <= 0)
|
||||
return(ret);
|
||||
|
||||
ret = iso_zisofs_get_params(&zisofs_ctrl, 0);
|
||||
if (ret == 1) {
|
||||
@ -658,7 +690,6 @@ LIBISOBURN_MISCONFIGURATION_ = 0;
|
||||
strcpy(xorriso->info_text, "Using ");
|
||||
strncat(xorriso->info_text, burn_scsi_transport_id(0), 1024);
|
||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "DEBUG", 0);
|
||||
free(handler_prefix);
|
||||
return(1);
|
||||
}
|
||||
|
||||
@ -1146,8 +1177,12 @@ int Xorriso_aquire_drive(struct XorrisO *xorriso, char *adr, int flag)
|
||||
state != BURN_DISC_FULL) {
|
||||
sprintf(xorriso->info_text,
|
||||
"Disc status not blank and unsuitable for reading");
|
||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "SORRY", 0);
|
||||
{ret= 0; goto ex;}
|
||||
sev= "FAILURE";
|
||||
if(xorriso->img_read_error_mode==2)
|
||||
sev= "FATAL";
|
||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, sev, 0);
|
||||
Xorriso_give_up_drive(xorriso, 1|((flag&32)>>2));
|
||||
ret= 3; goto ex;
|
||||
}
|
||||
/* fill read opts */
|
||||
ret= isoburn_ropt_new(&ropts, 0);
|
||||
@ -2041,11 +2076,17 @@ int Xorriso_write_session(struct XorrisO *xorriso, int flag)
|
||||
if(ret <= 0)
|
||||
goto ex;
|
||||
|
||||
/* Important: do not return until burn_is_aborting() was checked */
|
||||
Xorriso_set_signal_handling(xorriso, 1);
|
||||
|
||||
xorriso->run_state= 1; /* Indicate that burning has started */
|
||||
isoburn_disc_write(burn_options, disc);
|
||||
burn_write_opts_free(burn_options);
|
||||
|
||||
ret= Xorriso_pacifier_loop(xorriso, drive, pacifier_speed << 4);
|
||||
if(burn_is_aborting(0))
|
||||
Xorriso_abort(xorriso, 0); /* Never comes back */
|
||||
Xorriso_set_signal_handling(xorriso, 0);
|
||||
if(ret<=0)
|
||||
goto ex;
|
||||
if(!isoburn_drive_wrote_well(drive)) {
|
||||
@ -2116,6 +2157,8 @@ int Xorriso_check_burn_abort(struct XorrisO *xorriso, int flag)
|
||||
struct burn_drive_info *dinfo;
|
||||
struct burn_drive *drive;
|
||||
|
||||
if(burn_is_aborting(0))
|
||||
return(2);
|
||||
if(xorriso->run_state!=1)
|
||||
return(0);
|
||||
ret= Xorriso_eval_problem_status(xorriso, 1, 1);
|
||||
@ -5318,7 +5361,7 @@ int Xorriso_toc(struct XorrisO *xorriso, int flag)
|
||||
int track_count= 0, session_no, track_no, profile_no= -1, track_size;
|
||||
int last_track_start= 0, last_track_size= -1, num_data= 0, is_data= 0;
|
||||
int is_inout_drive= 0, drive_role, status, num_formats, emul_lba;
|
||||
int num_payload= 0, num_wasted= 0, num_nondata= 0;
|
||||
int num_payload= 0, num_wasted= 0, num_nondata= 0, not_reconizable= 0;
|
||||
char profile_name[80],*respt,*devadr, *typetext= "";
|
||||
struct burn_toc_entry toc_entry;
|
||||
struct burn_drive_info *dinfo;
|
||||
@ -5377,8 +5420,10 @@ int Xorriso_toc(struct XorrisO *xorriso, int flag)
|
||||
else if(drive_role==0 || drive_role==3)
|
||||
sprintf(respt+strlen(respt), ", sequential");
|
||||
strcat(respt, "\n");
|
||||
} else
|
||||
} else {
|
||||
sprintf(respt+strlen(respt), "is not recognizable\n");
|
||||
not_reconizable= 1;
|
||||
}
|
||||
Xorriso_toc_line(xorriso, flag & 8);
|
||||
|
||||
if((flag & 64) || !(flag & 1)) {
|
||||
@ -5389,7 +5434,10 @@ int Xorriso_toc(struct XorrisO *xorriso, int flag)
|
||||
|
||||
sprintf(respt, "Media status : ");
|
||||
if (s == BURN_DISC_FULL) {
|
||||
sprintf(respt+strlen(respt), "is written , is closed\n");
|
||||
if(not_reconizable)
|
||||
sprintf(respt+strlen(respt), "is not recognizable\n");
|
||||
else
|
||||
sprintf(respt+strlen(respt), "is written , is closed\n");
|
||||
} else if (s == BURN_DISC_APPENDABLE) {
|
||||
sprintf(respt+strlen(respt), "is written , is appendable\n");
|
||||
} else if (s == BURN_DISC_BLANK) {
|
||||
@ -5762,6 +5810,9 @@ int Xorriso_blank_media(struct XorrisO *xorriso, int flag)
|
||||
mode_names[flag&3]);
|
||||
Xorriso_info(xorriso,0);
|
||||
|
||||
/* Important: do not return until burn_is_aborting() was checked */
|
||||
Xorriso_set_signal_handling(xorriso, 1);
|
||||
|
||||
if(do_deformat)
|
||||
burn_disc_erase(drive, (flag&1));
|
||||
else
|
||||
@ -5778,7 +5829,9 @@ int Xorriso_blank_media(struct XorrisO *xorriso, int flag)
|
||||
usleep(1000000);
|
||||
}
|
||||
Xorriso_process_msg_queues(xorriso,0);
|
||||
|
||||
if(burn_is_aborting(0))
|
||||
Xorriso_abort(xorriso, 0); /* Never comes back */
|
||||
Xorriso_set_signal_handling(xorriso, 0);
|
||||
if(burn_drive_wrote_well(drive)) {
|
||||
sprintf(xorriso->info_text, "Blanking done\n");
|
||||
Xorriso_info(xorriso,0);
|
||||
@ -5915,6 +5968,10 @@ int Xorriso_format_media(struct XorrisO *xorriso, off_t in_size, int flag)
|
||||
Xorriso_info(xorriso, 0);
|
||||
if(flag & 2)
|
||||
size= in_size;
|
||||
|
||||
/* Important: do not return until burn_is_aborting() was checked */
|
||||
Xorriso_set_signal_handling(xorriso, 1);
|
||||
|
||||
burn_disc_format(drive, size, mode_flag);
|
||||
|
||||
start_time= time(0);
|
||||
@ -5928,8 +5985,10 @@ int Xorriso_format_media(struct XorrisO *xorriso, off_t in_size, int flag)
|
||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "UPDATE", 0);
|
||||
usleep(1000000);
|
||||
}
|
||||
|
||||
Xorriso_process_msg_queues(xorriso,0);
|
||||
if(burn_is_aborting(0))
|
||||
Xorriso_abort(xorriso, 0); /* Never comes back */
|
||||
Xorriso_set_signal_handling(xorriso, 0);
|
||||
|
||||
if(burn_drive_wrote_well(drive)) {
|
||||
sprintf(xorriso->info_text, "Formatting done\n");
|
||||
@ -9144,10 +9203,16 @@ int Xorriso_burn_track(struct XorrisO *xorriso, off_t write_start_address,
|
||||
if(ret<=0)
|
||||
goto ex;
|
||||
|
||||
/* Important: do not return until burn_is_aborting() was checked */
|
||||
Xorriso_set_signal_handling(xorriso, 1);
|
||||
|
||||
xorriso->run_state= 1; /* Indicate that burning has started */
|
||||
burn_disc_write(burn_options, disc);
|
||||
|
||||
ret= Xorriso_pacifier_loop(xorriso, drive, 2 | (is_cd << 4) | (is_bd << 5));
|
||||
if(burn_is_aborting(0))
|
||||
Xorriso_abort(xorriso, 0); /* Never comes back */
|
||||
Xorriso_set_signal_handling(xorriso, 0);
|
||||
if(ret<=0)
|
||||
goto ex;
|
||||
if(!burn_drive_wrote_well(drive)) {
|
||||
|
@ -18,8 +18,8 @@
|
||||
/* The minimum version of libisoburn to be used with this version of xorriso
|
||||
*/
|
||||
#define xorriso_libisoburn_req_major 0
|
||||
#define xorriso_libisoburn_req_minor 4
|
||||
#define xorriso_libisoburn_req_micro 9
|
||||
#define xorriso_libisoburn_req_minor 5
|
||||
#define xorriso_libisoburn_req_micro 2
|
||||
|
||||
|
||||
struct SpotlisT; /* List of intervals with different read qualities */
|
||||
|
Reference in New Issue
Block a user