Compare commits
4 Commits
ZeroThreeF
...
ZeroTwoEig
Author | SHA1 | Date | |
---|---|---|---|
a21d632153 | |||
5eae306db2 | |||
8f10ec3032 | |||
1dac61c338 |
@ -1,11 +1,11 @@
|
|||||||
Mario Danic <mario.danic@gmail.com>,
|
Mario Danic <mario.danic@gmail.com>,
|
||||||
Vreixo Formoso <metalpain2002@yahoo.es>
|
Vreixo Formoso <metalpain2002@yahoo.es>
|
||||||
Thomas Schmitt <scdbackup@gmx.net>
|
Thomas Schmitt <scdbackup@gmx.net>
|
||||||
libisoburn is Copyright (C) 2007-2009 Vreixo Formoso, Thomas Schmitt
|
libisoburn is Copyright (C) 2007-2008 Vreixo Formoso, Thomas Schmitt
|
||||||
xorriso is Copyright (C) 2007-2009 Thomas Schmitt
|
xorriso is Copyright (C) 2007-2008 Thomas Schmitt
|
||||||
libisofs (if included) is Copyright (C) 2007-2009 Vreixo Formoso, Mario Danic
|
libisofs (if included) is Copyright (C) 2007-2008 Vreixo Formoso, Mario Danic
|
||||||
libburn (if included) is Copyright (C) 2002-2006 Derek Foreman, Ben Jansens
|
libburn (if included) is Copyright (C) 2002-2006 Derek Foreman, Ben Jansens
|
||||||
and Copyright (C) 2006-2009 Mario Danic, Thomas Schmitt
|
and Copyright (C) 2006-2008 Mario Danic, Thomas Schmitt
|
||||||
|
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
10
Makefile.am
10
Makefile.am
@ -46,12 +46,8 @@ bin_PROGRAMS = \
|
|||||||
# cat xorriso/xorriso_buildstamp.h
|
# cat xorriso/xorriso_buildstamp.h
|
||||||
|
|
||||||
xorriso_xorriso_CPPFLAGS = -Ilibisoburn
|
xorriso_xorriso_CPPFLAGS = -Ilibisoburn
|
||||||
xorriso_xorriso_CFLAGS = -DXorriso_with_maiN \
|
xorriso_xorriso_CFLAGS = -DXorriso_with_maiN -DXorriso_with_regeX $(READLINE_DEF)
|
||||||
$(READLINE_DEF) $(LIBACL_DEF) $(XATTR_DEF)
|
xorriso_xorriso_LDADD = libisoburn/libisoburn.la -lisofs -lburn $(THREAD_LIBS)
|
||||||
|
|
||||||
xorriso_xorriso_LDADD = libisoburn/libisoburn.la -lisofs -lburn \
|
|
||||||
$(THREAD_LIBS) $(LIBBURN_ARCH_LIBS)
|
|
||||||
|
|
||||||
xorriso_xorriso_SOURCES = \
|
xorriso_xorriso_SOURCES = \
|
||||||
xorriso/xorriso.h \
|
xorriso/xorriso.h \
|
||||||
xorriso/xorriso_private.h \
|
xorriso/xorriso_private.h \
|
||||||
@ -156,8 +152,6 @@ man_MANS = xorriso/xorriso.1
|
|||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
libisoburn-1.pc.in \
|
libisoburn-1.pc.in \
|
||||||
version.h.in \
|
version.h.in \
|
||||||
doc/comments \
|
|
||||||
doc/doxygen.conf.in \
|
|
||||||
README \
|
README \
|
||||||
AUTHORS \
|
AUTHORS \
|
||||||
CONTRIBUTORS \
|
CONTRIBUTORS \
|
||||||
|
21
README
21
README
@ -4,8 +4,8 @@
|
|||||||
libisoburn. By Vreixo Formoso <metalpain2002@yahoo.es>
|
libisoburn. By Vreixo Formoso <metalpain2002@yahoo.es>
|
||||||
and Thomas Schmitt <scdbackup@gmx.net>
|
and Thomas Schmitt <scdbackup@gmx.net>
|
||||||
Integrated sub project of libburnia-project.org.
|
Integrated sub project of libburnia-project.org.
|
||||||
http://files.libburnia-project.org/releases/libisoburn-0.3.4.pl00.tar.gz
|
http://files.libburnia-project.org/releases/libisoburn-0.2.8.pl00.tar.gz
|
||||||
Copyright (C) 2006-2009 Vreixo Formoso, Thomas Schmitt.
|
Copyright (C) 2006-2008 Vreixo Formoso, Thomas Schmitt.
|
||||||
Provided under GPL version 2.
|
Provided under GPL version 2.
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
|
|
||||||
@ -18,8 +18,7 @@ The price for that is thorough specialization on data files in ISO-9660
|
|||||||
filesystem images. So libisoburn is not suitable for audio (CD-DA) or any
|
filesystem images. So libisoburn is not suitable for audio (CD-DA) or any
|
||||||
other CD layout which does not entirely consist of ISO-9660 sessions.
|
other CD layout which does not entirely consist of ISO-9660 sessions.
|
||||||
|
|
||||||
Currently it is supported on Linux with kernels >= 2.4 and on FreeBSD versions
|
Currently it is only supported on Linux with kernels >= 2.4.
|
||||||
with ATAPI/CAM support enabled in the kernel, see atapicam(4).
|
|
||||||
|
|
||||||
By using this software you agree to the disclaimer at the end of this text:
|
By using this software you agree to the disclaimer at the end of this text:
|
||||||
"... without even the implied warranty ..."
|
"... without even the implied warranty ..."
|
||||||
@ -27,18 +26,18 @@ By using this software you agree to the disclaimer at the end of this text:
|
|||||||
|
|
||||||
Compilation, First Glimpse, Installation
|
Compilation, First Glimpse, Installation
|
||||||
|
|
||||||
Dynamic library and compile time header requirements for libisoburn-0.3.4 :
|
Dynamic library and compile time header requirements for libisoburn-0.2.8 :
|
||||||
- libburn.so.4 , version libburn-0.6.0 or higher
|
- libburn.so.4 , version libburn-0.5.4 or higher
|
||||||
- libisofs.so.6 , version libisofs-0.6.14 or higher
|
- libisofs.so.6 , version libisofs-0.6.10 or higher
|
||||||
libisoburn and xorriso will not start with libraries which are older than their
|
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
|
headers seen at compile time. So compile in the oldest possible installation
|
||||||
setup unless you have reason to enforce a newer bug fix level.
|
setup unless you have reason to enforce a newer bug fix level.
|
||||||
|
|
||||||
Obtain libisoburn-0.3.4.pl00.tar.gz, take it to a directory of your choice
|
Obtain libisoburn-0.2.8.pl00.tar.gz, take it to a directory of your choice
|
||||||
and do:
|
and do:
|
||||||
|
|
||||||
tar xzf libisoburn-0.3.4.pl00.tar.gz
|
tar xzf libisoburn-0.2.8.pl00.tar.gz
|
||||||
cd libisoburn-0.3.4
|
cd libisoburn-0.2.8
|
||||||
|
|
||||||
Within that directory execute:
|
Within that directory execute:
|
||||||
|
|
||||||
@ -156,7 +155,7 @@ libburnia-project.org
|
|||||||
By Mario Danic <mario.danic@gmail.com>,
|
By Mario Danic <mario.danic@gmail.com>,
|
||||||
Vreixo Formoso <metalpain2002@yahoo.es>
|
Vreixo Formoso <metalpain2002@yahoo.es>
|
||||||
Thomas Schmitt <scdbackup@gmx.net>
|
Thomas Schmitt <scdbackup@gmx.net>
|
||||||
Copyright (C) 2006-2009 Mario Danic, Vreixo Formoso, Thomas Schmitt.
|
Copyright (C) 2006-2008 Mario Danic, Vreixo Formoso, Thomas Schmitt.
|
||||||
|
|
||||||
libburnia-project.org is inspired by and in other components still containing
|
libburnia-project.org is inspired by and in other components still containing
|
||||||
parts of old
|
parts of old
|
||||||
|
55
configure.ac
55
configure.ac
@ -1,4 +1,4 @@
|
|||||||
AC_INIT([libisoburn], [0.3.4], [http://libburnia-project.org])
|
AC_INIT([libisoburn], [0.2.8], [http://libburnia-project.org])
|
||||||
AC_PREREQ([2.50])
|
AC_PREREQ([2.50])
|
||||||
dnl AC_CONFIG_HEADER([config.h])
|
dnl AC_CONFIG_HEADER([config.h])
|
||||||
|
|
||||||
@ -8,7 +8,7 @@ AC_CANONICAL_TARGET
|
|||||||
AM_INIT_AUTOMAKE([subdir-objects])
|
AM_INIT_AUTOMAKE([subdir-objects])
|
||||||
|
|
||||||
dnl Hint: Search list for version code aspects:
|
dnl Hint: Search list for version code aspects:
|
||||||
dnl /AC_INIT(
|
dnl /AC_INT(
|
||||||
dnl /ISOBURN_.*_VERSION
|
dnl /ISOBURN_.*_VERSION
|
||||||
dnl /LT_.*
|
dnl /LT_.*
|
||||||
dnl /LIB.*_REQUIRED
|
dnl /LIB.*_REQUIRED
|
||||||
@ -20,8 +20,8 @@ dnl LT_CURREN, LT_AGE, LT_REVISION where SONAME becomes LT_CURRENT - LT_AGE
|
|||||||
dnl
|
dnl
|
||||||
dnl These three are only copies to provide libtool with unused LT_RELEASE
|
dnl These three are only copies to provide libtool with unused LT_RELEASE
|
||||||
ISOBURN_MAJOR_VERSION=0
|
ISOBURN_MAJOR_VERSION=0
|
||||||
ISOBURN_MINOR_VERSION=3
|
ISOBURN_MINOR_VERSION=2
|
||||||
ISOBURN_MICRO_VERSION=4
|
ISOBURN_MICRO_VERSION=8
|
||||||
dnl ISOBURN_VERSION=$ISOBURN_MAJOR_VERSION.$ISOBURN_MINOR_VERSION.$ISOBURN_MICRO_VERSION
|
dnl ISOBURN_VERSION=$ISOBURN_MAJOR_VERSION.$ISOBURN_MINOR_VERSION.$ISOBURN_MICRO_VERSION
|
||||||
|
|
||||||
AC_SUBST(ISOBURN_MAJOR_VERSION)
|
AC_SUBST(ISOBURN_MAJOR_VERSION)
|
||||||
@ -33,16 +33,16 @@ dnl Libtool versioning
|
|||||||
dnl Generate libisoburn.so.1.x.y
|
dnl Generate libisoburn.so.1.x.y
|
||||||
dnl SONAME will become LT_CURRENT - LT_AGE
|
dnl SONAME will become LT_CURRENT - LT_AGE
|
||||||
dnl
|
dnl
|
||||||
dnl ts A90301
|
dnl ts A80920
|
||||||
dnl This is the release version 0.3.4 = libisoburn.so.1.23.0
|
dnl This is the release version 0.2.8 = libisoburn.so.1.17.0
|
||||||
dnl ### This is the development version after above stable release
|
dnl ### This is the development version after above stable release
|
||||||
dnl LT_CURRENT++, LT_AGE++ have not happened happened yet.
|
dnl LT_CURRENT++, LT_AGE++ have not happened happened yet.
|
||||||
dnl ### LT_CURRENT++, LT_AGE++ has happened meanwhile.
|
dnl ### LT_CURRENT++, LT_AGE++ has happened meanwhile.
|
||||||
dnl
|
dnl
|
||||||
dnl SONAME = 24 - 23 = 1 . Library name = libisoburn.so.1.23.0
|
dnl SONAME = 18 - 17 = 1 . Library name = libisoburn.so.1.17.0
|
||||||
LT_RELEASE=$ISOBURN_MAJOR_VERSION.$ISOBURN_MINOR_VERSION
|
LT_RELEASE=$ISOBURN_MAJOR_VERSION.$ISOBURN_MINOR_VERSION
|
||||||
LT_CURRENT=24
|
LT_CURRENT=18
|
||||||
LT_AGE=23
|
LT_AGE=17
|
||||||
LT_REVISION=0
|
LT_REVISION=0
|
||||||
LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
|
LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
|
||||||
|
|
||||||
@ -70,10 +70,6 @@ if test ! $ac_cv_func_fseeko; then
|
|||||||
AC_ERROR([Libburn requires largefile support.])
|
AC_ERROR([Libburn requires largefile support.])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
dnl If iconv(3) is in an extra lib, then it gets added to variable LIBS.
|
|
||||||
dnl If not, then no -liconv will be added.
|
|
||||||
AC_CHECK_LIB(iconv, iconv, , )
|
|
||||||
|
|
||||||
AC_PROG_LIBTOOL
|
AC_PROG_LIBTOOL
|
||||||
AC_SUBST(LIBTOOL_DEPS)
|
AC_SUBST(LIBTOOL_DEPS)
|
||||||
LIBTOOL="$LIBTOOL --silent"
|
LIBTOOL="$LIBTOOL --silent"
|
||||||
@ -106,41 +102,12 @@ else
|
|||||||
fi
|
fi
|
||||||
AC_SUBST(READLINE_DEF)
|
AC_SUBST(READLINE_DEF)
|
||||||
|
|
||||||
|
|
||||||
AC_ARG_ENABLE(libacl,
|
|
||||||
[ --enable-libacl Enable use of libacl by libisofs, default=yes],
|
|
||||||
, enable_libacl=yes)
|
|
||||||
if test x$enable_libacl = xyes; then
|
|
||||||
dnl Check whether there is libacl-devel and libacl-runtime.
|
|
||||||
dnl If not, erase this macro which would enable use of acl_to_text and others
|
|
||||||
LIBACL_DEF="-DLibisofs_with_aaip_acL"
|
|
||||||
dnl The empty yes case obviously causes -lacl to be linked
|
|
||||||
AC_CHECK_HEADER(sys/acl.h, AC_CHECK_LIB(acl, acl_to_text, , LIBACL_DEF= ), LIBACL_DEF= )
|
|
||||||
else
|
|
||||||
LIBACL_DEF=
|
|
||||||
fi
|
|
||||||
AC_SUBST(LIBACL_DEF)
|
|
||||||
|
|
||||||
|
|
||||||
AC_ARG_ENABLE(xattr,
|
|
||||||
[ --enable-xattr Enable use of xattr by libisofs, default=yes],
|
|
||||||
, enable_xattr=yes)
|
|
||||||
if test x$enable_xattr = xyes; then
|
|
||||||
dnl Check whether there is the header for Linux xattr.
|
|
||||||
dnl If not, erase this macro which would enable use of listxattr and others
|
|
||||||
XATTR_DEF="-DLibisofs_with_aaip_xattR"
|
|
||||||
AC_CHECK_HEADER(attr/xattr.h, AC_CHECK_LIB(c, listxattr, X= , XATTR_DEF= ), XATTR_DEF= )
|
|
||||||
else
|
|
||||||
XATTR_DEF=
|
|
||||||
fi
|
|
||||||
AC_SUBST(XATTR_DEF)
|
|
||||||
|
|
||||||
AC_CHECK_HEADER(libburn/libburn.h)
|
AC_CHECK_HEADER(libburn/libburn.h)
|
||||||
AC_CHECK_HEADER(libisofs/libisofs.h)
|
AC_CHECK_HEADER(libisofs/libisofs.h)
|
||||||
|
|
||||||
dnl Check for proper library versions
|
dnl Check for proper library versions
|
||||||
LIBBURN_REQUIRED=0.6.0
|
LIBBURN_REQUIRED=0.5.4
|
||||||
LIBISOFS_REQUIRED=0.6.14
|
LIBISOFS_REQUIRED=0.6.10
|
||||||
PKG_CHECK_MODULES(LIBBURN, libburn-1 >= $LIBBURN_REQUIRED)
|
PKG_CHECK_MODULES(LIBBURN, libburn-1 >= $LIBBURN_REQUIRED)
|
||||||
PKG_CHECK_MODULES(LIBISOFS, libisofs-1 >= $LIBISOFS_REQUIRED)
|
PKG_CHECK_MODULES(LIBISOFS, libisofs-1 >= $LIBISOFS_REQUIRED)
|
||||||
|
|
||||||
|
58
doc/comments
58
doc/comments
@ -1,58 +0,0 @@
|
|||||||
/**
|
|
||||||
@author Mario Danic, Vreixo Formoso, Thomas Schmitt
|
|
||||||
|
|
||||||
@mainpage Libisoburn Documentation Index
|
|
||||||
|
|
||||||
@section intro Introduction
|
|
||||||
|
|
||||||
Libburnia is an open-source project for reading, mastering and writing
|
|
||||||
optical discs. This page is about its capability to read, manipulate, and
|
|
||||||
write ISO 9660 filesystems with Rock Ridge extensions. Media can be optical
|
|
||||||
media or filesystem objects.
|
|
||||||
|
|
||||||
Our scope is currently Linux 2.4 and 2.6, or FreeBSD .
|
|
||||||
|
|
||||||
libisoburn is an add-on to libburn and libisofs which coordinates both and
|
|
||||||
also allows to grow ISO-9660 filesystem images on multi-session media as well
|
|
||||||
as on overwriteable media via the same API.
|
|
||||||
All media peculiarities are handled automatically.
|
|
||||||
|
|
||||||
xorriso is an application of all three libraries which creates, loads,
|
|
||||||
manipulates and writes ISO 9660 filesystem images with Rock Ridge extensions.
|
|
||||||
Manipulation is not only adding or overwriting of files but also deletion,
|
|
||||||
renaming, and attribute changing. An incremental backup feature is provided.
|
|
||||||
See xorriso/README for more
|
|
||||||
|
|
||||||
SONAME:
|
|
||||||
libisoburn.so.1 (since 0.1.0, February 2008).
|
|
||||||
|
|
||||||
|
|
||||||
@section using Using the libraries
|
|
||||||
|
|
||||||
Our build system is based on autotools.
|
|
||||||
User experience tells us that you will need at least autotools version 1.7.
|
|
||||||
|
|
||||||
To build libisoburn go into its toplevel directory and execute
|
|
||||||
|
|
||||||
- ./bootstrap (needed if you downloaded from SVN)
|
|
||||||
|
|
||||||
- ./configure
|
|
||||||
|
|
||||||
- make
|
|
||||||
|
|
||||||
To make the libraries accessible for running resp. developing applications
|
|
||||||
|
|
||||||
- make install
|
|
||||||
|
|
||||||
Read libisoburn/libisoburn.h for a description of the API.
|
|
||||||
See also README, xorriso/README, and the man page xorriso/xorriso.1 which
|
|
||||||
gives an idea of the capabilities provided by Libburnia.
|
|
||||||
|
|
||||||
You will also have to install and understand the two libraries of the
|
|
||||||
Libburnia project which provide fundamental services:
|
|
||||||
libburn is the library by which preformatted data get onto optical media.
|
|
||||||
See libburn/libburn.h for its API description.
|
|
||||||
libisofs is the library to handle ISO 9660 filesystems with Rock Ridge
|
|
||||||
extensions. Its API is described in libisofs/libisofs.h .
|
|
||||||
|
|
||||||
*/
|
|
@ -6,7 +6,7 @@
|
|||||||
*/
|
*/
|
||||||
/* libburn wrappers for libisoburn
|
/* libburn wrappers for libisoburn
|
||||||
|
|
||||||
Copyright 2007 - 2009 Thomas Schmitt, <scdbackup@gmx.net>
|
Copyright 2007 - 2008 Thomas Schmitt, <scdbackup@gmx.net>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* <<< A70929 : hardcoded CD-RW with fabricated -msinfo
|
/* <<< A70929 : hardcoded CD-RW with fabricated -msinfo
|
||||||
@ -24,7 +24,6 @@
|
|||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
#include <regex.h>
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef Xorriso_standalonE
|
#ifndef Xorriso_standalonE
|
||||||
@ -83,11 +82,11 @@ int isoburn_initialize(char msg[1024], int flag)
|
|||||||
iso_lib_header_version_minor
|
iso_lib_header_version_minor
|
||||||
iso_lib_header_version_micro
|
iso_lib_header_version_micro
|
||||||
If the header is too old then the following code shall cause failure of
|
If the header is too old then the following code shall cause failure of
|
||||||
libisoburn compilation rather than to allow production of a program with
|
cdrskin compilation rather than to allow production of a program with
|
||||||
unpredictable bugs or memory corruption.
|
unpredictable bugs or memory corruption.
|
||||||
The compiler messages supposed to appear in this case are:
|
The compiler messages supposed to appear in this case are:
|
||||||
error: 'LIBISOFS_MISCONFIGURATION' undeclared (first use in this function)
|
error: 'LIBISOFS_MISCONFIGURATION' undeclared (first use in this function)
|
||||||
error: 'INTENTIONAL_ABORT_OF_COMPILATION__HEADERFILE_libisofs_dot_h_TOO_OLD__SEE_libisoburn_dot_h_AND_burn_wrap_dot_h' undeclared (first use in this function)
|
error: 'INTENTIONAL_ABORT_OF_COMPILATION__HEADERFILE_libisofs_dot_h_TOO_OLD__SEE_libisoburn_dot_h_and_burn_wrap_dot_h' undeclared (first use in this function)
|
||||||
error: 'LIBISOFS_MISCONFIGURATION_' undeclared (first use in this function)
|
error: 'LIBISOFS_MISCONFIGURATION_' undeclared (first use in this function)
|
||||||
*/
|
*/
|
||||||
/* The indendation is an advise of man gcc to help old compilers ignoring */
|
/* The indendation is an advise of man gcc to help old compilers ignoring */
|
||||||
@ -103,7 +102,7 @@ int isoburn_initialize(char msg[1024], int flag)
|
|||||||
|
|
||||||
#ifdef Isoburn_libisofs_dot_h_too_olD
|
#ifdef Isoburn_libisofs_dot_h_too_olD
|
||||||
LIBISOFS_MISCONFIGURATION = 0;
|
LIBISOFS_MISCONFIGURATION = 0;
|
||||||
INTENTIONAL_ABORT_OF_COMPILATION__HEADERFILE_libisofs_dot_h_TOO_OLD__SEE_libisoburn_dot_h_AND_burn_wrap_dot_h = 0;
|
INTENTIONAL_ABORT_OF_COMPILATION__HEADERFILE_libisofs_dot_h_TOO_OLD__SEE_libisoburn_dot_h_and_burn_wrap_dot_h = 0;
|
||||||
LIBISOFS_MISCONFIGURATION_ = 0;
|
LIBISOFS_MISCONFIGURATION_ = 0;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -265,8 +264,6 @@ int isoburn_is_intermediate_dvd_rw(struct burn_drive *d, int flag)
|
|||||||
bit3= if the drive reports a -ROM profile then try to read
|
bit3= if the drive reports a -ROM profile then try to read
|
||||||
table of content by scanning for ISO image headers.
|
table of content by scanning for ISO image headers.
|
||||||
bit4= do not emulate TOC on overwriteable media
|
bit4= do not emulate TOC on overwriteable media
|
||||||
bit5= ignore ACL from external filesystems
|
|
||||||
bit6= ignore POSIX Extended Attributes from external filesystems
|
|
||||||
*/
|
*/
|
||||||
static int isoburn_welcome_media(struct isoburn **o, struct burn_drive *d,
|
static int isoburn_welcome_media(struct isoburn **o, struct burn_drive *d,
|
||||||
int flag)
|
int flag)
|
||||||
@ -292,7 +289,6 @@ static int isoburn_welcome_media(struct isoburn **o, struct burn_drive *d,
|
|||||||
(*o)->msgs_submit= libisoburn_default_msgs_submit;
|
(*o)->msgs_submit= libisoburn_default_msgs_submit;
|
||||||
(*o)->msgs_submit_handle= libisoburn_default_msgs_submit_handle;
|
(*o)->msgs_submit_handle= libisoburn_default_msgs_submit_handle;
|
||||||
(*o)->msgs_submit_flag= libisoburn_default_msgs_submit_flag;
|
(*o)->msgs_submit_flag= libisoburn_default_msgs_submit_flag;
|
||||||
iso_image_set_ignore_aclea((*o)->image, (flag >> 5 ) & 3);
|
|
||||||
|
|
||||||
#ifdef Hardcoded_cd_rW
|
#ifdef Hardcoded_cd_rW
|
||||||
/* <<< A70929 : hardcoded CD-RW with fabricated -msinfo */
|
/* <<< A70929 : hardcoded CD-RW with fabricated -msinfo */
|
||||||
@ -385,8 +381,6 @@ ex:
|
|||||||
(depending on media type and drive state this might
|
(depending on media type and drive state this might
|
||||||
help or it might make the resulting toc even worse)
|
help or it might make the resulting toc even worse)
|
||||||
bit4= do not emulate TOC on overwriteable media
|
bit4= do not emulate TOC on overwriteable media
|
||||||
bit5= ignore ACL from external filesystems
|
|
||||||
bit6= ignore POSIX Extended Attributes from external filesystems
|
|
||||||
*/
|
*/
|
||||||
int isoburn_drive_aquire(struct burn_drive_info *drive_infos[],
|
int isoburn_drive_aquire(struct burn_drive_info *drive_infos[],
|
||||||
char *adr, int flag)
|
char *adr, int flag)
|
||||||
@ -417,7 +411,7 @@ int isoburn_drive_aquire(struct burn_drive_info *drive_infos[],
|
|||||||
goto ex;
|
goto ex;
|
||||||
drive_grabbed= 1;
|
drive_grabbed= 1;
|
||||||
ret= isoburn_welcome_media(&o, (*drive_infos)[0].drive,
|
ret= isoburn_welcome_media(&o, (*drive_infos)[0].drive,
|
||||||
(flag & (8 | 16 | 32 | 64)) | !!(flag&2));
|
(flag & 24) | !!(flag&2));
|
||||||
if(ret<=0)
|
if(ret<=0)
|
||||||
goto ex;
|
goto ex;
|
||||||
|
|
||||||
@ -1047,9 +1041,7 @@ int isoburn_read_iso_head(struct burn_drive *d, int lba,
|
|||||||
}
|
}
|
||||||
ret= isoburn_read_iso_head_parse(d, buffer+32*1024, image_blocks, info,
|
ret= isoburn_read_iso_head_parse(d, buffer+32*1024, image_blocks, info,
|
||||||
info_mode);
|
info_mode);
|
||||||
if(ret<=0)
|
return(ret);
|
||||||
return(ret);
|
|
||||||
return(1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1517,14 +1509,12 @@ int isoburn_drive_set_msgs_submit(struct burn_drive *d,
|
|||||||
|
|
||||||
|
|
||||||
/* @param flag bit0= with adr_mode 3: adr_value might be 16 blocks too high
|
/* @param flag bit0= with adr_mode 3: adr_value might be 16 blocks too high
|
||||||
bit1= insist in seeing a disc object with at least one session
|
|
||||||
bit2= with adr_mode 4: use adr_value as regular expression
|
|
||||||
*/
|
*/
|
||||||
int isoburn_set_msc1(struct burn_drive *d, int adr_mode, char *adr_value,
|
int isoburn_set_msc1(struct burn_drive *d, int adr_mode, char *adr_value,
|
||||||
int flag)
|
int flag)
|
||||||
{
|
{
|
||||||
int ret, num_sessions, num_tracks, adr_num, i, j, total_tracks;
|
int ret, num_sessions, num_tracks, adr_num, i, j, total_tracks;
|
||||||
int lba, best_lba, size, re_valid= 0;
|
int lba, best_lba, size;
|
||||||
char volid[33], msg[160];
|
char volid[33], msg[160];
|
||||||
struct isoburn *o;
|
struct isoburn *o;
|
||||||
struct isoburn_toc_disc *disc= NULL;
|
struct isoburn_toc_disc *disc= NULL;
|
||||||
@ -1532,8 +1522,6 @@ int isoburn_set_msc1(struct burn_drive *d, int adr_mode, char *adr_value,
|
|||||||
struct isoburn_toc_track **tracks= NULL;
|
struct isoburn_toc_track **tracks= NULL;
|
||||||
static char mode_names[][20]= {"auto", "session", "track", "lba", "volid"};
|
static char mode_names[][20]= {"auto", "session", "track", "lba", "volid"};
|
||||||
static int max_mode_names= 4;
|
static int max_mode_names= 4;
|
||||||
regex_t re;
|
|
||||||
regmatch_t match[1];
|
|
||||||
|
|
||||||
ret= isoburn_find_emulator(&o, d, 0);
|
ret= isoburn_find_emulator(&o, d, 0);
|
||||||
if(ret<0)
|
if(ret<0)
|
||||||
@ -1542,7 +1530,7 @@ int isoburn_set_msc1(struct burn_drive *d, int adr_mode, char *adr_value,
|
|||||||
return(-1);
|
return(-1);
|
||||||
|
|
||||||
adr_num= atoi(adr_value);
|
adr_num= atoi(adr_value);
|
||||||
if(adr_mode!=3 || (flag & 2)) {
|
if(adr_mode!=3) {
|
||||||
disc= isoburn_toc_drive_get_disc(d);
|
disc= isoburn_toc_drive_get_disc(d);
|
||||||
if(disc==NULL) {
|
if(disc==NULL) {
|
||||||
not_found:;
|
not_found:;
|
||||||
@ -1601,13 +1589,6 @@ not_found:;
|
|||||||
}
|
}
|
||||||
} else if(adr_mode==4) {
|
} else if(adr_mode==4) {
|
||||||
/* search for volume id that is equal to adr_value */
|
/* search for volume id that is equal to adr_value */
|
||||||
if(flag & 4) {
|
|
||||||
ret= regcomp(&re, adr_value, 0);
|
|
||||||
if(ret != 0)
|
|
||||||
flag&= ~4;
|
|
||||||
else
|
|
||||||
re_valid= 1;
|
|
||||||
}
|
|
||||||
best_lba= -1;
|
best_lba= -1;
|
||||||
for(i=0; i<num_sessions; i++) {
|
for(i=0; i<num_sessions; i++) {
|
||||||
tracks= isoburn_toc_session_get_tracks(sessions[i], &num_tracks);
|
tracks= isoburn_toc_session_get_tracks(sessions[i], &num_tracks);
|
||||||
@ -1618,14 +1599,8 @@ not_found:;
|
|||||||
ret= isoburn_read_iso_head(d, lba, &size, volid, 1);
|
ret= isoburn_read_iso_head(d, lba, &size, volid, 1);
|
||||||
if(ret<=0)
|
if(ret<=0)
|
||||||
continue;
|
continue;
|
||||||
if(flag & 4) {
|
if(strcmp(volid, adr_value)!=0)
|
||||||
ret= regexec(&re, volid, 1, match, 0);
|
|
||||||
if(ret != 0)
|
|
||||||
continue;
|
continue;
|
||||||
} else {
|
|
||||||
if(strcmp(volid, adr_value)!=0)
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
best_lba= lba;
|
best_lba= lba;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1643,64 +1618,7 @@ unknown_mode:;
|
|||||||
ex:;
|
ex:;
|
||||||
if(disc!=NULL)
|
if(disc!=NULL)
|
||||||
isoburn_toc_disc_free(disc);
|
isoburn_toc_disc_free(disc);
|
||||||
if((flag & 4) && re_valid)
|
|
||||||
regfree(&re);
|
|
||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int isoburn_get_mount_params(struct burn_drive *d,
|
|
||||||
int adr_mode, char *adr_value,
|
|
||||||
int *lba, int *track, int *session,
|
|
||||||
char volid[33], int flag)
|
|
||||||
{
|
|
||||||
int msc1_mem, ret, total_tracks, num_sessions, num_tracks, i, j, track_lba;
|
|
||||||
int size, is_iso= 0;
|
|
||||||
struct isoburn *o;
|
|
||||||
struct isoburn_toc_disc *disc= NULL;
|
|
||||||
struct isoburn_toc_session **sessions= NULL;
|
|
||||||
struct isoburn_toc_track **tracks= NULL;
|
|
||||||
|
|
||||||
*lba= *track= *session= -1;
|
|
||||||
volid[0]= 0;
|
|
||||||
ret= isoburn_find_emulator(&o, d, 0);
|
|
||||||
if(ret < 0 || o == NULL)
|
|
||||||
return(-1);
|
|
||||||
msc1_mem= o->fabricated_msc1;
|
|
||||||
ret= isoburn_set_msc1(d, adr_mode, adr_value, 2 | (flag & 4));
|
|
||||||
if(ret <= 0)
|
|
||||||
return(ret);
|
|
||||||
*lba= o->fabricated_msc1;
|
|
||||||
|
|
||||||
disc= isoburn_toc_drive_get_disc(d);
|
|
||||||
if(disc==NULL)
|
|
||||||
{ret= -1; goto ex;} /* cannot happen because checked by isoburn_set_msc1 */
|
|
||||||
sessions= isoburn_toc_disc_get_sessions(disc, &num_sessions);
|
|
||||||
if(sessions==NULL || num_sessions<=0)
|
|
||||||
{ret= -1; goto ex;} /* cannot happen because checked by isoburn_set_msc1 */
|
|
||||||
total_tracks= 0;
|
|
||||||
for(i=0; i<num_sessions && *session < 0; i++) {
|
|
||||||
tracks= isoburn_toc_session_get_tracks(sessions[i], &num_tracks);
|
|
||||||
if(tracks==NULL)
|
|
||||||
continue;
|
|
||||||
for(j= 0; j<num_tracks && *track < 0; j++) {
|
|
||||||
total_tracks++;
|
|
||||||
isoburn_get_track_lba(tracks[j], &track_lba, 0);
|
|
||||||
if(track_lba == *lba) {
|
|
||||||
*track= total_tracks;
|
|
||||||
*session= i + 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
ret= isoburn_read_iso_head(d, *lba, &size, volid, 1);
|
|
||||||
if(ret <= 0)
|
|
||||||
volid[0]= 0;
|
|
||||||
else
|
|
||||||
is_iso= 1;
|
|
||||||
|
|
||||||
ex:;
|
|
||||||
o->fabricated_msc1= msc1_mem;
|
|
||||||
return(2 - is_iso);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
data source for libisoburn.
|
data source for libisoburn.
|
||||||
|
|
||||||
Copyright 2007 - 2009 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
|
Copyright 2007 - 2008 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
|
||||||
and Thomas Schmitt <scdbackup@gmx.net>
|
and Thomas Schmitt <scdbackup@gmx.net>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
/*
|
/*
|
||||||
Class core of libisoburn.
|
Class core of libisoburn.
|
||||||
|
|
||||||
Copyright 2007 - 2009 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
|
Copyright 2007 - 2008 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
|
||||||
Thomas Schmitt <scdbackup@gmx.net>
|
Thomas Schmitt <scdbackup@gmx.net>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -353,7 +353,6 @@ int isoburn_prepare_disc_aux(struct burn_drive *in_d, struct burn_drive *out_d,
|
|||||||
IsoWriteOpts *wopts= NULL;
|
IsoWriteOpts *wopts= NULL;
|
||||||
enum burn_disc_status state;
|
enum burn_disc_status state;
|
||||||
int ret, fifo_chunks, lba, nwa, i, new_img, early_indev_release;
|
int ret, fifo_chunks, lba, nwa, i, new_img, early_indev_release;
|
||||||
uint32_t data_start= -1;
|
|
||||||
size_t buffer_size= 0, buffer_free= 0;
|
size_t buffer_size= 0, buffer_free= 0;
|
||||||
char msg[160];
|
char msg[160];
|
||||||
|
|
||||||
@ -405,7 +404,6 @@ int isoburn_prepare_disc_aux(struct burn_drive *in_d, struct burn_drive *out_d,
|
|||||||
iso_write_opts_set_rockridge(wopts, opts->rockridge);
|
iso_write_opts_set_rockridge(wopts, opts->rockridge);
|
||||||
iso_write_opts_set_joliet(wopts, opts->joliet);
|
iso_write_opts_set_joliet(wopts, opts->joliet);
|
||||||
iso_write_opts_set_iso1999(wopts, opts->iso1999);
|
iso_write_opts_set_iso1999(wopts, opts->iso1999);
|
||||||
iso_write_opts_set_aaip(wopts, opts->aaip);
|
|
||||||
iso_write_opts_set_omit_version_numbers(wopts, opts->omit_version_numbers);
|
iso_write_opts_set_omit_version_numbers(wopts, opts->omit_version_numbers);
|
||||||
iso_write_opts_set_allow_deep_paths(wopts, opts->allow_deep_paths);
|
iso_write_opts_set_allow_deep_paths(wopts, opts->allow_deep_paths);
|
||||||
iso_write_opts_set_allow_longer_paths(wopts, opts->allow_longer_paths);
|
iso_write_opts_set_allow_longer_paths(wopts, opts->allow_longer_paths);
|
||||||
@ -415,10 +413,6 @@ int isoburn_prepare_disc_aux(struct burn_drive *in_d, struct burn_drive *out_d,
|
|||||||
iso_write_opts_set_allow_full_ascii(wopts, opts->allow_full_ascii);
|
iso_write_opts_set_allow_full_ascii(wopts, opts->allow_full_ascii);
|
||||||
iso_write_opts_set_relaxed_vol_atts(wopts, 1);
|
iso_write_opts_set_relaxed_vol_atts(wopts, 1);
|
||||||
iso_write_opts_set_joliet_longer_paths(wopts, opts->joliet_longer_paths);
|
iso_write_opts_set_joliet_longer_paths(wopts, opts->joliet_longer_paths);
|
||||||
iso_write_opts_set_always_gmt(wopts, opts->always_gmt);
|
|
||||||
iso_write_opts_set_rrip_version_1_10(wopts, opts->rrip_version_1_10);
|
|
||||||
iso_write_opts_set_dir_rec_mtime(wopts, opts->dir_rec_mtime);
|
|
||||||
iso_write_opts_set_aaip_susp_1_10(wopts, opts->aaip_susp_1_10);
|
|
||||||
iso_write_opts_set_sort_files(wopts, opts->sort_files);
|
iso_write_opts_set_sort_files(wopts, opts->sort_files);
|
||||||
iso_write_opts_set_replace_mode(wopts, opts->replace_dir_mode,
|
iso_write_opts_set_replace_mode(wopts, opts->replace_dir_mode,
|
||||||
opts->replace_file_mode, opts->replace_uid, opts->replace_gid);
|
opts->replace_file_mode, opts->replace_uid, opts->replace_gid);
|
||||||
@ -472,16 +466,6 @@ int isoburn_prepare_disc_aux(struct burn_drive *in_d, struct burn_drive *out_d,
|
|||||||
isoburn_data_source_shutdown(in_o->iso_data_source, 0);
|
isoburn_data_source_shutdown(in_o->iso_data_source, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef Libisofs_has_iwo_get_data_starT
|
|
||||||
ret= iso_write_opts_get_data_start(wopts, &data_start, 0);
|
|
||||||
#else
|
|
||||||
ret= ISO_ERROR;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
opts->data_start_lba= -1;
|
|
||||||
if(ret > 0 && data_start <= 0x7FFFFFFF)
|
|
||||||
opts->data_start_lba= data_start;
|
|
||||||
|
|
||||||
/* TODO check return values for failure. propertly clean-up on error */
|
/* TODO check return values for failure. propertly clean-up on error */
|
||||||
|
|
||||||
out_o->iso_source= wsrc;
|
out_o->iso_source= wsrc;
|
||||||
@ -642,9 +626,6 @@ int isoburn_ropt_new(struct isoburn_read_opts **new_o, int flag)
|
|||||||
o->norock= 0;
|
o->norock= 0;
|
||||||
o->nojoliet= 0;
|
o->nojoliet= 0;
|
||||||
o->noiso1999= 1;
|
o->noiso1999= 1;
|
||||||
o->noaaip= 1;
|
|
||||||
o->noacl= 1;
|
|
||||||
o->noea= 1;
|
|
||||||
o->preferjoliet= 0;
|
o->preferjoliet= 0;
|
||||||
o->uid= geteuid();
|
o->uid= geteuid();
|
||||||
o->gid= getegid();
|
o->gid= getegid();
|
||||||
@ -678,9 +659,6 @@ int isoburn_ropt_set_extensions(struct isoburn_read_opts *o, int ext)
|
|||||||
o->noiso1999= !!(ext&4);
|
o->noiso1999= !!(ext&4);
|
||||||
o->preferjoliet= !!(ext&8);
|
o->preferjoliet= !!(ext&8);
|
||||||
o->pretend_blank= !!(ext&16);
|
o->pretend_blank= !!(ext&16);
|
||||||
o->noaaip= !!(ext & 32);
|
|
||||||
o->noacl= !!(ext & 64);
|
|
||||||
o->noea= !!(ext & 128);
|
|
||||||
return(1);
|
return(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -688,8 +666,7 @@ int isoburn_ropt_set_extensions(struct isoburn_read_opts *o, int ext)
|
|||||||
int isoburn_ropt_get_extensions(struct isoburn_read_opts *o, int *ext)
|
int isoburn_ropt_get_extensions(struct isoburn_read_opts *o, int *ext)
|
||||||
{
|
{
|
||||||
*ext= (!!o->norock) | ((!!o->nojoliet)<<1) | ((!!o->noiso1999)<<2) |
|
*ext= (!!o->norock) | ((!!o->nojoliet)<<1) | ((!!o->noiso1999)<<2) |
|
||||||
((!!o->preferjoliet)<<3) | ((!!o->pretend_blank)<<4) |
|
((!!o->preferjoliet)<<3) | ((!!o->pretend_blank)<<4);
|
||||||
((!!o->noaaip) << 5) | ((!!o->noacl) << 6) | ((!!o->noea) << 7);
|
|
||||||
return(1);
|
return(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -796,10 +773,6 @@ int isoburn_igopt_new(struct isoburn_imgen_opts **new_o, int flag)
|
|||||||
o->allow_lowercase= 0;
|
o->allow_lowercase= 0;
|
||||||
o->allow_full_ascii= 0;
|
o->allow_full_ascii= 0;
|
||||||
o->joliet_longer_paths= 0;
|
o->joliet_longer_paths= 0;
|
||||||
o->always_gmt= 0;
|
|
||||||
o->rrip_version_1_10= 0;
|
|
||||||
o->dir_rec_mtime= 0;
|
|
||||||
o->aaip_susp_1_10= 0;
|
|
||||||
o->sort_files= 0;
|
o->sort_files= 0;
|
||||||
o->replace_dir_mode= 0;
|
o->replace_dir_mode= 0;
|
||||||
o->replace_file_mode= 0;
|
o->replace_file_mode= 0;
|
||||||
@ -809,10 +782,9 @@ int isoburn_igopt_new(struct isoburn_imgen_opts **new_o, int flag)
|
|||||||
o->file_mode= 0444;
|
o->file_mode= 0444;
|
||||||
o->uid= 0;
|
o->uid= 0;
|
||||||
o->gid= 0;
|
o->gid= 0;
|
||||||
o->output_charset= NULL;
|
o->output_charset= 0;
|
||||||
o->fifo_size= 4*1024*1024;
|
o->fifo_size= 4*1024*1024;
|
||||||
o->effective_lba= -1;
|
o->effective_lba= -1;
|
||||||
o->data_start_lba= -1;
|
|
||||||
return(1);
|
return(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -846,15 +818,13 @@ int isoburn_igopt_set_extensions(struct isoburn_imgen_opts *o, int ext)
|
|||||||
o->rockridge= !!(ext&1);
|
o->rockridge= !!(ext&1);
|
||||||
o->joliet= !!(ext&2);
|
o->joliet= !!(ext&2);
|
||||||
o->iso1999= !!(ext&4);
|
o->iso1999= !!(ext&4);
|
||||||
o->aaip= !!(ext & 32);
|
|
||||||
return(1);
|
return(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext)
|
int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext)
|
||||||
{
|
{
|
||||||
*ext= (!!o->rockridge) | ((!!o->joliet)<<1) | ((!!o->iso1999)<<2) |
|
*ext= (!!o->rockridge) | ((!!o->joliet)<<1) | ((!!o->iso1999)<<2);
|
||||||
((!!o->aaip) << 5);
|
|
||||||
return(1);
|
return(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -869,10 +839,6 @@ int isoburn_igopt_set_relaxed(struct isoburn_imgen_opts *o, int relax)
|
|||||||
o->allow_lowercase= !!(relax&32);
|
o->allow_lowercase= !!(relax&32);
|
||||||
o->allow_full_ascii= !!(relax&64);
|
o->allow_full_ascii= !!(relax&64);
|
||||||
o->joliet_longer_paths= !!(relax&128);
|
o->joliet_longer_paths= !!(relax&128);
|
||||||
o->always_gmt= !!(relax & isoburn_igopt_always_gmt);
|
|
||||||
o->rrip_version_1_10= !!(relax & isoburn_igopt_rrip_version_1_10);
|
|
||||||
o->dir_rec_mtime= !!(relax & isoburn_igopt_dir_rec_mtime);
|
|
||||||
o->aaip_susp_1_10= !!(relax & isoburn_igopt_aaip_susp_1_10);
|
|
||||||
return(1);
|
return(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -882,9 +848,7 @@ int isoburn_igopt_get_relaxed(struct isoburn_imgen_opts *o, int *relax)
|
|||||||
*relax= (!!o->omit_version_numbers) | ((!!o->allow_deep_paths)<<1) |
|
*relax= (!!o->omit_version_numbers) | ((!!o->allow_deep_paths)<<1) |
|
||||||
((!!o->allow_longer_paths)<<2) | ((!!o->max_37_char_filenames)<<3) |
|
((!!o->allow_longer_paths)<<2) | ((!!o->max_37_char_filenames)<<3) |
|
||||||
((!!o->no_force_dots)<<4) | ((!!o->allow_lowercase)<<5) |
|
((!!o->no_force_dots)<<4) | ((!!o->allow_lowercase)<<5) |
|
||||||
((!!o->allow_full_ascii)<<6) | ((!!o->joliet_longer_paths)<<7) |
|
((!!o->allow_full_ascii)<<6) | ((!!o->joliet_longer_paths)<<7);
|
||||||
((!!o->always_gmt)<<8) | ((!!o->rrip_version_1_10)<<9) |
|
|
||||||
((!!o->dir_rec_mtime)<<10) | ((!!o->aaip_susp_1_10)<<11);
|
|
||||||
return(1);
|
return(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -987,9 +951,3 @@ int isoburn_igopt_get_effective_lba(struct isoburn_imgen_opts *o, int *lba)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int isoburn_igopt_get_data_start(struct isoburn_imgen_opts *o, int *lba)
|
|
||||||
{
|
|
||||||
*lba= o->data_start_lba;
|
|
||||||
return(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
@ -250,12 +250,6 @@ struct isoburn_read_opts {
|
|||||||
unsigned int norock:1; /*< Do not read Rock Ridge extensions */
|
unsigned int norock:1; /*< Do not read Rock Ridge extensions */
|
||||||
unsigned int nojoliet:1; /*< Do not read Joliet extensions */
|
unsigned int nojoliet:1; /*< Do not read Joliet extensions */
|
||||||
unsigned int noiso1999:1; /*< Do not read ISO 9660:1999 enhanced tree */
|
unsigned int noiso1999:1; /*< Do not read ISO 9660:1999 enhanced tree */
|
||||||
|
|
||||||
/* ts A90121 */
|
|
||||||
unsigned int noaaip:1; /* Do not read AAIP for ACL and EA */
|
|
||||||
unsigned int noacl:1; /* Do not read ACL from external file objects */
|
|
||||||
unsigned int noea:1; /* Do not read XFS-style EA from externals */
|
|
||||||
|
|
||||||
unsigned int preferjoliet:1;
|
unsigned int preferjoliet:1;
|
||||||
/*< When both Joliet and RR extensions are present, the RR
|
/*< When both Joliet and RR extensions are present, the RR
|
||||||
* tree is used. If you prefer using Joliet, set this to 1. */
|
* tree is used. If you prefer using Joliet, set this to 1. */
|
||||||
@ -308,9 +302,6 @@ struct isoburn_imgen_opts {
|
|||||||
unsigned int joliet :1;
|
unsigned int joliet :1;
|
||||||
unsigned int iso1999 :1;
|
unsigned int iso1999 :1;
|
||||||
|
|
||||||
/* ts A90121 */
|
|
||||||
unsigned int aaip:1; /* Write eventual AAIP info containing ACL and EA */
|
|
||||||
|
|
||||||
/* relaxed constraints */
|
/* relaxed constraints */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -366,31 +357,6 @@ struct isoburn_imgen_opts {
|
|||||||
*/
|
*/
|
||||||
unsigned int joliet_longer_paths :1;
|
unsigned int joliet_longer_paths :1;
|
||||||
|
|
||||||
/**
|
|
||||||
* Store timestamps as GMT rather than in local time.
|
|
||||||
*/
|
|
||||||
unsigned int always_gmt :1;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Write Rock Ridge info as of specification RRIP-1.10 rather than
|
|
||||||
* RRIP-1.12: signature "RRIP_1991A" rather than "IEEE_1282",
|
|
||||||
* field PX without file serial number
|
|
||||||
*/
|
|
||||||
unsigned int rrip_version_1_10 :1;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Store as ECMA-119 Directory Record timestamp the mtime
|
|
||||||
* of the source rather than the image creation time.
|
|
||||||
*/
|
|
||||||
unsigned int dir_rec_mtime :1;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Write AAIP as extension according to SUSP 1.10 rather than SUSP 1.12.
|
|
||||||
* I.e. without announcing it by an ER field and thus without the need
|
|
||||||
* to preceed the RRIP fields by an ES and to preceed the AA field by ES.
|
|
||||||
*/
|
|
||||||
unsigned int aaip_susp_1_10 :1;
|
|
||||||
|
|
||||||
unsigned int sort_files:1;
|
unsigned int sort_files:1;
|
||||||
/**< If files should be sorted based on their weight. */
|
/**< If files should be sorted based on their weight. */
|
||||||
|
|
||||||
@ -430,19 +396,12 @@ struct isoburn_imgen_opts {
|
|||||||
int fifo_size;
|
int fifo_size;
|
||||||
|
|
||||||
|
|
||||||
/** Output value: Block address of session start as evaluated from media
|
/** Output value: Block address of session start as evaluatedfrom media
|
||||||
and other options by libisoburn and libburn.
|
and other options by libisoburn and libburn.
|
||||||
If <0 : Invalid
|
If <0 : Invalid
|
||||||
If >=0: Valid block number. Block size is always 2 KiB.
|
If >=0: Valid block number. Block size is always 2 KiB.
|
||||||
*/
|
*/
|
||||||
int effective_lba;
|
int effective_lba;
|
||||||
|
|
||||||
/** Output value: Block address of data section start as predicted by
|
|
||||||
libisofs.
|
|
||||||
If < 16: Invalid
|
|
||||||
If >=16: Valid block number. Block size is always 2 KiB.
|
|
||||||
*/
|
|
||||||
int data_start_lba;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
/*
|
/*
|
||||||
libisofs related functions of libisoburn.
|
libisofs related functions of libisoburn.
|
||||||
|
|
||||||
Copyright 2007 - 2009 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
|
Copyright 2007 - 2008 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
|
||||||
Thomas Schmitt <scdbackup@gmx.net>
|
Thomas Schmitt <scdbackup@gmx.net>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -27,8 +27,6 @@
|
|||||||
|
|
||||||
#endif /* Xorriso_standalonE */
|
#endif /* Xorriso_standalonE */
|
||||||
|
|
||||||
#define Libisoburn_with_aaiP yes
|
|
||||||
|
|
||||||
#include "isoburn.h"
|
#include "isoburn.h"
|
||||||
#include "libisoburn.h"
|
#include "libisoburn.h"
|
||||||
|
|
||||||
@ -168,8 +166,6 @@ create_blank_image:;
|
|||||||
iso_image_ref(*image); /*protects object from premature free*/
|
iso_image_ref(*image); /*protects object from premature free*/
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
iso_image_set_ignore_aclea(*image,
|
|
||||||
(!!(read_opts->noacl)) | ((!!read_opts->noea) << 1) );
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -202,11 +198,6 @@ create_blank_image:;
|
|||||||
/* Important: do not return until iso_read_opts_free() */
|
/* Important: do not return until iso_read_opts_free() */
|
||||||
iso_read_opts_set_start_block(ropts, ms_block);
|
iso_read_opts_set_start_block(ropts, ms_block);
|
||||||
iso_read_opts_set_no_rockridge(ropts, read_opts->norock);
|
iso_read_opts_set_no_rockridge(ropts, read_opts->norock);
|
||||||
|
|
||||||
#ifdef Libisoburn_with_aaiP
|
|
||||||
iso_read_opts_set_no_aaip(ropts, read_opts->noaaip);
|
|
||||||
#endif /* Libisoburn_with_aaiP */
|
|
||||||
|
|
||||||
iso_read_opts_set_no_joliet(ropts, read_opts->nojoliet);
|
iso_read_opts_set_no_joliet(ropts, read_opts->nojoliet);
|
||||||
iso_read_opts_set_no_iso1999(ropts, read_opts->noiso1999);
|
iso_read_opts_set_no_iso1999(ropts, read_opts->noiso1999);
|
||||||
iso_read_opts_set_preferjoliet(ropts, read_opts->preferjoliet);
|
iso_read_opts_set_preferjoliet(ropts, read_opts->preferjoliet);
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
/*
|
/*
|
||||||
API definition of libisoburn.
|
API definition of libisoburn.
|
||||||
|
|
||||||
Copyright 2007-2009 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
|
Copyright 2007-2008 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
|
||||||
and Thomas Schmitt <scdbackup@gmx.net>
|
and Thomas Schmitt <scdbackup@gmx.net>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -124,22 +124,6 @@ One should inquire isoburn_drive_wrote_well() to learn about overall success.
|
|||||||
Finally one must call isoburn_activate_session() which will complete any
|
Finally one must call isoburn_activate_session() which will complete any
|
||||||
eventual multi-session emulation.
|
eventual multi-session emulation.
|
||||||
|
|
||||||
|
|
||||||
Application Constraints
|
|
||||||
|
|
||||||
Applications shall include libisofs/libisofs.h , libburn/libburn.h and this
|
|
||||||
file itself: libisoburn/libisoburn.h .
|
|
||||||
They shall link with -lisofs -lburn -lisoburn or with the .o files emerging
|
|
||||||
from building those libraries from their sources.
|
|
||||||
|
|
||||||
Applications must use 64 bit off_t, e.g. on 32-bit Linux by defining
|
|
||||||
#define _LARGEFILE_SOURCE
|
|
||||||
#define _FILE_OFFSET_BITS 64
|
|
||||||
or take special precautions to interface with the library by 64 bit integers
|
|
||||||
where above .h files prescribe off_t. Not to use 64 bit file i/o will keep
|
|
||||||
the application from producing and processing ISO images of more than 2 GB
|
|
||||||
size.
|
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@ -216,15 +200,15 @@ void isoburn_version(int *major, int *minor, int *micro);
|
|||||||
*/
|
*/
|
||||||
#define isoburn_libisofs_req_major 0
|
#define isoburn_libisofs_req_major 0
|
||||||
#define isoburn_libisofs_req_minor 6
|
#define isoburn_libisofs_req_minor 6
|
||||||
#define isoburn_libisofs_req_micro 14
|
#define isoburn_libisofs_req_micro 10
|
||||||
|
|
||||||
/** The minimum version of libburn to be used with this version of libisoburn
|
/** The minimum version of libburn to be used with this version of libisoburn
|
||||||
at compile time.
|
at compile time.
|
||||||
@since 0.1.0
|
@since 0.1.0
|
||||||
*/
|
*/
|
||||||
#define isoburn_libburn_req_major 0
|
#define isoburn_libburn_req_major 0
|
||||||
#define isoburn_libburn_req_minor 6
|
#define isoburn_libburn_req_minor 5
|
||||||
#define isoburn_libburn_req_micro 0
|
#define isoburn_libburn_req_micro 4
|
||||||
|
|
||||||
|
|
||||||
/** The minimum version of libisofs to be used with this version of libisoburn
|
/** The minimum version of libisofs to be used with this version of libisoburn
|
||||||
@ -259,8 +243,8 @@ int isoburn_libburn_req(int *major, int *minor, int *micro);
|
|||||||
@since 0.1.0
|
@since 0.1.0
|
||||||
*/
|
*/
|
||||||
#define isoburn_header_version_major 0
|
#define isoburn_header_version_major 0
|
||||||
#define isoburn_header_version_minor 3
|
#define isoburn_header_version_minor 2
|
||||||
#define isoburn_header_version_micro 4
|
#define isoburn_header_version_micro 8
|
||||||
/** Note:
|
/** Note:
|
||||||
Above version numbers are also recorded in configure.ac because libtool
|
Above version numbers are also recorded in configure.ac because libtool
|
||||||
wants them as parameters at build time.
|
wants them as parameters at build time.
|
||||||
@ -352,8 +336,7 @@ int isoburn_set_msgs_submit(int (*msgs_submit)(void *handle, int error_code,
|
|||||||
(cdrom/burner). Thus use with driveno 0 only. On failure
|
(cdrom/burner). Thus use with driveno 0 only. On failure
|
||||||
the array has no valid elements at all.
|
the array has no valid elements at all.
|
||||||
The returned array should be freed via burn_drive_info_free()
|
The returned array should be freed via burn_drive_info_free()
|
||||||
when the drive is no longer needed. But before this is done
|
when the drive is no longer needed.
|
||||||
one has to call isoburn_drive_release(drive_infos[0].drive).
|
|
||||||
@param adr The persistent address of the desired drive.
|
@param adr The persistent address of the desired drive.
|
||||||
@param load 1 attempt to load the disc tray. 0 no attempt,rather failure.
|
@param load 1 attempt to load the disc tray. 0 no attempt,rather failure.
|
||||||
@return 1 = success , 0 = drive not found , <0 = other error
|
@return 1 = success , 0 = drive not found , <0 = other error
|
||||||
@ -370,8 +353,7 @@ int isoburn_drive_scan_and_grab(struct burn_drive_info *drive_infos[],
|
|||||||
(cdrom/burner). Thus use with driveno 0 only. On failure
|
(cdrom/burner). Thus use with driveno 0 only. On failure
|
||||||
the array has no valid elements at all.
|
the array has no valid elements at all.
|
||||||
The returned array should be freed via burn_drive_info_free()
|
The returned array should be freed via burn_drive_info_free()
|
||||||
when the drive is no longer needed. But before this is done
|
when the drive is no longer needed.
|
||||||
one has to call isoburn_drive_release(drive_infos[0].drive).
|
|
||||||
@param adr The persistent address of the desired drive.
|
@param adr The persistent address of the desired drive.
|
||||||
@param flag bit0= attempt to load the disc tray.
|
@param flag bit0= attempt to load the disc tray.
|
||||||
Else: failure if not loaded.
|
Else: failure if not loaded.
|
||||||
@ -383,9 +365,6 @@ int isoburn_drive_scan_and_grab(struct burn_drive_info *drive_infos[],
|
|||||||
(depending on media type and drive this might
|
(depending on media type and drive this might
|
||||||
help or it might make the resulting toc even worse)
|
help or it might make the resulting toc even worse)
|
||||||
bit4= do not emulate table of content on overwriteable media
|
bit4= do not emulate table of content on overwriteable media
|
||||||
bit5= ignore ACL from external filesystems
|
|
||||||
bit6= ignore POSIX Extended Attributes from external
|
|
||||||
filesystems
|
|
||||||
@return 1 = success , 0 = drive not found , <0 = other error
|
@return 1 = success , 0 = drive not found , <0 = other error
|
||||||
*/
|
*/
|
||||||
int isoburn_drive_aquire(struct burn_drive_info *drive_infos[],
|
int isoburn_drive_aquire(struct burn_drive_info *drive_infos[],
|
||||||
@ -396,7 +375,6 @@ int isoburn_drive_aquire(struct burn_drive_info *drive_infos[],
|
|||||||
Wrapper for: burn_drive_grab()
|
Wrapper for: burn_drive_grab()
|
||||||
@since 0.1.0
|
@since 0.1.0
|
||||||
@param drive The drive to grab. E.g. drive_infos[1].drive .
|
@param drive The drive to grab. E.g. drive_infos[1].drive .
|
||||||
Call isoburn_drive_release(drive) when it it no longer needed.
|
|
||||||
@param load 1 attempt to load the disc tray. 0 no attempt, rather failure.
|
@param load 1 attempt to load the disc tray. 0 no attempt, rather failure.
|
||||||
@return 1 success, <=0 failure
|
@return 1 success, <=0 failure
|
||||||
*/
|
*/
|
||||||
@ -472,14 +450,12 @@ void isoburn_disc_erase(struct burn_drive *drive, int fast);
|
|||||||
3= adr_value itself is the lba to be used
|
3= adr_value itself is the lba to be used
|
||||||
4= start lba of last session with volume id
|
4= start lba of last session with volume id
|
||||||
given by adr_value
|
given by adr_value
|
||||||
@param adr_value A string describing the value to be eventually used.
|
@parm adr_value A string describing the value to be eventually used.
|
||||||
@param flag Bitfield for control purposes.
|
@param flag Bitfield for control purposes.
|
||||||
bit0= @since 0.2.2
|
bit0= @since 0.2.2
|
||||||
with adr_mode 3: adr_value might be 16 blocks too high
|
with adr_mode 3: adr_value might be 16 blocks too high
|
||||||
(e.g. -C stemming from growisofs). Probe for ISO head
|
(e.g. -C stemming from growisofs). Probe for ISO head
|
||||||
at adr_value-16 and eventually adjust setting.
|
at adr_value-16 and eventually adjust setting.
|
||||||
bit1= insist in seeing a disc object with at least one session
|
|
||||||
bit2= with adr_mode 4: use adr_value as regular expression
|
|
||||||
*/
|
*/
|
||||||
int isoburn_set_msc1(struct burn_drive *d, int adr_mode, char *adr_value,
|
int isoburn_set_msc1(struct burn_drive *d, int adr_mode, char *adr_value,
|
||||||
int flag);
|
int flag);
|
||||||
@ -624,35 +600,6 @@ int isoburn_read_iso_head(struct burn_drive *d, int lba,
|
|||||||
int *image_blocks, char *info, int flag);
|
int *image_blocks, char *info, int flag);
|
||||||
|
|
||||||
|
|
||||||
/** Try to convert the given entity address into various entity addresses
|
|
||||||
which would describe it.
|
|
||||||
Note: Sessions and tracks are counted beginning with 1, not with 0.
|
|
||||||
@since 0.3.2
|
|
||||||
@param drive The drive where msc1 is to be set
|
|
||||||
@param adr_mode Determines how to interpret the input adr_value.
|
|
||||||
If adr_value shall represent a number then decimal ASCII
|
|
||||||
digits are expected.
|
|
||||||
0= start lba of last session in TOC, ignore adr_value
|
|
||||||
1= start lba of session number given by adr_value
|
|
||||||
2= start lba of track given number by adr_value
|
|
||||||
3= adr_value itself is the lba to be used
|
|
||||||
4= start lba of last session with volume id
|
|
||||||
given by adr_value
|
|
||||||
@param adr_value A string describing the value to be eventually used.
|
|
||||||
@param lba returns the block address of the entity, -1 means invalid
|
|
||||||
@param track returns the track number of the entity, -1 means invalid
|
|
||||||
@param session returns the session number of the entity, -1 means invalid
|
|
||||||
@param volid returns the volume id of the entity if it is a ISO session
|
|
||||||
@param flag Bitfield for control purposes.
|
|
||||||
bit2= with adr_mode 4: use adr_value as regular expression
|
|
||||||
@return <=0 error , 1 ok, ISO session, 2 ok, not an ISO session
|
|
||||||
*/
|
|
||||||
int isoburn_get_mount_params(struct burn_drive *d,
|
|
||||||
int adr_mode, char *adr_value,
|
|
||||||
int *lba, int *track, int *session,
|
|
||||||
char volid[33], int flag);
|
|
||||||
|
|
||||||
|
|
||||||
/* ----------------------------------------------------------------------- */
|
/* ----------------------------------------------------------------------- */
|
||||||
/*
|
/*
|
||||||
|
|
||||||
@ -701,18 +648,6 @@ int isoburn_ropt_destroy(struct isoburn_read_opts **o, int flag);
|
|||||||
tree is used. If you prefer using Joliet, set this to 1.
|
tree is used. If you prefer using Joliet, set this to 1.
|
||||||
bit4= pretend_blank
|
bit4= pretend_blank
|
||||||
Always create empty image.Ignore any image on input drive.
|
Always create empty image.Ignore any image on input drive.
|
||||||
bit5= noaaip
|
|
||||||
@since 0.3.4
|
|
||||||
Do not load AAIP information from image. This information
|
|
||||||
eventually contains ACL or XFS-style Extended Attributes.
|
|
||||||
bit6= noacl
|
|
||||||
@since 0.3.4
|
|
||||||
Do not obtain ACL from external filesystem objects (e.g.
|
|
||||||
local filesystem files).
|
|
||||||
bit7= noea
|
|
||||||
@since 0.3.4
|
|
||||||
Do not obtain XFS-style Extended Attributes from external
|
|
||||||
filesystem objects (e.g. local filesystem files).
|
|
||||||
@return 1 success, <=0 failure
|
@return 1 success, <=0 failure
|
||||||
*/
|
*/
|
||||||
#define isoburn_ropt_norock 1
|
#define isoburn_ropt_norock 1
|
||||||
@ -720,10 +655,6 @@ int isoburn_ropt_destroy(struct isoburn_read_opts **o, int flag);
|
|||||||
#define isoburn_ropt_noiso1999 4
|
#define isoburn_ropt_noiso1999 4
|
||||||
#define isoburn_ropt_preferjoliet 8
|
#define isoburn_ropt_preferjoliet 8
|
||||||
#define isoburn_ropt_pretend_blank 16
|
#define isoburn_ropt_pretend_blank 16
|
||||||
#define isoburn_ropt_noaaip 32
|
|
||||||
#define isoburn_ropt_noacl 64
|
|
||||||
#define isoburn_ropt_noea 128
|
|
||||||
|
|
||||||
int isoburn_ropt_set_extensions(struct isoburn_read_opts *o, int ext);
|
int isoburn_ropt_set_extensions(struct isoburn_read_opts *o, int ext);
|
||||||
int isoburn_ropt_get_extensions(struct isoburn_read_opts *o, int *ext);
|
int isoburn_ropt_get_extensions(struct isoburn_read_opts *o, int *ext);
|
||||||
|
|
||||||
@ -799,13 +730,6 @@ int isoburn_ropt_get_input_charset(struct isoburn_read_opts *o,
|
|||||||
#define isoburn_ropt_has_joliet 2
|
#define isoburn_ropt_has_joliet 2
|
||||||
#define isoburn_ropt_has_iso1999 4
|
#define isoburn_ropt_has_iso1999 4
|
||||||
#define isoburn_ropt_has_el_torito 8
|
#define isoburn_ropt_has_el_torito 8
|
||||||
|
|
||||||
/* ts A90122 */
|
|
||||||
/* >>> to be implemented:
|
|
||||||
#define isoburn_ropt_has_acl 64
|
|
||||||
#define isoburn_ropt_ihas_ea 128
|
|
||||||
*/
|
|
||||||
|
|
||||||
int isoburn_ropt_get_size_what(struct isoburn_read_opts *o,
|
int isoburn_ropt_get_size_what(struct isoburn_read_opts *o,
|
||||||
uint32_t *size, int *has_what);
|
uint32_t *size, int *has_what);
|
||||||
|
|
||||||
@ -873,16 +797,11 @@ int isoburn_igopt_get_level(struct isoburn_imgen_opts *o, int *level);
|
|||||||
Weaker than RockRidge, but also readable with Linux.
|
Weaker than RockRidge, but also readable with Linux.
|
||||||
bit2= iso1999
|
bit2= iso1999
|
||||||
This is rather exotic. Better do not surprise the readers.
|
This is rather exotic. Better do not surprise the readers.
|
||||||
bit5= aaip
|
|
||||||
The libisofs specific SUSP based extension of ECMA-119 which
|
|
||||||
can encode ACL and XFS-style Extended Attributes.
|
|
||||||
@return 1 success, <=0 failure
|
@return 1 success, <=0 failure
|
||||||
*/
|
*/
|
||||||
#define isoburn_igopt_rockridge 1
|
#define isoburn_igopt_rockridge 1
|
||||||
#define isoburn_igopt_joliet 2
|
#define isoburn_igopt_joliet 2
|
||||||
#define isoburn_igopt_iso1999 4
|
#define isoburn_igopt_iso1999 4
|
||||||
/* ts A90122 */
|
|
||||||
#define isoburn_igopt_aaip 32
|
|
||||||
int isoburn_igopt_set_extensions(struct isoburn_imgen_opts *o, int ext);
|
int isoburn_igopt_set_extensions(struct isoburn_imgen_opts *o, int ext);
|
||||||
int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext);
|
int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext);
|
||||||
|
|
||||||
@ -923,27 +842,6 @@ int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext);
|
|||||||
bit7= joliet_longer_paths
|
bit7= joliet_longer_paths
|
||||||
Allow paths in the Joliet tree to have more than
|
Allow paths in the Joliet tree to have more than
|
||||||
240 characters.
|
240 characters.
|
||||||
bit8= always_gmt
|
|
||||||
Write timestamps as GMT although the specs prescribe local
|
|
||||||
time with eventual non-zero timezone offset. Negative
|
|
||||||
timezones (west of GMT) can trigger bugs in some operating
|
|
||||||
systems which typically appear in mounted ISO images as if
|
|
||||||
the timezone shift from GMT was applied twice
|
|
||||||
(e.g. in New York 22:36 becomes 17:36).
|
|
||||||
bit9= rrip_version_1_10
|
|
||||||
Write Rock Ridge info as of specification RRIP-1.10 rather
|
|
||||||
than RRIP-1.12: signature "RRIP_1991A" rather than
|
|
||||||
"IEEE_1282", field PX without file serial number.
|
|
||||||
bit10= dir_rec_mtime
|
|
||||||
Store as ECMA-119 Directory Record timestamp the mtime
|
|
||||||
of the source rather than the image creation time.
|
|
||||||
bit11= aaip_susp_1_10
|
|
||||||
Write AAIP fields without announcing AAIP by an ER field and
|
|
||||||
without distinguishing RRIP fields from the AAIP field by
|
|
||||||
prefixed ES fields. This saves 5 to 10 bytes per file and
|
|
||||||
might avoid problems with readers which only accept RRIP.
|
|
||||||
SUSP-1.10 allows it, SUSP-1.12 frowns on it.
|
|
||||||
|
|
||||||
@return 1 success, <=0 failure
|
@return 1 success, <=0 failure
|
||||||
*/
|
*/
|
||||||
#define isoburn_igopt_omit_version_numbers 1
|
#define isoburn_igopt_omit_version_numbers 1
|
||||||
@ -954,10 +852,6 @@ int isoburn_igopt_get_extensions(struct isoburn_imgen_opts *o, int *ext);
|
|||||||
#define isoburn_igopt_allow_lowercase 32
|
#define isoburn_igopt_allow_lowercase 32
|
||||||
#define isoburn_igopt_allow_full_ascii 64
|
#define isoburn_igopt_allow_full_ascii 64
|
||||||
#define isoburn_igopt_joliet_longer_paths 128
|
#define isoburn_igopt_joliet_longer_paths 128
|
||||||
#define isoburn_igopt_always_gmt 256
|
|
||||||
#define isoburn_igopt_rrip_version_1_10 512
|
|
||||||
#define isoburn_igopt_dir_rec_mtime 1024
|
|
||||||
#define isoburn_igopt_aaip_susp_1_10 2048
|
|
||||||
int isoburn_igopt_set_relaxed(struct isoburn_imgen_opts *o, int relax);
|
int isoburn_igopt_set_relaxed(struct isoburn_imgen_opts *o, int relax);
|
||||||
int isoburn_igopt_get_relaxed(struct isoburn_imgen_opts *o, int *relax);
|
int isoburn_igopt_get_relaxed(struct isoburn_imgen_opts *o, int *relax);
|
||||||
|
|
||||||
@ -1060,21 +954,6 @@ int isoburn_igopt_get_fifo_size(struct isoburn_imgen_opts *o, int *fifo_size);
|
|||||||
int isoburn_igopt_get_effective_lba(struct isoburn_imgen_opts *o, int *lba);
|
int isoburn_igopt_get_effective_lba(struct isoburn_imgen_opts *o, int *lba);
|
||||||
|
|
||||||
|
|
||||||
/** Obtain after image preparation the lowest block address of file content
|
|
||||||
data. Failure can occur if libisofs is too old to provide this information,
|
|
||||||
if the result exceeds 31 bit, or if the call is made before image
|
|
||||||
preparation.
|
|
||||||
This value cannot be set by the application but only be inquired.
|
|
||||||
@since 0.3.4
|
|
||||||
@param o The option set to work on
|
|
||||||
@param lba The block number of the session start on media.
|
|
||||||
<0 means that no address has been determined yet.
|
|
||||||
@return 1 success, <=0 failure
|
|
||||||
*/
|
|
||||||
int isoburn_igopt_get_data_start(struct isoburn_imgen_opts *o, int *lba);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* ----------------------------------------------------------------------- */
|
/* ----------------------------------------------------------------------- */
|
||||||
/* End of Options for image generation */
|
/* End of Options for image generation */
|
||||||
/* ----------------------------------------------------------------------- */
|
/* ----------------------------------------------------------------------- */
|
||||||
@ -1346,7 +1225,7 @@ void isoburn_disc_write(struct burn_write_opts *o, struct burn_disc *disc);
|
|||||||
Hint: If only burn_write_opts and not burn_drive is known, then the drive
|
Hint: If only burn_write_opts and not burn_drive is known, then the drive
|
||||||
can be obtained by burn_write_opts_get_drive().
|
can be obtained by burn_write_opts_get_drive().
|
||||||
@since 0.1.0
|
@since 0.1.0
|
||||||
@param d The drive to which the track with the fifo gets burned.
|
@parm d The drive to which the track with the fifo gets burned.
|
||||||
@param size The total size of the fifo
|
@param size The total size of the fifo
|
||||||
@param free_bytes The current free capacity of the fifo
|
@param free_bytes The current free capacity of the fifo
|
||||||
@param status_text Returns a pointer to a constant text, see below
|
@param status_text Returns a pointer to a constant text, see below
|
||||||
|
@ -4,8 +4,8 @@
|
|||||||
xorriso. By Thomas Schmitt <scdbackup@gmx.net>
|
xorriso. By Thomas Schmitt <scdbackup@gmx.net>
|
||||||
Integrated sub project of libburnia-project.org but also published via:
|
Integrated sub project of libburnia-project.org but also published via:
|
||||||
http://scdbackup.sourceforge.net/xorriso_eng.html
|
http://scdbackup.sourceforge.net/xorriso_eng.html
|
||||||
http://scdbackup.sourceforge.net/xorriso-0.3.4.pl00.tar.gz
|
http://scdbackup.sourceforge.net/xorriso-0.2.8.pl00.tar.gz
|
||||||
Copyright (C) 2006-2009 Thomas Schmitt, provided under GPL version 2.
|
Copyright (C) 2006-2008 Thomas Schmitt, provided under GPL version 2.
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
@ -16,8 +16,7 @@ information of existing ISO images and it writes the session results to
|
|||||||
optical media or to filesystem objects.
|
optical media or to filesystem objects.
|
||||||
Vice versa xorriso is able to restore file objects from ISO 9660 filesystems.
|
Vice versa xorriso is able to restore file objects from ISO 9660 filesystems.
|
||||||
|
|
||||||
Currently it is supported on Linux with kernels >= 2.4 and on FreeBSD versions
|
Currently it is only supported on Linux with kernels >= 2.4.
|
||||||
with ATAPI/CAM support enabled in the kernel, see atapicam(4).
|
|
||||||
|
|
||||||
A special property of xorriso is that it needs neither an external ISO 9660
|
A special property of xorriso is that it needs neither an external ISO 9660
|
||||||
formatter program nor an external burn program for CD or DVD but rather
|
formatter program nor an external burn program for CD or DVD but rather
|
||||||
@ -33,20 +32,14 @@ The most simple way to get xorriso from source code is the xorriso standalone
|
|||||||
tarball.
|
tarball.
|
||||||
|
|
||||||
Prerequisites:
|
Prerequisites:
|
||||||
The tarball contains anything that is needed except the following system
|
The tarball contains anything that is needed except libc and libpthread.
|
||||||
components:
|
libreadline and the readline-dev headers will make dialog mode more convenient,
|
||||||
libc, libpthread
|
but are not mandatory.
|
||||||
plus on FreeBSD: libiconv, libcam
|
|
||||||
Optional at compile time are:
|
|
||||||
libreadline and the readline-dev headers make dialog mode more convenient.
|
|
||||||
on Linux: libacl and libacl-devel allow getting and setting ACLs.
|
|
||||||
If they were present at compile time, then the optional libraries have to
|
|
||||||
be present at runtime, too.
|
|
||||||
|
|
||||||
Obtain xorriso-0.3.4.pl00.tar.gz, take it to a directory of your choice and do:
|
Obtain xorriso-0.2.8.pl00.tar.gz, take it to a directory of your choice and do:
|
||||||
|
|
||||||
tar xzf xorriso-0.3.4.pl00.tar.gz
|
tar xzf xorriso-0.2.8.pl00.tar.gz
|
||||||
cd xorriso-0.3.4
|
cd xorriso-0.2.8
|
||||||
|
|
||||||
Within that directory execute:
|
Within that directory execute:
|
||||||
|
|
||||||
@ -60,8 +53,8 @@ which you may strip to reduce it in size
|
|||||||
strip ./xorriso/xorriso
|
strip ./xorriso/xorriso
|
||||||
|
|
||||||
You may copy or move it to a directory where it can be found by the shell,
|
You may copy or move it to a directory where it can be found by the shell,
|
||||||
or you may execute xorriso at the place where it was built,
|
you may execute xorriso at the place where it was built, or you may execute
|
||||||
or you may execute as superuser:
|
as superuser:
|
||||||
make install
|
make install
|
||||||
|
|
||||||
For general concepts, options and usage examples see
|
For general concepts, options and usage examples see
|
||||||
@ -87,9 +80,6 @@ development package is installed, then rather build xorriso by:
|
|||||||
make clean ; make
|
make clean ; make
|
||||||
Never omit the "make clean" command after switching libreadline enabling.
|
Never omit the "make clean" command after switching libreadline enabling.
|
||||||
|
|
||||||
If you want xorriso to report a "Build timestamp" with its option -version:
|
|
||||||
make buildstamped
|
|
||||||
|
|
||||||
|
|
||||||
Drives and Disk File Objects
|
Drives and Disk File Objects
|
||||||
|
|
||||||
@ -129,13 +119,9 @@ Better try to unmount an eventually mounted media before a write run.
|
|||||||
|
|
||||||
|
|
||||||
Besides true optical drives, xorriso can also address disk files as input or
|
Besides true optical drives, xorriso can also address disk files as input or
|
||||||
output drives. By default paths to files under /dev are accepted only if the
|
output drives. The addresses of the disk files have to be preceded by "stdio:".
|
||||||
device represents a real optical drive. Other device files may be addressed
|
|
||||||
by prepending "stdio:" to the path.
|
|
||||||
Like:
|
Like:
|
||||||
xorriso -dev stdio:/dev/sdb ...more arguments...
|
xorriso -dev stdio:/tmp/pseudo_drive ...more arguments...
|
||||||
This rule may be changed by xorriso option -drive_class.
|
|
||||||
Prefix "mmc:" causes a path to be accepted only if it is a real optical drive.
|
|
||||||
|
|
||||||
|
|
||||||
Testing
|
Testing
|
||||||
@ -206,9 +192,9 @@ and a matching dynamically linked xorriso binary.
|
|||||||
This binary is leaner but depends on properly installed libraries of suitable
|
This binary is leaner but depends on properly installed libraries of suitable
|
||||||
revision.
|
revision.
|
||||||
|
|
||||||
Dynamic library and compile time header requirements for libisoburn-0.3.4 :
|
Dynamic library and compile time header requirements for libisoburn-0.2.8 :
|
||||||
- libburn.so.4 , version libburn-0.6.0 or higher
|
- libburn.so.4 , version libburn-0.5.4 or higher
|
||||||
- libisofs.so.6 , version libisofs-0.6.14 or higher
|
- libisofs.so.6 , version libisofs-0.6.10 or higher
|
||||||
libisoburn and xorriso will not start with libraries which are older than their
|
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
|
headers seen at compile time. So compile in the oldest possible installation
|
||||||
setup unless you have reason to enforce a newer bug fix level.
|
setup unless you have reason to enforce a newer bug fix level.
|
||||||
@ -237,7 +223,7 @@ libburnia-project.org
|
|||||||
By Mario Danic <mario.danic@gmail.com>,
|
By Mario Danic <mario.danic@gmail.com>,
|
||||||
Vreixo Formoso <metalpain2002@yahoo.es>
|
Vreixo Formoso <metalpain2002@yahoo.es>
|
||||||
Thomas Schmitt <scdbackup@gmx.net>
|
Thomas Schmitt <scdbackup@gmx.net>
|
||||||
Copyright (C) 2006-2009 Mario Danic, Vreixo Formoso, Thomas Schmitt.
|
Copyright (C) 2006-2008 Mario Danic, Vreixo Formoso, Thomas Schmitt.
|
||||||
|
|
||||||
libburnia-project.org is inspired by and in other components still containing
|
libburnia-project.org is inspired by and in other components still containing
|
||||||
parts of old
|
parts of old
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# compile_xorriso.sh
|
# compile_xorriso.sh
|
||||||
# Copyright 2005 - 2009 Thomas Schmitt, scdbackup@gmx.net, GPL
|
# Copyright 2005 - 2008 Thomas Schmitt, scdbackup@gmx.net, GPL
|
||||||
#
|
#
|
||||||
# Not intended for general use in production installations !
|
# Not intended for general use in production installations !
|
||||||
# Rather use: ./bootstrap ; ./configure ; make
|
# Rather use: ./bootstrap ; ./configure ; make
|
||||||
@ -10,7 +10,7 @@
|
|||||||
# It is to be executed in a common parent of the directories given with
|
# It is to be executed in a common parent of the directories given with
|
||||||
# $isofs $isoburn $burn $xorr
|
# $isofs $isoburn $burn $xorr
|
||||||
|
|
||||||
isofs=./nglibisofs-develop/libisofs/libisofs_libisofs_la-
|
isofs=./nglibisofs-develop/libisofs
|
||||||
burn=./libburn-develop/libburn
|
burn=./libburn-develop/libburn
|
||||||
isoburn=./libisoburn-develop/libisoburn
|
isoburn=./libisoburn-develop/libisoburn
|
||||||
xorr=./libisoburn-develop/xorriso
|
xorr=./libisoburn-develop/xorriso
|
||||||
@ -59,32 +59,30 @@ do
|
|||||||
done
|
done
|
||||||
|
|
||||||
libisofs=
|
libisofs=
|
||||||
libisofs="$libisofs $isofs"buffer.o
|
libisofs="$libisofs $isofs"/buffer.o
|
||||||
libisofs="$libisofs $isofs"builder.o
|
libisofs="$libisofs $isofs"/builder.o
|
||||||
libisofs="$libisofs $isofs"data_source.o
|
libisofs="$libisofs $isofs"/data_source.o
|
||||||
libisofs="$libisofs $isofs"ecma119.o
|
libisofs="$libisofs $isofs"/ecma119.o
|
||||||
libisofs="$libisofs $isofs"ecma119_tree.o
|
libisofs="$libisofs $isofs"/ecma119_tree.o
|
||||||
libisofs="$libisofs $isofs"eltorito.o
|
libisofs="$libisofs $isofs"/eltorito.o
|
||||||
libisofs="$libisofs $isofs"filesrc.o
|
libisofs="$libisofs $isofs"/filesrc.o
|
||||||
libisofs="$libisofs $isofs"fs_image.o
|
libisofs="$libisofs $isofs"/fs_image.o
|
||||||
libisofs="$libisofs $isofs"fs_local.o
|
libisofs="$libisofs $isofs"/fs_local.o
|
||||||
libisofs="$libisofs $isofs"fsource.o
|
libisofs="$libisofs $isofs"/fsource.o
|
||||||
libisofs="$libisofs $isofs"image.o
|
libisofs="$libisofs $isofs"/image.o
|
||||||
libisofs="$libisofs $isofs"iso1999.o
|
libisofs="$libisofs $isofs"/iso1999.o
|
||||||
libisofs="$libisofs $isofs"joliet.o
|
libisofs="$libisofs $isofs"/joliet.o
|
||||||
libisofs="$libisofs $isofs"libiso_msgs.o
|
libisofs="$libisofs $isofs"/libiso_msgs.o
|
||||||
libisofs="$libisofs $isofs"messages.o
|
libisofs="$libisofs $isofs"/messages.o
|
||||||
libisofs="$libisofs $isofs"node.o
|
libisofs="$libisofs $isofs"/node.o
|
||||||
libisofs="$libisofs $isofs"rockridge.o
|
libisofs="$libisofs $isofs"/rockridge.o
|
||||||
libisofs="$libisofs $isofs"rockridge_read.o
|
libisofs="$libisofs $isofs"/rockridge_read.o
|
||||||
libisofs="$libisofs $isofs"stream.o
|
libisofs="$libisofs $isofs"/stream.o
|
||||||
libisofs="$libisofs $isofs"tree.o
|
libisofs="$libisofs $isofs"/tree.o
|
||||||
libisofs="$libisofs $isofs"util.o
|
libisofs="$libisofs $isofs"/util.o
|
||||||
libisofs="$libisofs $isofs"util_htable.o
|
libisofs="$libisofs $isofs"/util_htable.o
|
||||||
libisofs="$libisofs $isofs"util_rbtree.o
|
libisofs="$libisofs $isofs"/util_rbtree.o
|
||||||
libisofs="$libisofs $isofs"system_area.o
|
|
||||||
libisofs="$libisofs $isofs"make_isohybrid_mbr.o
|
|
||||||
libisofs="$libisofs $isofs"aaip_0_2.o
|
|
||||||
|
|
||||||
echo "Version timestamp : $(sed -e 's/#define Xorriso_timestamP "//' -e 's/"$//' "$xorr"/xorriso_timestamp.h)"
|
echo "Version timestamp : $(sed -e 's/#define Xorriso_timestamP "//' -e 's/"$//' "$xorr"/xorriso_timestamp.h)"
|
||||||
|
|
||||||
@ -92,7 +90,7 @@ date -u '+#define Xorriso_build_timestamP "%Y.%m.%d.%H%M%S"' >"$xorr"/xorriso_bu
|
|||||||
echo "Build timestamp : $(sed -e 's/#define Xorriso_build_timestamP "//' -e 's/"$//' "$xorr"/xorriso_buildstamp.h)"
|
echo "Build timestamp : $(sed -e 's/#define Xorriso_build_timestamP "//' -e 's/"$//' "$xorr"/xorriso_buildstamp.h)"
|
||||||
|
|
||||||
echo "compiling program $xorr/xorriso.c $static_opts $debug_opts $def_opts"
|
echo "compiling program $xorr/xorriso.c $static_opts $debug_opts $def_opts"
|
||||||
cc -I. -DXorriso_with_maiN $def_libreadline \
|
cc -I. -DXorriso_with_maiN -DXorriso_with_regeX $def_libreadline \
|
||||||
$warn_opts \
|
$warn_opts \
|
||||||
$static_opts \
|
$static_opts \
|
||||||
$debug_opts \
|
$debug_opts \
|
||||||
@ -141,8 +139,7 @@ cc -I. -DXorriso_with_maiN $def_libreadline \
|
|||||||
\
|
\
|
||||||
$link_libreadline \
|
$link_libreadline \
|
||||||
\
|
\
|
||||||
-lpthread \
|
-lpthread
|
||||||
-lacl
|
|
||||||
|
|
||||||
ret=$?
|
ret=$?
|
||||||
if test "$ret" = 0
|
if test "$ret" = 0
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
AC_INIT([xorriso], [0.3.4], [http://libburnia-project.org])
|
AC_INIT([xorriso], [0.2.8], [http://libburnia-project.org])
|
||||||
AC_PREREQ([2.50])
|
AC_PREREQ([2.50])
|
||||||
dnl AC_CONFIG_HEADER([config.h])
|
dnl AC_CONFIG_HEADER([config.h])
|
||||||
|
|
||||||
@ -8,15 +8,15 @@ AC_CANONICAL_TARGET
|
|||||||
AM_INIT_AUTOMAKE([subdir-objects])
|
AM_INIT_AUTOMAKE([subdir-objects])
|
||||||
|
|
||||||
BURN_MAJOR_VERSION=0
|
BURN_MAJOR_VERSION=0
|
||||||
BURN_MINOR_VERSION=6
|
BURN_MINOR_VERSION=5
|
||||||
BURN_MICRO_VERSION=3
|
BURN_MICRO_VERSION=5
|
||||||
AC_SUBST(BURN_MAJOR_VERSION)
|
AC_SUBST(BURN_MAJOR_VERSION)
|
||||||
AC_SUBST(BURN_MINOR_VERSION)
|
AC_SUBST(BURN_MINOR_VERSION)
|
||||||
AC_SUBST(BURN_MICRO_VERSION)
|
AC_SUBST(BURN_MICRO_VERSION)
|
||||||
|
|
||||||
LIBISOFS_MAJOR_VERSION=0
|
LIBISOFS_MAJOR_VERSION=0
|
||||||
LIBISOFS_MINOR_VERSION=6
|
LIBISOFS_MINOR_VERSION=6
|
||||||
LIBISOFS_MICRO_VERSION=15
|
LIBISOFS_MICRO_VERSION=10
|
||||||
AC_SUBST(LIBISOFS_MAJOR_VERSION)
|
AC_SUBST(LIBISOFS_MAJOR_VERSION)
|
||||||
AC_SUBST(LIBISOFS_MINOR_VERSION)
|
AC_SUBST(LIBISOFS_MINOR_VERSION)
|
||||||
AC_SUBST(LIBISOFS_MICRO_VERSION)
|
AC_SUBST(LIBISOFS_MICRO_VERSION)
|
||||||
@ -43,10 +43,6 @@ if test ! $ac_cv_func_fseeko; then
|
|||||||
AC_ERROR([Libburn requires largefile support.])
|
AC_ERROR([Libburn requires largefile support.])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
dnl If iconv(3) is in an extra libiconv, then it gets added to variable LIBS.
|
|
||||||
dnl If not, then no -liconv will be added.
|
|
||||||
AC_CHECK_LIB(iconv, iconv, , )
|
|
||||||
|
|
||||||
AC_PROG_LIBTOOL
|
AC_PROG_LIBTOOL
|
||||||
AC_SUBST(LIBTOOL_DEPS)
|
AC_SUBST(LIBTOOL_DEPS)
|
||||||
LIBTOOL="$LIBTOOL --silent"
|
LIBTOOL="$LIBTOOL --silent"
|
||||||
@ -116,35 +112,6 @@ fi
|
|||||||
AC_SUBST(READLINE_DEF)
|
AC_SUBST(READLINE_DEF)
|
||||||
|
|
||||||
|
|
||||||
AC_ARG_ENABLE(libacl,
|
|
||||||
[ --enable-libacl Enable use of libacl by libisofs, default=yes],
|
|
||||||
, enable_libacl=yes)
|
|
||||||
if test x$enable_libacl = xyes; then
|
|
||||||
dnl Check whether there is libacl-devel and libacl-runtime.
|
|
||||||
dnl If not, erase this macro which would enable use of acl_to_text and others
|
|
||||||
LIBACL_DEF="-DLibisofs_with_aaip_acL"
|
|
||||||
dnl The empty yes case obviously causes -lacl to be linked
|
|
||||||
AC_CHECK_HEADER(sys/acl.h, AC_CHECK_LIB(acl, acl_to_text, , LIBACL_DEF= ), LIBACL_DEF= )
|
|
||||||
else
|
|
||||||
LIBACL_DEF=
|
|
||||||
fi
|
|
||||||
AC_SUBST(LIBACL_DEF)
|
|
||||||
|
|
||||||
|
|
||||||
AC_ARG_ENABLE(xattr,
|
|
||||||
[ --enable-xattr Enable use of xattr by libisofs, default=yes],
|
|
||||||
, enable_xattr=yes)
|
|
||||||
if test x$enable_xattr = xyes; then
|
|
||||||
dnl Check whether there is the header for Linux xattr.
|
|
||||||
dnl If not, erase this macro which would enable use of listxattr and others
|
|
||||||
XATTR_DEF="-DLibisofs_with_aaip_xattR"
|
|
||||||
AC_CHECK_HEADER(attr/xattr.h, AC_CHECK_LIB(c, listxattr, X= , XATTR_DEF= ), XATTR_DEF= )
|
|
||||||
else
|
|
||||||
XATTR_DEF=
|
|
||||||
fi
|
|
||||||
AC_SUBST(XATTR_DEF)
|
|
||||||
|
|
||||||
|
|
||||||
AC_CONFIG_FILES([
|
AC_CONFIG_FILES([
|
||||||
Makefile
|
Makefile
|
||||||
version.h
|
version.h
|
||||||
|
@ -51,7 +51,7 @@ then
|
|||||||
-e 's/<b>Libburn drives:<\/b>/\ <BR><b>Libburn drives:<\/b>/' \
|
-e 's/<b>Libburn drives:<\/b>/\ <BR><b>Libburn drives:<\/b>/' \
|
||||||
-e 's/^-dev /\ \ -dev /' \
|
-e 's/^-dev /\ \ -dev /' \
|
||||||
-e 's/^-devices /\ \ -devices /' \
|
-e 's/^-devices /\ \ -devices /' \
|
||||||
-e 's/<b>Rock Ridge, POSIX, X\/Open, El Torito, ACL,/\ <BR><b>Rock Ridge, POSIX, X\/Open, El Torito, ACL,/' \
|
-e 's/<b>Rock Ridge, POSIX, X\/Open, and El Torito:<\/b>/\ <BR><b>Rock Ridge, POSIX, X\/Open, and El Torito:<\/b>/' \
|
||||||
-e 's/<b>Command processing:<\/b>/\ <BR><b>Command processing:<\/b>/' \
|
-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>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>Aquiring source and target drive:<\/b>/\ <BR><b>Aquiring source and target drive:<\/b><BR>\ <BR>/' \
|
||||||
@ -65,7 +65,6 @@ then
|
|||||||
-e 's/<b>Settings for result writing:<\/b>/\ <BR><b>Settings for result writing:<\/b><BR>\ <BR>/' \
|
-e 's/<b>Settings for result writing:<\/b>/\ <BR><b>Settings for result writing:<\/b><BR>\ <BR>/' \
|
||||||
-e 's/^706k = 706kB/\ \ 706k = 706kB/' \
|
-e 's/^706k = 706kB/\ \ 706k = 706kB/' \
|
||||||
-e 's/^5540k = 5540kB/\ \ 5540k = 5540kB/' \
|
-e 's/^5540k = 5540kB/\ \ 5540k = 5540kB/' \
|
||||||
-e 's/<b>Character sets:<\/b>/\ <BR><b>Character sets:<\/b><BR>\ <BR>/' \
|
|
||||||
-e 's/<b>Exception processing:<\/b>/\ <BR><b>Exception processing:<\/b><BR>\ <BR>/' \
|
-e 's/<b>Exception processing:<\/b>/\ <BR><b>Exception processing:<\/b><BR>\ <BR>/' \
|
||||||
-e 's/<b>El Torito bootable ISO images:<\/b>/\ <BR><b>El Torito bootable ISO images:<\/b><BR>\ <BR>/' \
|
-e 's/<b>El Torito bootable ISO images:<\/b>/\ <BR><b>El Torito bootable ISO images:<\/b><BR>\ <BR>/' \
|
||||||
-e 's/<b>Dialog mode control:<\/b>/\ <BR><b>Dialog mode control:<\/b><BR>\ <BR>/' \
|
-e 's/<b>Dialog mode control:<\/b>/\ <BR><b>Dialog mode control:<\/b><BR>\ <BR>/' \
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# make_xorriso_standalone.sh
|
# make_xorriso_standalone.sh
|
||||||
# Copyright 2008 - 2009 Thomas Schmitt, scdbackup@gmx.net, GPL
|
# Copyright 2008 Thomas Schmitt, scdbackup@gmx.net, GPL
|
||||||
#
|
#
|
||||||
# Not intended for general use in production installations !
|
# Not intended for general use in production installations !
|
||||||
#
|
#
|
||||||
@ -25,7 +25,7 @@
|
|||||||
current_dir=$(pwd)
|
current_dir=$(pwd)
|
||||||
lone_dir="$current_dir"/"xorriso-standalone"
|
lone_dir="$current_dir"/"xorriso-standalone"
|
||||||
|
|
||||||
xorriso_rev=0.3.4
|
xorriso_rev=0.2.8
|
||||||
# For unstable uploads:
|
# For unstable uploads:
|
||||||
# xorriso_pl=""
|
# xorriso_pl=""
|
||||||
# For stable releases:
|
# For stable releases:
|
||||||
@ -145,11 +145,9 @@ copy_files \
|
|||||||
|
|
||||||
create_dir "$lone_dir"/libisofs
|
create_dir "$lone_dir"/libisofs
|
||||||
create_dir "$lone_dir"/libisofs/filters
|
create_dir "$lone_dir"/libisofs/filters
|
||||||
create_dir "$lone_dir"/doc
|
|
||||||
goto_dir "$current_dir"/nglibisofs-develop
|
goto_dir "$current_dir"/nglibisofs-develop
|
||||||
copy_files libisofs/*.[ch] "$lone_dir"/libisofs
|
copy_files libisofs/*.[ch] "$lone_dir"/libisofs
|
||||||
copy_files libisofs/filters/*.[ch] "$lone_dir"/libisofs/filters
|
copy_files libisofs/filters/*.[ch] "$lone_dir"/libisofs/filters
|
||||||
copy_files doc/susp_aaip*.txt "$lone_dir"/doc
|
|
||||||
copy_files COPYRIGHT "$lone_dir"/libisofs
|
copy_files COPYRIGHT "$lone_dir"/libisofs
|
||||||
|
|
||||||
# To get a common version.h
|
# To get a common version.h
|
||||||
|
File diff suppressed because it is too large
Load Diff
3539
xorriso/xorriso.c
3539
xorriso/xorriso.c
File diff suppressed because it is too large
Load Diff
@ -2,7 +2,7 @@
|
|||||||
/* Command line oriented batch and dialog tool which creates, loads,
|
/* Command line oriented batch and dialog tool which creates, loads,
|
||||||
manipulates and burns ISO 9660 filesystem images.
|
manipulates and burns ISO 9660 filesystem images.
|
||||||
|
|
||||||
Copyright 2007-2009 Thomas Schmitt, <scdbackup@gmx.net>
|
Copyright 2007-2008 Thomas Schmitt, <scdbackup@gmx.net>
|
||||||
|
|
||||||
Provided under GPL version 2.
|
Provided under GPL version 2.
|
||||||
|
|
||||||
@ -263,11 +263,6 @@ int Xorriso_lst_destroy_all(struct Xorriso_lsT **lstring, int flag);
|
|||||||
/* Option -abort_on */
|
/* Option -abort_on */
|
||||||
int Xorriso_option_abort_on(struct XorrisO *xorriso, char *severity, int flag);
|
int Xorriso_option_abort_on(struct XorrisO *xorriso, char *severity, int flag);
|
||||||
|
|
||||||
|
|
||||||
/* Option -acl "on"|"off" */
|
|
||||||
int Xorriso_option_acl(struct XorrisO *xorriso, char *mode, int flag);
|
|
||||||
|
|
||||||
|
|
||||||
/* Option -add */
|
/* Option -add */
|
||||||
/* @param flag bit0=do not report the added item
|
/* @param flag bit0=do not report the added item
|
||||||
bit1=do not reset pacifier, no final pacifier message
|
bit1=do not reset pacifier, no final pacifier message
|
||||||
@ -287,25 +282,6 @@ int Xorriso_option_alter_date(struct XorrisO *xorriso,
|
|||||||
char *time_type, char *timestring,
|
char *time_type, char *timestring,
|
||||||
int argc, char **argv, int *idx, int flag);
|
int argc, char **argv, int *idx, int flag);
|
||||||
|
|
||||||
/* Option -application_id */
|
|
||||||
int Xorriso_option_application_id(struct XorrisO *xorriso, char *name,
|
|
||||||
int flag);
|
|
||||||
|
|
||||||
/* Option -as */
|
|
||||||
/* @param flag bit0=do not report the added item
|
|
||||||
bit1=do not reset pacifier, no final pacifier message
|
|
||||||
*/
|
|
||||||
int Xorriso_option_as(struct XorrisO *xorriso, int argc, char **argv,
|
|
||||||
int *idx, int flag);
|
|
||||||
|
|
||||||
/* Option -assert_volid */
|
|
||||||
int Xorriso_option_assert_volid(struct XorrisO *xorriso, char *pattern,
|
|
||||||
char *severity, int flag);
|
|
||||||
|
|
||||||
/* Option -backslash_codes */
|
|
||||||
int Xorriso_option_backslash_codes(struct XorrisO *xorriso, char *mode,
|
|
||||||
int flag);
|
|
||||||
|
|
||||||
/* Option -ban_stdio_write */
|
/* Option -ban_stdio_write */
|
||||||
int Xorriso_option_ban_stdio_write(struct XorrisO *xorriso, int flag);
|
int Xorriso_option_ban_stdio_write(struct XorrisO *xorriso, int flag);
|
||||||
|
|
||||||
@ -325,12 +301,6 @@ int Xorriso_option_cdi(struct XorrisO *xorriso, char *iso_rr_path, int flag);
|
|||||||
/* Option -cdx */
|
/* Option -cdx */
|
||||||
int Xorriso_option_cdx(struct XorrisO *xorriso, char *disk_path, int flag);
|
int Xorriso_option_cdx(struct XorrisO *xorriso, char *disk_path, int flag);
|
||||||
|
|
||||||
/* Option -charset */
|
|
||||||
/* @param flag bit0= set in_charset
|
|
||||||
bit1= set out_charset
|
|
||||||
*/
|
|
||||||
int Xorriso_option_charset(struct XorrisO *xorriso, char *name, int flag);
|
|
||||||
|
|
||||||
/* Option -check_media */
|
/* Option -check_media */
|
||||||
int Xorriso_option_check_media(struct XorrisO *xorriso,
|
int Xorriso_option_check_media(struct XorrisO *xorriso,
|
||||||
int argc, char **argv, int *idx, int flag);
|
int argc, char **argv, int *idx, int flag);
|
||||||
@ -411,16 +381,9 @@ int Xorriso_option_devices(struct XorrisO *xorriso, int flag);
|
|||||||
/* Option -dialog "on"|"off" */
|
/* Option -dialog "on"|"off" */
|
||||||
int Xorriso_option_dialog(struct XorrisO *xorriso, char *mode, int flag);
|
int Xorriso_option_dialog(struct XorrisO *xorriso, char *mode, int flag);
|
||||||
|
|
||||||
/* Option -disk_dev_ino "on"|"off" */
|
|
||||||
int Xorriso_option_disk_dev_ino(struct XorrisO *xorriso, char *mode, int flag);
|
|
||||||
|
|
||||||
/* Option -disk_pattern "on"|"ls"|"off" */
|
/* Option -disk_pattern "on"|"ls"|"off" */
|
||||||
int Xorriso_option_disk_pattern(struct XorrisO *xorriso, char *mode, int flag);
|
int Xorriso_option_disk_pattern(struct XorrisO *xorriso, char *mode, int flag);
|
||||||
|
|
||||||
/* Option -drive_class */
|
|
||||||
int Xorriso_option_drive_class(struct XorrisO *xorriso,
|
|
||||||
char *d_class, char *pattern, int flag);
|
|
||||||
|
|
||||||
/* Option -dummy "on"|"off" */
|
/* Option -dummy "on"|"off" */
|
||||||
int Xorriso_option_dummy(struct XorrisO *xorriso, char *mode, int flag);
|
int Xorriso_option_dummy(struct XorrisO *xorriso, char *mode, int flag);
|
||||||
|
|
||||||
@ -469,12 +432,6 @@ int Xorriso_option_find(struct XorrisO *xorriso, int argc, char **argv,
|
|||||||
/* Option -fs */
|
/* Option -fs */
|
||||||
int Xorriso_option_fs(struct XorrisO *xorriso, char *size, int flag);
|
int Xorriso_option_fs(struct XorrisO *xorriso, char *size, int flag);
|
||||||
|
|
||||||
/* Option -getfacl alias -getfacli, -getfacl_r alias -getfacl_ri */
|
|
||||||
/* @param flag bit0=recursive -getfacl_r
|
|
||||||
*/
|
|
||||||
int Xorriso_option_getfacli(struct XorrisO *xorriso,
|
|
||||||
int argc, char **argv, int *idx, int flag);
|
|
||||||
|
|
||||||
/* Option -gid */
|
/* Option -gid */
|
||||||
int Xorriso_option_gid(struct XorrisO *xorriso, char *gid, int flag);
|
int Xorriso_option_gid(struct XorrisO *xorriso, char *gid, int flag);
|
||||||
|
|
||||||
@ -555,13 +512,6 @@ int Xorriso_option_mark(struct XorrisO *xorriso, char *mark, int flag);
|
|||||||
int Xorriso_option_mkdiri(struct XorrisO *xorriso, int argc, char **argv,
|
int Xorriso_option_mkdiri(struct XorrisO *xorriso, int argc, char **argv,
|
||||||
int *idx, int flag);
|
int *idx, int flag);
|
||||||
|
|
||||||
/* Option -mount */
|
|
||||||
/* @param bit0= print mount command to result channel rather than performing it
|
|
||||||
*/
|
|
||||||
int Xorriso_option_mount(struct XorrisO *xorriso, char *dev, char *adr_mode,
|
|
||||||
char *adr, char *cmd, int flag);
|
|
||||||
|
|
||||||
|
|
||||||
/* Option -mv alias -mvi */
|
/* Option -mv alias -mvi */
|
||||||
int Xorriso_option_mvi(struct XorrisO *xorriso, int argc, char **argv,
|
int Xorriso_option_mvi(struct XorrisO *xorriso, int argc, char **argv,
|
||||||
int *idx, int flag);
|
int *idx, int flag);
|
||||||
@ -572,15 +522,14 @@ int Xorriso_option_no_rc(struct XorrisO *xorriso, int flag);
|
|||||||
/* Option -not_leaf */
|
/* Option -not_leaf */
|
||||||
int Xorriso_option_not_leaf(struct XorrisO *xorriso, char *pattern, int flag);
|
int Xorriso_option_not_leaf(struct XorrisO *xorriso, char *pattern, int flag);
|
||||||
|
|
||||||
/* Option -not_list , -quoted_not_list */
|
/* Option -not_list */
|
||||||
/* @param flag bit0= -quoted_not_list */
|
|
||||||
int Xorriso_option_not_list(struct XorrisO *xorriso, char *adr, int flag);
|
int Xorriso_option_not_list(struct XorrisO *xorriso, char *adr, int flag);
|
||||||
|
|
||||||
/* Option -not_paths */
|
/* Option -not_paths */
|
||||||
int Xorriso_option_not_paths(struct XorrisO *xorriso, int argc, char **argv,
|
int Xorriso_option_not_paths(struct XorrisO *xorriso, int argc, char **argv,
|
||||||
int *idx, int flag);
|
int *idx, int flag);
|
||||||
|
|
||||||
/* Option -options_from_file */
|
/* Option -options_from_file*/
|
||||||
/* @return <=0 error , 1 = success , 3 = request to end program run */
|
/* @return <=0 error , 1 = success , 3 = request to end program run */
|
||||||
int Xorriso_option_options_from_file(struct XorrisO *xorriso, char *adr,
|
int Xorriso_option_options_from_file(struct XorrisO *xorriso, char *adr,
|
||||||
int flag);
|
int flag);
|
||||||
@ -604,8 +553,7 @@ int Xorriso_option_page(struct XorrisO *xorriso, int len, int width, int flag);
|
|||||||
int Xorriso_option_paste_in(struct XorrisO *xorriso, char *iso_rr_path,
|
int Xorriso_option_paste_in(struct XorrisO *xorriso, char *iso_rr_path,
|
||||||
char *disk_path, char *start, char *count, int flag);
|
char *disk_path, char *start, char *count, int flag);
|
||||||
|
|
||||||
/* Option -path_list , -quoted_path_list */
|
/* Option -path-list */
|
||||||
/* @param flag bit0= -quoted_path_list */
|
|
||||||
int Xorriso_option_path_list(struct XorrisO *xorriso, char *adr, int flag);
|
int Xorriso_option_path_list(struct XorrisO *xorriso, char *adr, int flag);
|
||||||
|
|
||||||
/* Option -pathspecs */
|
/* Option -pathspecs */
|
||||||
@ -640,10 +588,6 @@ int Xorriso_option_pwdx(struct XorrisO *xorriso, int flag);
|
|||||||
/* Option -reassure "on"|"tree"|"off" */
|
/* Option -reassure "on"|"tree"|"off" */
|
||||||
int Xorriso_option_reassure(struct XorrisO *xorriso, char *mode, int flag);
|
int Xorriso_option_reassure(struct XorrisO *xorriso, char *mode, int flag);
|
||||||
|
|
||||||
/* Option -relax_compliance */
|
|
||||||
int Xorriso_option_relax_compliance(struct XorrisO *xorriso, char *mode,
|
|
||||||
int flag);
|
|
||||||
|
|
||||||
/* Option -report_about */
|
/* Option -report_about */
|
||||||
int Xorriso_option_report_about(struct XorrisO *xorriso, char *severity,
|
int Xorriso_option_report_about(struct XorrisO *xorriso, char *severity,
|
||||||
int flag);
|
int flag);
|
||||||
@ -673,26 +617,6 @@ int Xorriso_option_rom_toc_scan(struct XorrisO *xorriso, char *mode,
|
|||||||
/* Option -session_log */
|
/* Option -session_log */
|
||||||
int Xorriso_option_session_log(struct XorrisO *xorriso, char *path, int flag);
|
int Xorriso_option_session_log(struct XorrisO *xorriso, char *path, int flag);
|
||||||
|
|
||||||
/* Option -setfacl_list alias -setfacl_listi */
|
|
||||||
int Xorriso_option_setfacl_listi(struct XorrisO *xorriso, char *disk_path,
|
|
||||||
int flag);
|
|
||||||
|
|
||||||
/* Option -setfacl alias -setfacli , -setfacl_r alias -setfacl_ri */
|
|
||||||
/* @param flag bit0=recursive -setfacl_r
|
|
||||||
*/
|
|
||||||
int Xorriso_option_setfacli(struct XorrisO *xorriso, char *acl_text,
|
|
||||||
int argc, char **argv, int *idx, int flag);
|
|
||||||
|
|
||||||
/* Options -setfattr alias -setfattri, -setfattr_r alias -setfattr_ri */
|
|
||||||
/* @param flag bit0=recursive -setfattr_r
|
|
||||||
*/
|
|
||||||
int Xorriso_option_setfattri(struct XorrisO *xorriso, char *name, char *value,
|
|
||||||
int argc, char **argv, int *idx, int flag);
|
|
||||||
|
|
||||||
/* Option -setfattr_list alias -setfattr_listi */
|
|
||||||
int Xorriso_option_setfattr_listi(struct XorrisO *xorriso, char *path,
|
|
||||||
int flag);
|
|
||||||
|
|
||||||
/* Option -speed */
|
/* Option -speed */
|
||||||
int Xorriso_option_speed(struct XorrisO *xorriso, char *speed, int flag);
|
int Xorriso_option_speed(struct XorrisO *xorriso, char *speed, int flag);
|
||||||
|
|
||||||
@ -741,8 +665,6 @@ int Xorriso_option_version(struct XorrisO *xorriso, int flag);
|
|||||||
/* Option -volid */
|
/* Option -volid */
|
||||||
int Xorriso_option_volid(struct XorrisO *xorriso, char *volid, int flag);
|
int Xorriso_option_volid(struct XorrisO *xorriso, char *volid, int flag);
|
||||||
|
|
||||||
/* Option -xattr "on"|"off" */
|
|
||||||
int Xorriso_option_xattr(struct XorrisO *xorriso, char *mode, int flag);
|
|
||||||
|
|
||||||
#endif /* Xorriso_includeD */
|
#endif /* Xorriso_includeD */
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
<HEAD>
|
<HEAD>
|
||||||
<META NAME="description" CONTENT="xorriso, creates, loads, manipulates and writes ISO 9660 filesystem images with Rock Ridge extensions">
|
<META NAME="description" CONTENT="xorriso, creates, loads, manipulates and writes ISO 9660 filesystem images with Rock Ridge extensions">
|
||||||
<META NAME="keywords" CONTENT="xorriso, libburn, libburnia, burn, CD, DVD, ISO, ISO 9660, RockRidge, Rock Ridge, Linux, FreeBSD, recording, burning, CD-R, CD-RW, DVD-R, DVD-RW, DVD+RW, DVD+R, DVD+R DL, BD-RE, BD-R, scdbackup">
|
<META NAME="keywords" CONTENT="xorriso, libburn, libburnia, burn, CD, DVD, ISO, ISO 9660, RockRidge, Rock Ridge, linux, recording, burning, CD-R, CD-RW, DVD-R, DVD-RW, DVD+RW, DVD+R, DVD+R DL, BD-RE, scdbackup">
|
||||||
<META NAME="robots" CONTENT="follow">
|
<META NAME="robots" CONTENT="follow">
|
||||||
<TITLE>xorriso homepage english</TITLE>
|
<TITLE>xorriso homepage english</TITLE>
|
||||||
</HEAD>
|
</HEAD>
|
||||||
@ -14,7 +14,7 @@
|
|||||||
<P><H2> Homepage of </H2>
|
<P><H2> Homepage of </H2>
|
||||||
<H1> xorriso </H1>
|
<H1> xorriso </H1>
|
||||||
|
|
||||||
<H2>ISO 9660 Rock Ridge Filesystem Manipulator for Linux and FreeBSD</H2>
|
<H2>ISO 9660 Rock Ridge Filesystem Manipulator for Linux</H2>
|
||||||
</CENTER>
|
</CENTER>
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
@ -48,16 +48,10 @@ and to MMC-5 for DVD or BD).
|
|||||||
<DT>Linux with kernel 2.4 or higher (and libc, of course) :</DT>
|
<DT>Linux with kernel 2.4 or higher (and libc, of course) :</DT>
|
||||||
<DD>With kernel 2.4 an ATA drive has to be under ide-scsi emulation.</DD>
|
<DD>With kernel 2.4 an ATA drive has to be under ide-scsi emulation.</DD>
|
||||||
<DD>With kernel 2.6 the drive should not be under ide-scsi.</DD>
|
<DD>With kernel 2.6 the drive should not be under ide-scsi.</DD>
|
||||||
<DT>or FreeBSD (with libc, of course) :</DT>
|
|
||||||
<DD>ATAPI/CAM support has to be enabled in the kernel, see atapicam(4).</DD>
|
|
||||||
<DD>libcam has to be installed.</DD>
|
|
||||||
<DD>libiconv has to be installed.</DD>
|
|
||||||
<DT>libpthread</DT>
|
<DT>libpthread</DT>
|
||||||
<DD>is supposed to be a standard system component.</DD>
|
<DD>is supposed to be a standard system component.</DD>
|
||||||
<DT>libreadline and libreadline-dev</DT>
|
<DT>libreadline and libreadline-dev</DT>
|
||||||
<DD>are optional and eventually make dialog more convenient.</DD>
|
<DD>are optional and eventually make dialog more convenient.</DD>
|
||||||
<DT>libacl and libacl-devel</DT>
|
|
||||||
<DD>are optional and eventually allow on Linux to get and set ACLs.</DD>
|
|
||||||
</DL>
|
</DL>
|
||||||
</P>
|
</P>
|
||||||
|
|
||||||
@ -66,16 +60,15 @@ and to MMC-5 for DVD or BD).
|
|||||||
GPL software included:<BR>
|
GPL software included:<BR>
|
||||||
</H2>
|
</H2>
|
||||||
<DL>
|
<DL>
|
||||||
<DT>libburn-0.6.3</DT>
|
<DT>libburn-0.5.5</DT>
|
||||||
<DD>reads and writes data from and to CD, DVD, BD.</DD>
|
<DD>reads and writes data from and to CD, DVD, BD-RE.</DD>
|
||||||
<DD>(founded by Derek Foreman and Ben Jansens,
|
<DD>(founded by Derek Foreman and Ben Jansens,
|
||||||
developed and maintained since August 2006 by
|
developed and maintained since August 2006 by
|
||||||
Thomas Schmitt from team of libburnia-project.org)</DD>
|
Thomas Schmitt from team of libburnia-project.org)</DD>
|
||||||
<DT>libisofs-0.6.15</DT>
|
<DT>libisofs-0.6.10</DT>
|
||||||
<DD>operates on ISO 9660 filesystem images.</DD>
|
<DD>operates on ISO 9660 filesystem images.</DD>
|
||||||
<DD>(By Vreixo Formoso, Mario Danic and Thomas Schmitt
|
<DD>(By Vreixo Formoso and Mario Danic from team of libburnia-project.org)</DD>
|
||||||
from team of libburnia-project.org)</DD>
|
<DT>libisoburn-0.2.8</DT>
|
||||||
<DT>libisoburn-0.3.4</DT>
|
|
||||||
<DD>coordinates libburn and libisofs, emulates multi-session where needed.</DD>
|
<DD>coordinates libburn and libisofs, emulates multi-session where needed.</DD>
|
||||||
<DD>(By Vreixo Formoso and Thomas Schmitt
|
<DD>(By Vreixo Formoso and Thomas Schmitt
|
||||||
from team of libburnia-project.org)</DD>
|
from team of libburnia-project.org)</DD>
|
||||||
@ -86,8 +79,7 @@ cdrecord and mkisofs.</A>
|
|||||||
</P>
|
</P>
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
This program has been tested on Intel/AMD Linux
|
This program system has been tested on Intel/AMD Linux systems only.<BR>
|
||||||
and on FreeBSD systems.<BR>
|
|
||||||
For ports to other usable systems <A HREF="#contact">contact us</A>.
|
For ports to other usable systems <A HREF="#contact">contact us</A>.
|
||||||
</P>
|
</P>
|
||||||
|
|
||||||
@ -97,7 +89,7 @@ For ports to other usable systems <A HREF="#contact">contact us</A>.
|
|||||||
<H2>Special features:</H2>
|
<H2>Special features:</H2>
|
||||||
<UL>
|
<UL>
|
||||||
<LI>
|
<LI>
|
||||||
ISO 9660 formatter and burner for CD, DVD, BD are fixely integrated.
|
ISO 9660 formatter and burner for CD, DVD, BD-RE are fixely integrated.
|
||||||
</LI>
|
</LI>
|
||||||
<LI>
|
<LI>
|
||||||
Operates on an existing ISO image or creates a new one.
|
Operates on an existing ISO image or creates a new one.
|
||||||
@ -116,7 +108,7 @@ Writes result as completely new image or as add-on session
|
|||||||
to optical media or filesystem objects.
|
to optical media or filesystem objects.
|
||||||
</LI>
|
</LI>
|
||||||
<LI>
|
<LI>
|
||||||
Can activate ISOLINUX boot images by El Torito boot record and by MBR.
|
Can activate ISOLINUX boot images by El Torito boot record.
|
||||||
</LI>
|
</LI>
|
||||||
<LI>
|
<LI>
|
||||||
Can perform multi-session tasks as emulation of mkisofs and cdrecord.
|
Can perform multi-session tasks as emulation of mkisofs and cdrecord.
|
||||||
@ -125,12 +117,6 @@ Can perform multi-session tasks as emulation of mkisofs and cdrecord.
|
|||||||
Can restore single files and whole trees from ISO image to disk filesystem.
|
Can restore single files and whole trees from ISO image to disk filesystem.
|
||||||
</LI>
|
</LI>
|
||||||
<LI>
|
<LI>
|
||||||
Can record and restore ACL and xattr of disk files.
|
|
||||||
</LI>
|
|
||||||
<LI>
|
|
||||||
Can issue commands to mount older sessions on Linux or FreeBSD.
|
|
||||||
</LI>
|
|
||||||
<LI>
|
|
||||||
Can check media for damages and copy readable blocks to disk.
|
Can check media for damages and copy readable blocks to disk.
|
||||||
</LI>
|
</LI>
|
||||||
<LI>
|
<LI>
|
||||||
@ -138,7 +124,7 @@ Scans for optical drives, blanks re-useable optical media, formats media.
|
|||||||
</LI>
|
</LI>
|
||||||
<LI>
|
<LI>
|
||||||
Suitable for:
|
Suitable for:
|
||||||
CD-R, CD-RW, DVD-R, DVD-RW, DVD+R, DVD+R DL, DVD+RW, DVD-RAM, BD-R, BD-RE.
|
CD-R, CD-RW, DVD-R, DVD-RW, DVD+R, DVD+R DL, DVD+RW, DVD-RAM, BD-RE.
|
||||||
</LI>
|
</LI>
|
||||||
<LI>
|
<LI>
|
||||||
Reads its instructions from command line arguments, dialog, and batch files.
|
Reads its instructions from command line arguments, dialog, and batch files.
|
||||||
@ -153,7 +139,6 @@ Provides navigation commands for interactive ISO image manipulation.
|
|||||||
<P>
|
<P>
|
||||||
<H2>Command Examples:</H2>
|
<H2>Command Examples:</H2>
|
||||||
<DL>
|
<DL>
|
||||||
|
|
||||||
<DT>Get an overview of drives and their addresses</DT>
|
<DT>Get an overview of drives and their addresses</DT>
|
||||||
<DD>#<KBD> xorriso -devices</KBD></DD>
|
<DD>#<KBD> xorriso -devices</KBD></DD>
|
||||||
<DD><KBD>...</KBD></DD>
|
<DD><KBD>...</KBD></DD>
|
||||||
@ -272,22 +257,18 @@ already been done by a previous -commit.</DT>
|
|||||||
<HR>
|
<HR>
|
||||||
</DT>
|
</DT>
|
||||||
|
|
||||||
<DT>The following command performs incremental backup.
|
<DT>The following command can be run on blank media to create a
|
||||||
It can be run on blank media to create a copy of the mentioned disk
|
copy of the mentioned disk directory trees, and it can be run on appendable
|
||||||
directory trees, and it can be run on appendable media to perform a
|
media to perform a minimal set of change operations which update the
|
||||||
minimal set of change operations which update the old ISO copies
|
old ISO copies to match the new disk trees.
|
||||||
to match the new disk trees.
|
Older states can be retrieved by help of mount option "session=" from CD-R[W],
|
||||||
Older states can be retrieved by help of mount options like "sbsector="
|
by help of "sbsector=" from other media.
|
||||||
or by help of xorriso option -mount.
|
So this constitutes true incremental backup.
|
||||||
<BR>
|
<BR>
|
||||||
Eventual ACL or xattr will be recorded. Data reading will be avoided by
|
The copies will be complete, except all file names ending
|
||||||
accelerator option -disk_dev_ino.
|
with ".o" or ".swp" which are excluded by options -not_leaf.
|
||||||
Only blank media or media with volume id "PROJECTS_MAIL_..." will be accepted.
|
|
||||||
Files with names ending by ".o" or ".swp" are excluded by options -not_leaf.
|
|
||||||
</DT>
|
</DT>
|
||||||
<DD>$<KBD> xorriso -acl on -xattr on -disk_dev_ino on \</KBD></DD>
|
<DD>$<KBD> xorriso -dev /dev/sr0 \</KBD></DD>
|
||||||
<DD><KBD> -assert_volid 'PROJECTS_MAIL_*' FATAL \</KBD></DD>
|
|
||||||
<DD><KBD> -dev /dev/sr0 \</KBD></DD>
|
|
||||||
<DD><KBD> -volid PROJECTS_MAIL_"$(date '+%Y_%m_%d_%H%M%S')" \</KBD></DD>
|
<DD><KBD> -volid PROJECTS_MAIL_"$(date '+%Y_%m_%d_%H%M%S')" \</KBD></DD>
|
||||||
<DD><KBD> -not_leaf '*.o' -not_leaf '*.swp' \</KBD></DD>
|
<DD><KBD> -not_leaf '*.o' -not_leaf '*.swp' \</KBD></DD>
|
||||||
<DD><KBD> -update_r /home/thomas/open_source_projects /open_source_projects \</KBD></DD>
|
<DD><KBD> -update_r /home/thomas/open_source_projects /open_source_projects \</KBD></DD>
|
||||||
@ -298,35 +279,6 @@ Files with names ending by ".o" or ".swp" are excluded by options -not_leaf.
|
|||||||
<HR>
|
<HR>
|
||||||
</DT>
|
</DT>
|
||||||
|
|
||||||
<DT>
|
|
||||||
Operating systems usually mount the most recent session on media.
|
|
||||||
xorriso can issue the appropriate mount commands for older sessions.
|
|
||||||
First get an overview of the sessions on disk:
|
|
||||||
</DT>
|
|
||||||
<DD>$<KBD> xorriso -outdev /dev/sr0 -toc</KBD></DD>
|
|
||||||
<PRE>
|
|
||||||
TOC layout : Idx , sbsector , Size , Volume Id
|
|
||||||
ISO session : 1 , 0 , 104719s , PROJECTS_MAIL_2008_08_10_231435
|
|
||||||
ISO session : 2 , 106928 , 6785s , PROJECTS_MAIL_2008_08_14_184548
|
|
||||||
...
|
|
||||||
ISO session : 76 , 820384 , 11035s , PROJECTS_MAIL_2009_01_04_191150
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
<DT>
|
|
||||||
Then become superuser and let xorriso mount the session of August 14, 2008
|
|
||||||
to directory /mnt:
|
|
||||||
</DT>
|
|
||||||
<DD>#<KBD>
|
|
||||||
xorriso -osirrox on -mount /dev/sr0 volid '*_2008_08_14_*' /mnt
|
|
||||||
</KBD></DD>
|
|
||||||
<DT>
|
|
||||||
To be later unmounted by: <KBD>umount /mnt</KBD>
|
|
||||||
</DT>
|
|
||||||
|
|
||||||
<DT>
|
|
||||||
<HR>
|
|
||||||
</DT>
|
|
||||||
|
|
||||||
<DT>
|
<DT>
|
||||||
After the user has already created a suitable file tree on disk
|
After the user has already created a suitable file tree on disk
|
||||||
and copied the ISOLINUX files into subdirectory ./boot/isolinux of
|
and copied the ISOLINUX files into subdirectory ./boot/isolinux of
|
||||||
@ -335,26 +287,20 @@ that tree, xorriso can burn an El Torito bootable media:
|
|||||||
<DD>$<KBD> xorriso -outdev /dev/sr0 -blank as_needed \</KBD></DD>
|
<DD>$<KBD> xorriso -outdev /dev/sr0 -blank as_needed \</KBD></DD>
|
||||||
<DD><KBD> -map /home/me/ISOLINUX_prepared_tree / \</KBD></DD>
|
<DD><KBD> -map /home/me/ISOLINUX_prepared_tree / \</KBD></DD>
|
||||||
<DD><KBD> -boot_image isolinux dir=/boot/isolinux</KBD></DD>
|
<DD><KBD> -boot_image isolinux dir=/boot/isolinux</KBD></DD>
|
||||||
|
|
||||||
<DT>
|
<DT>
|
||||||
An additional MBR is generated if the file isolinux.bin is modern enough
|
|
||||||
(syslinux version 3.72) and ready for "isohybrid". An MBR enables booting
|
|
||||||
from hard disk or USB stick.
|
|
||||||
<HR>
|
<HR>
|
||||||
</DT>
|
</DT>
|
||||||
|
|
||||||
<DT>ISO images may not only be stored on optical media but also in
|
<DT>ISO images may not only be stored on optical media but also in
|
||||||
regular disk files or block devices for full multi-session operation.
|
regular disk files or block devices for full multi-session operation.
|
||||||
|
The prefix "stdio:" indicates that normal file operations are
|
||||||
|
desired rather than MMC drive commands:
|
||||||
</DT>
|
</DT>
|
||||||
<DD>$<KBD> xorriso -dev /tmp/regular_file ...other.options...</DD>
|
<DD>$<KBD> xorriso -dev stdio:/tmp/regular_file ...other.options...</DD>
|
||||||
<DT>
|
|
||||||
A default setting for safety reasons requires that files below /dev/
|
|
||||||
need prefix "stdio:" if they do not lead to MMC burner devices.
|
|
||||||
Be cautious not to overwrite your hard disk instead of your USB stick:
|
|
||||||
</DT>
|
|
||||||
<DD>$<KBD> xorriso -dev stdio:/dev/sdb ...other.options...</DD>
|
|
||||||
|
|
||||||
<DT>Other file types are suitable only for writing but not for reading:</DT>
|
<DT>Other file types are suitable only for writing but not for reading:</DT>
|
||||||
<DD>$<KBD> xorriso -outdev /tmp/named_pipe ...other.options...</DD>
|
<DD>$<KBD> xorriso -outdev stdio:/tmp/named_pipe ...other.options...</DD>
|
||||||
|
|
||||||
<DT>In batch mode it is possible to operate xorriso in a pipeline
|
<DT>In batch mode it is possible to operate xorriso in a pipeline
|
||||||
with an external consumer of the generated ISO image. Any message
|
with an external consumer of the generated ISO image. Any message
|
||||||
@ -386,8 +332,7 @@ One may switch from mkisofs emulation to xorriso's own command mode:
|
|||||||
<DT>If for any reason the reading operating system mishandles the ISO image
|
<DT>If for any reason the reading operating system mishandles the ISO image
|
||||||
or some files in it, one may enable reverse operation of xorriso and copy
|
or some files in it, one may enable reverse operation of xorriso and copy
|
||||||
files or trees to disk:
|
files or trees to disk:
|
||||||
<DD>$<KBD> xorriso -acl on -xattr on \</KBD></DD>
|
<DD>$<KBD> xorriso -indev /dev/sr0 \</KBD></DD>
|
||||||
<DD><KBD> -indev /dev/sr0 \</KBD></DD>
|
|
||||||
<DD><KBD> -osirrox on \</KBD></DD>
|
<DD><KBD> -osirrox on \</KBD></DD>
|
||||||
<DD><KBD> -cpx '/pictures/private/horses*/*buttercup*' \</KBD></DD>
|
<DD><KBD> -cpx '/pictures/private/horses*/*buttercup*' \</KBD></DD>
|
||||||
<DD><KBD> /home/her/buttercup_dir -- \</KBD>
|
<DD><KBD> /home/her/buttercup_dir -- \</KBD>
|
||||||
@ -407,6 +352,10 @@ files or trees to disk:
|
|||||||
<DD>$<KBD> <A HREF="man_1_xorriso.html">man xorriso</A></KBD></DD>
|
<DD>$<KBD> <A HREF="man_1_xorriso.html">man xorriso</A></KBD></DD>
|
||||||
</DL>
|
</DL>
|
||||||
|
|
||||||
|
|
||||||
|
Testers wanted who are willing to risk some double layer DVD media or
|
||||||
|
are interested in using BD-R media.
|
||||||
|
|
||||||
</P>
|
</P>
|
||||||
|
|
||||||
<HR>
|
<HR>
|
||||||
@ -414,8 +363,8 @@ files or trees to disk:
|
|||||||
<P>
|
<P>
|
||||||
<DL>
|
<DL>
|
||||||
<DT><H3>Download as source code (see README):</H3></DT>
|
<DT><H3>Download as source code (see README):</H3></DT>
|
||||||
<DD><A HREF="xorriso-0.3.4.pl00.tar.gz">xorriso-0.3.4.pl00.tar.gz</A>
|
<DD><A HREF="xorriso-0.2.8.pl00.tar.gz">xorriso-0.2.8.pl00.tar.gz</A>
|
||||||
(1175 KB).
|
(1050 KB).
|
||||||
</DD>
|
</DD>
|
||||||
</DL>
|
</DL>
|
||||||
</DD>
|
</DD>
|
||||||
@ -441,32 +390,26 @@ an <A HREF="http://www.opensource.org/">Open Source</A> approved license</DD>
|
|||||||
<HR>
|
<HR>
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
Bug fixes towards xorriso-0.3.2.pl00:
|
Bug fixes towards xorriso-0.2.6.pl00:
|
||||||
<UL>
|
<UL>
|
||||||
<LI>BD-R were not correctly finalized</LI>
|
<LI>A potential buffer overflow has been fixed</LI>
|
||||||
|
<LI>-follow "link" attributed random target filenames to looping links</LI>
|
||||||
|
<LI>-as mkisofs -iso-level was accused to be an unknown option</LI>
|
||||||
<!--
|
<!--
|
||||||
<LI>- none -</LI>
|
<LI>- none -</LI>
|
||||||
-->
|
-->
|
||||||
|
|
||||||
</UL>
|
</UL>
|
||||||
|
|
||||||
</P>
|
</P>
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
Enhancements towards previous stable version xorriso-0.3.2.pl00:
|
Enhancements towards previous stable version xorriso-0.2.4.pl00:
|
||||||
<UL>
|
<UL>
|
||||||
<LI>New option -acl controls import and export of ACLs</LI>
|
|
||||||
<LI>New options -getfacl, -getfacl_r, -setfacl , -setfacl_r , -setfacl_list</LI>
|
<LI>Ability to write and maintain bootable ISO images based on ISOLINUX</LI>
|
||||||
<LI>New -find tests -has_acl, -has_no_acl, new -find actions getfacl, setfacl
|
<LI>New ./configure option --disable-libreadline to make binary more portable
|
||||||
</LI>
|
|
||||||
<LI>New option -xattr controls import and export of Extended Attributes</LI>
|
|
||||||
<LI>New options -getfattr, -getfattr_r, -setfattr, -setfattr_r, -setfattr_list
|
|
||||||
</LI>
|
|
||||||
<LI>New -find tests -has_xattr, -has_aaip, new -find actions getfattr, setfattr
|
|
||||||
</LI>
|
|
||||||
<LI>New -as mkisofs options --acl and --xattr</LI>
|
|
||||||
<LI>New option -disk_dev_ino can substantially accelerate incremental backups
|
|
||||||
</LI>
|
</LI>
|
||||||
|
|
||||||
</UL>
|
</UL>
|
||||||
</P>
|
</P>
|
||||||
|
|
||||||
@ -474,15 +417,15 @@ Enhancements towards previous stable version xorriso-0.3.2.pl00:
|
|||||||
|
|
||||||
<P>
|
<P>
|
||||||
<DL>
|
<DL>
|
||||||
<DT><H3>Development snapshot, version 0.3.5 :</H3></DT>
|
<DT><H3>Development snapshot, version 0.2.9 :</H3></DT>
|
||||||
<DD>Bug fixes towards xorriso-0.3.4.pl00:
|
<DD>Bug fixes towards xorriso-0.2.8.pl00:
|
||||||
<UL>
|
<UL>
|
||||||
<LI>- none yet -</LI>
|
<LI>- none yet -</LI>
|
||||||
<!--
|
<!--
|
||||||
-->
|
-->
|
||||||
</UL>
|
</UL>
|
||||||
</DD>
|
</DD>
|
||||||
<DD>Enhancements towards stable version 0.3.4.pl00:
|
<DD>Enhancements towards stable version 0.2.8.pl00:
|
||||||
<UL>
|
<UL>
|
||||||
<LI>- none yet -</LI>
|
<LI>- none yet -</LI>
|
||||||
<!--
|
<!--
|
||||||
@ -490,9 +433,9 @@ Enhancements towards previous stable version xorriso-0.3.2.pl00:
|
|||||||
</UL>
|
</UL>
|
||||||
</DD>
|
</DD>
|
||||||
<DD> </DD>
|
<DD> </DD>
|
||||||
<DD><A HREF="README_xorriso_devel">README 0.3.5</A>
|
<DD><A HREF="README_xorriso_devel">README 0.2.9</A>
|
||||||
<DD><A HREF="xorriso_help_devel">xorriso_0.3.5 -help</A></DD>
|
<DD><A HREF="xorriso_help_devel">xorriso_0.2.9 -help</A></DD>
|
||||||
<DD><A HREF="man_1_xorriso_devel.html">man xorriso (as of 0.3.5)</A></DD>
|
<DD><A HREF="man_1_xorriso_devel.html">man xorriso (as of 0.2.9)</A></DD>
|
||||||
<DD> </DD>
|
<DD> </DD>
|
||||||
<DT>If you want to distribute development versions of xorriso, then use
|
<DT>If you want to distribute development versions of xorriso, then use
|
||||||
this tarball which produces static linking between xorriso and the
|
this tarball which produces static linking between xorriso and the
|
||||||
@ -502,8 +445,8 @@ libburnia libraries.
|
|||||||
installation see README)
|
installation see README)
|
||||||
</DD>
|
</DD>
|
||||||
<DD>
|
<DD>
|
||||||
<A HREF="xorriso-0.3.5.tar.gz">xorriso-0.3.5.tar.gz</A>
|
<A HREF="xorriso-0.2.9.tar.gz">xorriso-0.2.9.tar.gz</A>
|
||||||
(1160 KB).
|
(1050 KB).
|
||||||
</DD>
|
</DD>
|
||||||
<DT>A dynamically linked development version of xorriso can be obtained
|
<DT>A dynamically linked development version of xorriso can be obtained
|
||||||
from repositories of
|
from repositories of
|
||||||
|
@ -16,10 +16,9 @@ xorriso_xorriso_CPPFLAGS = -I./libburn -I./libisofs -I./libisoburn -I./xorriso
|
|||||||
|
|
||||||
# No readline in the vanilla version because the necessary headers
|
# No readline in the vanilla version because the necessary headers
|
||||||
# are in a separate readline-development package.
|
# are in a separate readline-development package.
|
||||||
xorriso_xorriso_CFLAGS = -DXorriso_standalonE -DXorriso_with_maiN \
|
xorriso_xorriso_CFLAGS = -DXorriso_standalonE -DXorriso_with_maiN -DXorriso_with_regeX $(READLINE_DEF)
|
||||||
$(READLINE_DEF) $(LIBACL_DEF) $(XATTR_DEF)
|
|
||||||
|
|
||||||
xorriso_xorriso_LDADD = $(THREAD_LIBS) $(LIBBURN_ARCH_LIBS)
|
xorriso_xorriso_LDADD = $(THREAD_LIBS)
|
||||||
|
|
||||||
|
|
||||||
# This looks quite ugly with make install: xorriso.c is compiled twice again
|
# This looks quite ugly with make install: xorriso.c is compiled twice again
|
||||||
@ -97,11 +96,6 @@ xorriso_xorriso_SOURCES = \
|
|||||||
libisofs/filter.h \
|
libisofs/filter.h \
|
||||||
libisofs/filter.c \
|
libisofs/filter.c \
|
||||||
libisofs/filters/xor_encrypt.c \
|
libisofs/filters/xor_encrypt.c \
|
||||||
libisofs/system_area.h \
|
|
||||||
libisofs/system_area.c \
|
|
||||||
libisofs/make_isohybrid_mbr.c \
|
|
||||||
libisofs/aaip_0_2.h \
|
|
||||||
libisofs/aaip_0_2.c \
|
|
||||||
\
|
\
|
||||||
libburn/async.c \
|
libburn/async.c \
|
||||||
libburn/async.h \
|
libburn/async.h \
|
||||||
@ -228,9 +222,6 @@ EXTRA_DIST = \
|
|||||||
INSTALL \
|
INSTALL \
|
||||||
xorriso/changelog.txt \
|
xorriso/changelog.txt \
|
||||||
xorriso/xorriso_buildstamp_none.h \
|
xorriso/xorriso_buildstamp_none.h \
|
||||||
$(man_MANS) \
|
$(man_MANS)
|
||||||
libisofs/aaip-os-dummy.c \
|
|
||||||
libisofs/aaip-os-linux.c \
|
|
||||||
libisofs/aaip-os-freebsd.c
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
/* Command line oriented batch and dialog tool which creates, loads,
|
/* Command line oriented batch and dialog tool which creates, loads,
|
||||||
manipulates and burns ISO 9660 filesystem images.
|
manipulates and burns ISO 9660 filesystem images.
|
||||||
|
|
||||||
Copyright 2007-2009 Thomas Schmitt, <scdbackup@gmx.net>
|
Copyright 2007-2008 Thomas Schmitt, <scdbackup@gmx.net>
|
||||||
|
|
||||||
Provided under GPL version 2.
|
Provided under GPL version 2.
|
||||||
|
|
||||||
@ -18,7 +18,7 @@
|
|||||||
#ifndef Xorriso_private_includeD
|
#ifndef Xorriso_private_includeD
|
||||||
#define Xorriso_private_includeD yes
|
#define Xorriso_private_includeD yes
|
||||||
|
|
||||||
#define Xorriso_program_versioN "0.3.4"
|
#define Xorriso_program_versioN "0.2.8"
|
||||||
|
|
||||||
/** The source code release timestamp */
|
/** The source code release timestamp */
|
||||||
#include "xorriso_timestamp.h"
|
#include "xorriso_timestamp.h"
|
||||||
@ -34,7 +34,11 @@
|
|||||||
#define Xorriso_build_timestamP "-none-given-"
|
#define Xorriso_build_timestamP "-none-given-"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* Because regex_t is mentioned in struct XorrisO */
|
||||||
|
#ifdef Xorriso_with_regeX
|
||||||
#include <regex.h>
|
#include <regex.h>
|
||||||
|
#endif /* Xorriso_with_regeX */
|
||||||
|
|
||||||
|
|
||||||
#define Smem_malloC malloc
|
#define Smem_malloC malloc
|
||||||
@ -100,14 +104,6 @@ struct XorrisO { /* the global context of xorriso */
|
|||||||
/* >>> put libisofs aspects here <<< */
|
/* >>> put libisofs aspects here <<< */
|
||||||
|
|
||||||
int do_joliet;
|
int do_joliet;
|
||||||
|
|
||||||
int do_aaip; /* bit0= ACL in , bit1= ACL out , bit2= EA in , bit3= EA out
|
|
||||||
bit4= record dev,inode , bit5= check dev,inode
|
|
||||||
bit6= omit content check if dev,inode check is conclusive
|
|
||||||
bit7= omit dev check mit bit5
|
|
||||||
*/
|
|
||||||
|
|
||||||
int relax_compliance; /* opaque bitfield to be set by xorrisoburn */
|
|
||||||
int do_follow_pattern;
|
int do_follow_pattern;
|
||||||
int do_follow_param;
|
int do_follow_param;
|
||||||
int do_follow_links;
|
int do_follow_links;
|
||||||
@ -127,11 +123,8 @@ struct XorrisO { /* the global context of xorriso */
|
|||||||
char volid[33];
|
char volid[33];
|
||||||
int volid_default;
|
int volid_default;
|
||||||
char loaded_volid[33];
|
char loaded_volid[33];
|
||||||
char assert_volid[SfileadrL];
|
|
||||||
char assert_volid_sev[80];
|
|
||||||
|
|
||||||
char publisher[129];
|
char publisher[129];
|
||||||
char application_id[129];
|
|
||||||
|
|
||||||
char session_logfile[SfileadrL];
|
char session_logfile[SfileadrL];
|
||||||
int session_lba;
|
int session_lba;
|
||||||
@ -139,10 +132,6 @@ struct XorrisO { /* the global context of xorriso */
|
|||||||
|
|
||||||
/* >>> put libburn/isoburn aspects here */
|
/* >>> put libburn/isoburn aspects here */
|
||||||
|
|
||||||
struct Xorriso_lsT *drive_blacklist;
|
|
||||||
struct Xorriso_lsT *drive_greylist;
|
|
||||||
struct Xorriso_lsT *drive_whitelist;
|
|
||||||
|
|
||||||
int toc_emulation_flag; /* bit0= bit3 for isoburn_drive_aquire()
|
int toc_emulation_flag; /* bit0= bit3 for isoburn_drive_aquire()
|
||||||
scan -ROM profiles for ISO sessions
|
scan -ROM profiles for ISO sessions
|
||||||
bit1= bit4 for isoburn_drive_aquire()
|
bit1= bit4 for isoburn_drive_aquire()
|
||||||
@ -169,7 +158,6 @@ struct XorrisO { /* the global context of xorriso */
|
|||||||
char indev[SfileadrL];
|
char indev[SfileadrL];
|
||||||
void *in_drive_handle; /* interpreted only by xorrisoburn.c */
|
void *in_drive_handle; /* interpreted only by xorrisoburn.c */
|
||||||
void *in_volset_handle; /* interpreted only by xorrisoburn.c */
|
void *in_volset_handle; /* interpreted only by xorrisoburn.c */
|
||||||
char *in_charset; /* The charset to interpret the filename bytes */
|
|
||||||
|
|
||||||
int volset_change_pending; /* whether -commit would make sense */
|
int volset_change_pending; /* whether -commit would make sense */
|
||||||
int no_volset_present; /* set to 1 on first failure */
|
int no_volset_present; /* set to 1 on first failure */
|
||||||
@ -180,7 +168,6 @@ struct XorrisO { /* the global context of xorriso */
|
|||||||
|
|
||||||
char outdev[SfileadrL];
|
char outdev[SfileadrL];
|
||||||
void *out_drive_handle; /* interpreted only by xorrisoburn.c */
|
void *out_drive_handle; /* interpreted only by xorrisoburn.c */
|
||||||
char *out_charset; /* The charset to produce the filename bytes for */
|
|
||||||
int dev_fd_1; /* The fd which substitutes for /dev/fd/1 and is
|
int dev_fd_1; /* The fd which substitutes for /dev/fd/1 and is
|
||||||
connected to externaly perveived stdout.
|
connected to externaly perveived stdout.
|
||||||
*/
|
*/
|
||||||
@ -196,13 +183,7 @@ struct XorrisO { /* the global context of xorriso */
|
|||||||
int speed; /* in libburn units : 1000 bytes/second , 0 = Max, -1 = Min */
|
int speed; /* in libburn units : 1000 bytes/second , 0 = Max, -1 = Min */
|
||||||
int fs; /* fifo size in 2048 byte chunks : at most 1 GB */
|
int fs; /* fifo size in 2048 byte chunks : at most 1 GB */
|
||||||
int padding; /* number of bytes to add after ISO 9660 image */
|
int padding; /* number of bytes to add after ISO 9660 image */
|
||||||
|
int do_stream_recording;
|
||||||
int alignment; /* if > 0 : image size alignment in 2048 byt blocks */
|
|
||||||
/* <<< not sure whether to keep this after libisofs will have
|
|
||||||
learned to pad up MBR images to full MB */
|
|
||||||
|
|
||||||
int do_stream_recording; /* 0=no, 1=yes, 2=for data, not for dir
|
|
||||||
>=16 means yes with number as start LBA */
|
|
||||||
|
|
||||||
int keep_boot_image;
|
int keep_boot_image;
|
||||||
int patch_isolinux_image;
|
int patch_isolinux_image;
|
||||||
@ -213,12 +194,7 @@ struct XorrisO { /* the global context of xorriso */
|
|||||||
*/
|
*/
|
||||||
char boot_image_cat_path[SfileadrL];
|
char boot_image_cat_path[SfileadrL];
|
||||||
off_t boot_image_load_size;
|
off_t boot_image_load_size;
|
||||||
int boot_image_isohybrid; /* 0=off , 1=auto , 2=on , 3=force */
|
|
||||||
|
|
||||||
/* LBA of boot image after image loading */
|
|
||||||
int loaded_boot_bin_lba;
|
|
||||||
/* Path of the catalog node after image loading */
|
|
||||||
char loaded_boot_cat_path[SfileadrL];
|
|
||||||
|
|
||||||
/* XORRISO options */
|
/* XORRISO options */
|
||||||
int allow_graft_points;
|
int allow_graft_points;
|
||||||
@ -233,18 +209,6 @@ struct XorrisO { /* the global context of xorriso */
|
|||||||
|
|
||||||
int dialog; /* 0=off , 1=single-line , 2=multi-line */
|
int dialog; /* 0=off , 1=single-line , 2=multi-line */
|
||||||
|
|
||||||
int bsl_interpretation;
|
|
||||||
/* whether to run input through Sfile_bsl_interpreter():
|
|
||||||
bit0-1= dialog and quoted file reading
|
|
||||||
0= no interpretation, leave unchanged
|
|
||||||
1= only inside double quotes
|
|
||||||
2= outside single quotes
|
|
||||||
3= everywhere
|
|
||||||
bit2-3= reserved as future expansion of bit0-1
|
|
||||||
bit4= interpretation within program start arguments
|
|
||||||
bit5= perform backslash encoding with results
|
|
||||||
bit6= perform backslash encoding with info texts
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Pattern matching facility. It still carries legacy from scdbackup/askme.c
|
/* Pattern matching facility. It still carries legacy from scdbackup/askme.c
|
||||||
but is fully functional for xorriso.
|
but is fully functional for xorriso.
|
||||||
@ -320,8 +284,10 @@ struct XorrisO { /* the global context of xorriso */
|
|||||||
char eternal_problem_status_text[20];
|
char eternal_problem_status_text[20];
|
||||||
|
|
||||||
/* temporary search facilities */
|
/* temporary search facilities */
|
||||||
|
#ifdef Xorriso_with_regeX
|
||||||
regex_t *re;
|
regex_t *re;
|
||||||
regmatch_t match[1];
|
regmatch_t match[1];
|
||||||
|
#endif /* Xorriso_with_regeX */
|
||||||
char **re_constants;
|
char **re_constants;
|
||||||
int re_count;
|
int re_count;
|
||||||
int re_fill;
|
int re_fill;
|
||||||
@ -391,7 +357,7 @@ int Xorriso_regexec(struct XorrisO *xorriso, char *to_match, int *failed_at,
|
|||||||
int Xorriso_prepare_expansion_pattern(struct XorrisO *xorriso, char *pattern,
|
int Xorriso_prepare_expansion_pattern(struct XorrisO *xorriso, char *pattern,
|
||||||
int flag);
|
int flag);
|
||||||
|
|
||||||
int Xorriso__mode_to_perms(mode_t st_mode, char perms[11], int flag);
|
int Xorriso__mode_to_perms(mode_t st_mode, char perms[10], int flag);
|
||||||
|
|
||||||
int Xorriso_much_too_long(struct XorrisO *xorriso, int len, int flag);
|
int Xorriso_much_too_long(struct XorrisO *xorriso, int len, int flag);
|
||||||
|
|
||||||
@ -535,90 +501,6 @@ int Xorriso_spotlist_to_sectormap(struct XorrisO *xorriso,
|
|||||||
int Xorriso_toc_to_string(struct XorrisO *xorriso, char **toc_text, int flag);
|
int Xorriso_toc_to_string(struct XorrisO *xorriso, char **toc_text, int flag);
|
||||||
|
|
||||||
|
|
||||||
/* @param flag bit0+1= what to aquire after giving up outdev
|
|
||||||
0=none, 1=indev, 2=outdev, 3=both
|
|
||||||
*/
|
|
||||||
int Xorriso_reaquire_outdev(struct XorrisO *xorriso, int flag);
|
|
||||||
|
|
||||||
|
|
||||||
/* Opens the -check_media data copy in for reading and writing
|
|
||||||
*/
|
|
||||||
int Xorriso_open_job_data_to(struct XorrisO *xorriso,
|
|
||||||
struct CheckmediajoB *job, int flag);
|
|
||||||
|
|
||||||
int Xorriso_no_findjob(struct XorrisO *xorriso, char *cmd, int flag);
|
|
||||||
|
|
||||||
|
|
||||||
int Xorriso_make_mount_cmd(struct XorrisO *xorriso, char *cmd,
|
|
||||||
int lba, int track, int session, char *volid,
|
|
||||||
char *devadr, char result[SfileadrL], int flag);
|
|
||||||
|
|
||||||
|
|
||||||
/* @param flag bit0= use env_path to find the desired program
|
|
||||||
*/
|
|
||||||
int Xorriso_execv(struct XorrisO *xorriso, char *cmd, char *env_path,
|
|
||||||
int *status, int flag);
|
|
||||||
|
|
||||||
int Xorriso_is_in_patternlist(struct XorrisO *xorriso,
|
|
||||||
struct Xorriso_lsT *patternlist, char *path, int flag);
|
|
||||||
|
|
||||||
char *Xorriso_get_pattern(struct XorrisO *xorriso,
|
|
||||||
struct Xorriso_lsT *patternlist, int index, int flag);
|
|
||||||
|
|
||||||
|
|
||||||
/* Normalize ACL and sort apart "access" ACL from "default" ACL.
|
|
||||||
*/
|
|
||||||
int Xorriso_normalize_acl_text(struct XorrisO *xorriso, char *in_text,
|
|
||||||
char **access_acl_text, char **default_acl_text, int flag);
|
|
||||||
|
|
||||||
int Xorriso_path_setfattr(struct XorrisO *xorriso, void *in_node, char *path,
|
|
||||||
char *name, size_t value_length, char *value, int flag);
|
|
||||||
|
|
||||||
|
|
||||||
int Sfile_str(char target[SfileadrL], char *source, int flag);
|
|
||||||
|
|
||||||
double Sfile_microtime(int flag);
|
|
||||||
|
|
||||||
int Sfile_add_to_path(char path[SfileadrL], char *addon, int flag);
|
|
||||||
|
|
||||||
int Sfile_scale(double value, char *result, int siz, double thresh, int flag);
|
|
||||||
|
|
||||||
int Sfile_destroy_argv(int *argc, char ***argv, int flag);
|
|
||||||
|
|
||||||
/*
|
|
||||||
bit0= do not ignore trailing slash
|
|
||||||
bit1= do not ignore empty components (other than the empty root name)
|
|
||||||
*/
|
|
||||||
int Sfile_count_components(char *path, int flag);
|
|
||||||
|
|
||||||
/*
|
|
||||||
@param flag
|
|
||||||
bit0= return -1 if file is missing
|
|
||||||
bit1= return a hardlink with siblings as type 5
|
|
||||||
bit2= evaluate eventual link target rather than the link object itself
|
|
||||||
bit3= return a socket or a char device as types 7 or 8 rather than 0
|
|
||||||
@return
|
|
||||||
0=unknown
|
|
||||||
1=regular
|
|
||||||
2=directory
|
|
||||||
3=symbolic link
|
|
||||||
4=named pipe
|
|
||||||
5=multiple hardlink (with bit1)
|
|
||||||
6=block device
|
|
||||||
7=socket (with bit3)
|
|
||||||
8=character device (with bit3)
|
|
||||||
*/
|
|
||||||
int Sfile_type(char *filename, int flag);
|
|
||||||
|
|
||||||
/* @param flag bit0= only encode inside quotes
|
|
||||||
bit1= encode < 32 outside quotes except 7, 8, 9, 10, 12, 13
|
|
||||||
bit2= encode in any case above 126
|
|
||||||
bit3= encode in any case shellsafe:
|
|
||||||
<=42 , 59, 60, 62, 63, 92, 94, 96, >=123
|
|
||||||
*/
|
|
||||||
int Sfile_bsl_encoder(char **result, char *text, size_t text_len, int flag);
|
|
||||||
|
|
||||||
|
|
||||||
struct Xorriso_lsT {
|
struct Xorriso_lsT {
|
||||||
char *text;
|
char *text;
|
||||||
struct Xorriso_lsT *prev,*next;
|
struct Xorriso_lsT *prev,*next;
|
||||||
@ -671,6 +553,50 @@ int Xorriso_lst_append_binary(struct Xorriso_lsT **entry,
|
|||||||
int Xorriso_lst_destroy(struct Xorriso_lsT **lstring, int flag);
|
int Xorriso_lst_destroy(struct Xorriso_lsT **lstring, int flag);
|
||||||
|
|
||||||
|
|
||||||
|
/* Opens the -check_media data copy in for reading and writing
|
||||||
|
*/
|
||||||
|
int Xorriso_open_job_data_to(struct XorrisO *xorriso,
|
||||||
|
struct CheckmediajoB *job, int flag);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int Sfile_str(char target[SfileadrL], char *source, int flag);
|
||||||
|
|
||||||
|
double Sfile_microtime(int flag);
|
||||||
|
|
||||||
|
int Sfile_add_to_path(char path[SfileadrL], char *addon, int flag);
|
||||||
|
|
||||||
|
int Sfile_scale(double value, char *result, int siz, double thresh, int flag);
|
||||||
|
|
||||||
|
int Sfile_destroy_argv(int *argc, char ***argv, int flag);
|
||||||
|
|
||||||
|
/*
|
||||||
|
bit0= do not ignore trailing slash
|
||||||
|
bit1= do not ignore empty components (other than the empty root name)
|
||||||
|
*/
|
||||||
|
int Sfile_count_components(char *path, int flag);
|
||||||
|
|
||||||
|
/*
|
||||||
|
@param flag
|
||||||
|
bit0= return -1 if file is missing
|
||||||
|
bit1= return a hardlink with siblings as type 5
|
||||||
|
bit2= evaluate eventual link target rather than the link object itself
|
||||||
|
bit3= return a socket or a char device as types 7 or 8 rather than 0
|
||||||
|
@return
|
||||||
|
0=unknown
|
||||||
|
1=regular
|
||||||
|
2=directory
|
||||||
|
3=symbolic link
|
||||||
|
4=named pipe
|
||||||
|
5=multiple hardlink (with bit1)
|
||||||
|
6=block device
|
||||||
|
7=socket (with bit3)
|
||||||
|
8=character device (with bit3)
|
||||||
|
*/
|
||||||
|
int Sfile_type(char *filename, int flag);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
char *Text_shellsafe(char *in_text, char *out_text, int flag);
|
char *Text_shellsafe(char *in_text, char *out_text, int flag);
|
||||||
|
|
||||||
int Sort_argv(int argc, char **argv, int flag);
|
int Sort_argv(int argc, char **argv, int flag);
|
||||||
@ -683,9 +609,6 @@ char *Ftypetxt(mode_t st_mode, int flag);
|
|||||||
*/
|
*/
|
||||||
char *Ftimetxt(time_t t, char timetext[40], int flag);
|
char *Ftimetxt(time_t t, char timetext[40], int flag);
|
||||||
|
|
||||||
int System_uname(char **sysname, char **release, char **version,
|
|
||||||
char **machine, int flag);
|
|
||||||
|
|
||||||
|
|
||||||
struct DirseQ;
|
struct DirseQ;
|
||||||
|
|
||||||
@ -701,12 +624,6 @@ int Linkitem_reset_stack(struct LinkiteM **o, struct LinkiteM *to, int flag);
|
|||||||
|
|
||||||
struct FindjoB;
|
struct FindjoB;
|
||||||
|
|
||||||
|
|
||||||
int Findjob_new(struct FindjoB **o, char *start_path, int flag);
|
|
||||||
|
|
||||||
int Findjob_destroy(struct FindjoB **job, int flag);
|
|
||||||
|
|
||||||
|
|
||||||
/* @return 0=no match , 1=match , <0 = error
|
/* @return 0=no match , 1=match , <0 = error
|
||||||
*/
|
*/
|
||||||
int Findjob_test(struct FindjoB *job, char *name,
|
int Findjob_test(struct FindjoB *job, char *name,
|
||||||
@ -719,7 +636,7 @@ int Findjob_get_action(struct FindjoB *o, int flag);
|
|||||||
|
|
||||||
/* @return <0 error, >=0 see xorriso.c struct FindjoB.action
|
/* @return <0 error, >=0 see xorriso.c struct FindjoB.action
|
||||||
*/
|
*/
|
||||||
int Findjob_get_action_parms(struct FindjoB *o, char **target, char **text_2,
|
int Findjob_get_action_parms(struct FindjoB *o, char **target,
|
||||||
uid_t *user, gid_t *group,
|
uid_t *user, gid_t *group,
|
||||||
mode_t *mode_and, mode_t *mode_or,
|
mode_t *mode_and, mode_t *mode_or,
|
||||||
int *type, time_t *date, struct FindjoB **subjob,
|
int *type, time_t *date, struct FindjoB **subjob,
|
||||||
@ -745,32 +662,13 @@ int Findjob_set_action_ad(struct FindjoB *o, int type, time_t date, int flag);
|
|||||||
|
|
||||||
int Findjob_set_start_path(struct FindjoB *o, char *start_path, int flag);
|
int Findjob_set_start_path(struct FindjoB *o, char *start_path, int flag);
|
||||||
|
|
||||||
int Findjob_set_action_found_path(struct FindjoB *o, int flag);
|
|
||||||
|
|
||||||
int Findjob_get_start_path(struct FindjoB *o, char **start_path, int flag);
|
int Findjob_get_start_path(struct FindjoB *o, char **start_path, int flag);
|
||||||
|
|
||||||
int Findjob_set_lba_range(struct FindjoB *o, int start_lba, int count,
|
|
||||||
int flag);
|
|
||||||
|
|
||||||
int Findjob_get_lba_damage_filter(struct FindjoB *o, int *start_lba,
|
int Findjob_get_lba_damage_filter(struct FindjoB *o, int *start_lba,
|
||||||
int *end_lba, int *damage_filter, int flag);
|
int *end_lba, int *damage_filter, int flag);
|
||||||
|
|
||||||
int Findjob_get_commit_filter(struct FindjoB *o, int *commit_filter, int flag);
|
int Findjob_get_commit_filter(struct FindjoB *o, int *commit_filter, int flag);
|
||||||
|
|
||||||
int Findjob_get_acl_filter(struct FindjoB *o, int *acl_filter, int flag);
|
|
||||||
|
|
||||||
int Findjob_get_xattr_filter(struct FindjoB *o, int *xattr_filter, int flag);
|
|
||||||
|
|
||||||
int Findjob_get_aaip_filter(struct FindjoB *o, int *aaip_filter, int flag);
|
|
||||||
|
|
||||||
int Findjob_set_wanted_node(struct FindjoB *o, void *wanted_node, int flag);
|
|
||||||
|
|
||||||
int Findjob_get_wanted_node(struct FindjoB *o, void **wanted_node, int flag);
|
|
||||||
|
|
||||||
int Findjob_set_found_path(struct FindjoB *o, char *path, int flag);
|
|
||||||
|
|
||||||
int Findjob_get_found_path(struct FindjoB *o, char **path, int flag);
|
|
||||||
|
|
||||||
|
|
||||||
struct SplitparT;
|
struct SplitparT;
|
||||||
|
|
||||||
@ -859,12 +757,5 @@ int Sectorbitmap_get_layout(struct SectorbitmaP *o,
|
|||||||
int Sectorbitmap_copy(struct SectorbitmaP *from, struct SectorbitmaP *to,
|
int Sectorbitmap_copy(struct SectorbitmaP *from, struct SectorbitmaP *to,
|
||||||
int flag);
|
int flag);
|
||||||
|
|
||||||
/* bit0= append (text!=NULL) */
|
|
||||||
int Sregex_string(char **handle, char *text, int flag);
|
|
||||||
|
|
||||||
/* @param flag bit0= only test expression whether compilable
|
|
||||||
*/
|
|
||||||
int Sregex_match(char *pattern, char *text, int flag);
|
|
||||||
|
|
||||||
#endif /* Xorriso_private_includeD */
|
#endif /* Xorriso_private_includeD */
|
||||||
|
|
||||||
|
@ -1 +1 @@
|
|||||||
#define Xorriso_timestamP "2009.03.01.103001"
|
#define Xorriso_timestamP "2008.10.12.120001"
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -4,7 +4,7 @@
|
|||||||
a command line oriented batch and dialog tool which creates, loads,
|
a command line oriented batch and dialog tool which creates, loads,
|
||||||
manipulates and burns ISO 9660 filesystem images.
|
manipulates and burns ISO 9660 filesystem images.
|
||||||
|
|
||||||
Copyright 2007-2009 Thomas Schmitt, <scdbackup@gmx.net>
|
Copyright 2007-2008 Thomas Schmitt, <scdbackup@gmx.net>
|
||||||
|
|
||||||
Provided under GPL version 2.
|
Provided under GPL version 2.
|
||||||
|
|
||||||
@ -18,8 +18,8 @@
|
|||||||
/* The minimum version of libisoburn to be used with this version of xorriso
|
/* The minimum version of libisoburn to be used with this version of xorriso
|
||||||
*/
|
*/
|
||||||
#define xorriso_libisoburn_req_major 0
|
#define xorriso_libisoburn_req_major 0
|
||||||
#define xorriso_libisoburn_req_minor 3
|
#define xorriso_libisoburn_req_minor 2
|
||||||
#define xorriso_libisoburn_req_micro 4
|
#define xorriso_libisoburn_req_micro 8
|
||||||
|
|
||||||
int Xorriso_startup_libraries(struct XorrisO *xorriso, int flag);
|
int Xorriso_startup_libraries(struct XorrisO *xorriso, int flag);
|
||||||
|
|
||||||
@ -52,16 +52,9 @@ int Xorriso__text_to_sev(char *severity_name, int *severity_number,int flag);
|
|||||||
|
|
||||||
/* @param flag bit0=report about output drive
|
/* @param flag bit0=report about output drive
|
||||||
bit1=short report form
|
bit1=short report form
|
||||||
bit2=do not try to read ISO heads
|
|
||||||
bit3=report to info channel (else to result channel)
|
|
||||||
*/
|
*/
|
||||||
int Xorriso_toc(struct XorrisO *xorriso, int flag);
|
int Xorriso_toc(struct XorrisO *xorriso, int flag);
|
||||||
|
|
||||||
/* @param flag bit0= no output if no boot record was found
|
|
||||||
bit3= report to info channel (else to result channel)
|
|
||||||
*/
|
|
||||||
int Xorriso_show_boot_info(struct XorrisO *xorriso, int flag);
|
|
||||||
|
|
||||||
int Xorriso_show_devices(struct XorrisO *xorriso, int flag);
|
int Xorriso_show_devices(struct XorrisO *xorriso, int flag);
|
||||||
|
|
||||||
int Xorriso_tell_media_space(struct XorrisO *xorriso,
|
int Xorriso_tell_media_space(struct XorrisO *xorriso,
|
||||||
@ -74,14 +67,10 @@ int Xorriso_tell_media_space(struct XorrisO *xorriso,
|
|||||||
int Xorriso_blank_media(struct XorrisO *xorriso, int flag);
|
int Xorriso_blank_media(struct XorrisO *xorriso, int flag);
|
||||||
|
|
||||||
/* @param flag bit0= try to achieve faster formatting
|
/* @param flag bit0= try to achieve faster formatting
|
||||||
bit1= use parameter size (else use default size)
|
|
||||||
bit2= do not re-aquire drive
|
|
||||||
bit7= by_index mode:
|
|
||||||
bit8 to bit15 contain the index of the format to use.
|
|
||||||
@return 0=failure, did not touch media , -1=failure, altered media
|
@return 0=failure, did not touch media , -1=failure, altered media
|
||||||
1=success, altered media , 2=success, did not touch media
|
1=success, altered media , 2=success, did not touch media
|
||||||
*/
|
*/
|
||||||
int Xorriso_format_media(struct XorrisO *xorriso, off_t size, int flag);
|
int Xorriso_format_media(struct XorrisO *xorriso, int flag);
|
||||||
|
|
||||||
/* @return <=0 error, 1 success
|
/* @return <=0 error, 1 success
|
||||||
*/
|
*/
|
||||||
@ -211,15 +200,9 @@ int Xorriso_burn_track(struct XorrisO *xorriso, off_t write_start_address,
|
|||||||
int Xorriso_get_profile(struct XorrisO *xorriso, int *profile_number,
|
int Xorriso_get_profile(struct XorrisO *xorriso, int *profile_number,
|
||||||
char profile_name[80], int flag);
|
char profile_name[80], int flag);
|
||||||
|
|
||||||
#ifdef NIX
|
|
||||||
|
|
||||||
/* @param flag bit0= do not mark image as changed */
|
/* @param flag bit0= do not mark image as changed */
|
||||||
int Xorriso_set_publisher(struct XorrisO *xorriso, char *name, int flag);
|
int Xorriso_set_publisher(struct XorrisO *xorriso, char *name, int flag);
|
||||||
|
|
||||||
/* @param flag bit0= do not mark image as changed */
|
|
||||||
int Xorriso_set_application_id(struct XorrisO *xorriso, char *name, int flag);
|
|
||||||
|
|
||||||
#endif /* NIX */
|
|
||||||
|
|
||||||
/* @param flag bit0= node_pt is a valid ISO object handle, ignore pathname
|
/* @param flag bit0= node_pt is a valid ISO object handle, ignore pathname
|
||||||
*/
|
*/
|
||||||
@ -304,11 +287,6 @@ int Xorriso_update_iso_lba0(struct XorrisO *xorriso, int iso_lba, int isosize,
|
|||||||
char *head_buffer, struct CheckmediajoB *job,
|
char *head_buffer, struct CheckmediajoB *job,
|
||||||
int flag);
|
int flag);
|
||||||
|
|
||||||
int Xorriso_get_local_charset(struct XorrisO *xorriso, char **name, int flag);
|
|
||||||
|
|
||||||
int Xorriso_set_local_charset(struct XorrisO *xorriso, char *name, int flag);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
struct CheckmediajoB {
|
struct CheckmediajoB {
|
||||||
int use_dev; /* 0= use indev , 1= use outdev , 2= use sector map*/
|
int use_dev; /* 0= use indev , 1= use outdev , 2= use sector map*/
|
||||||
@ -361,77 +339,6 @@ int Xorriso_extract_cut(struct XorrisO *xorriso,
|
|||||||
off_t img_offset, off_t bytes, int flag);
|
off_t img_offset, off_t bytes, int flag);
|
||||||
|
|
||||||
|
|
||||||
int Xorriso_relax_compliance(struct XorrisO *xorriso, char *mode,
|
|
||||||
int flag);
|
|
||||||
|
|
||||||
/* @return 1=ok 2=ok, is default setting */
|
|
||||||
int Xorriso_get_relax_text(struct XorrisO *xorriso, char mode[1024],
|
|
||||||
int flag);
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
@param flag bit0= print mount command to result channel rather than
|
|
||||||
performing it
|
|
||||||
*/
|
|
||||||
int Xorriso_mount(struct XorrisO *xorriso, char *dev, int adr_mode,
|
|
||||||
char *adr_value, char *cmd, int flag);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
int Xorriso_auto_driveadr(struct XorrisO *xorriso, char *adr, char *result,
|
|
||||||
int flag);
|
|
||||||
|
|
||||||
|
|
||||||
/* @param node Opaque handle to IsoNode which is to be inquired instead of
|
|
||||||
path if it is not NULL.
|
|
||||||
@param path is used as address if node is NULL.
|
|
||||||
@param acl_text if acl_text is not NULL, then *acl_text will be set to the
|
|
||||||
ACL text (without comments) of the file object. In this
|
|
||||||
case it finally has to be freed by the caller.
|
|
||||||
@param flag bit0= do not report to result but only retrieve ACL text
|
|
||||||
bit1= just check for existence of ACL, do not allocate and
|
|
||||||
set acl_text but return 1 or 2
|
|
||||||
@return 2 ok, no ACL available, eventual *acl_text will be NULL
|
|
||||||
1 ok, ACL available, eventual *acl_text stems from malloc()
|
|
||||||
<=0 error
|
|
||||||
*/
|
|
||||||
int Xorriso_getfacl(struct XorrisO *xorriso, void *node,
|
|
||||||
char *path, char **acl_text, int flag);
|
|
||||||
|
|
||||||
int Xorriso_getfattr(struct XorrisO *xorriso, void *in_node, char *path,
|
|
||||||
char **attr_text, int flag);
|
|
||||||
|
|
||||||
/* Calls iso_image_set_ignore_aclea() according to xorriso->do_aaip */
|
|
||||||
int Xorriso_set_ignore_aclea(struct XorrisO *xorriso, int flag);
|
|
||||||
|
|
||||||
|
|
||||||
/* @param node Opaque handle to IsoNode which is to be manipulated
|
|
||||||
instead of path if it is not NULL.
|
|
||||||
@param path is used as address if node is NULL.
|
|
||||||
@param access_text "access" ACL in long text form
|
|
||||||
@param default_text "default" ACL in long text form
|
|
||||||
@param flag Unused yet, submit 0
|
|
||||||
@return >0 success , <=0 failure
|
|
||||||
*/
|
|
||||||
int Xorriso_setfacl(struct XorrisO *xorriso, void *in_node, char *path,
|
|
||||||
char *access_text, char *default_text, int flag);
|
|
||||||
|
|
||||||
int Xorriso_get_attrs(struct XorrisO *xorriso, void *in_node, char *path,
|
|
||||||
size_t *num_attrs, char ***names,
|
|
||||||
size_t **value_lengths, char ***values, int flag);
|
|
||||||
|
|
||||||
int Xorriso_setfattr(struct XorrisO *xorriso, void *in_node, char *path,
|
|
||||||
size_t num_attrs, char **names,
|
|
||||||
size_t *value_lengths, char **values, int flag);
|
|
||||||
|
|
||||||
int Xorriso_record_dev_inode(struct XorrisO *xorriso, char *disk_path,
|
|
||||||
dev_t dev, ino_t ino,
|
|
||||||
void *in_node, char *iso_path, int flag);
|
|
||||||
|
|
||||||
int Xorriso_local_getfacl(struct XorrisO *xorriso, char *disk_path,
|
|
||||||
char **text, int flag);
|
|
||||||
|
|
||||||
|
|
||||||
/* A pseudo file type for El-Torito bootsectors as in man 2 stat :
|
/* A pseudo file type for El-Torito bootsectors as in man 2 stat :
|
||||||
For now take the highest possible value.
|
For now take the highest possible value.
|
||||||
*/
|
*/
|
||||||
|
Reference in New Issue
Block a user