New bit10 of isoburn_drive_aquire() to accept all xattr namespaces

This commit is contained in:
Thomas Schmitt 2017-10-23 11:53:12 +02:00
parent c3d302efe4
commit 25e24911d9
4 changed files with 20 additions and 13 deletions

View File

@ -6,7 +6,7 @@
*/
/* libburn wrappers for libisoburn
Copyright 2007 - 2016 Thomas Schmitt, <scdbackup@gmx.net>
Copyright 2007 - 2017 Thomas Schmitt, <scdbackup@gmx.net>
Provided under GPL version 2 or later.
*/
@ -343,6 +343,8 @@ int isoburn_is_intermediate_dvd_rw(struct burn_drive *d, int flag)
bit9= when scanning for ISO 9660 sessions on overwritable
media: Do not demand a valid superblock at LBA 0
and scan until end of medium.
bit10= if not bit6: accept all xattr namespaces from external
filesystems, not only "user.".
*/
static int isoburn_welcome_media(struct isoburn **o, struct burn_drive *d,
int flag)
@ -386,7 +388,8 @@ static int isoburn_welcome_media(struct isoburn **o, struct burn_drive *d,
(*o)->msgs_submit= libisoburn_default_msgs_submit;
(*o)->msgs_submit_handle= libisoburn_default_msgs_submit_handle;
(*o)->msgs_submit_flag= libisoburn_default_msgs_submit_flag;
iso_image_set_ignore_aclea((*o)->image, (flag >> 5 ) & 3);
iso_image_set_ignore_aclea((*o)->image,
((flag >> 5 ) & 3) | ((!!(flag & 1024)) << 3));
#ifdef Hardcoded_cd_rW
/* <<< A70929 : hardcoded CD-RW with fabricated -msinfo */
@ -536,6 +539,8 @@ ex:
bit9= when scanning for ISO 9660 sessions on overwritable
media: Do not demand a valid superblock at LBA 0
and scan until end of medium.
bit10= if not bit6: accept all xattr namespaces from external
filesystems, not only "user.".
*/
int isoburn_drive_aquire(struct burn_drive_info *drive_infos[],
char *adr, int flag)
@ -562,7 +567,8 @@ int isoburn_drive_aquire(struct burn_drive_info *drive_infos[],
goto ex;
drive_grabbed= 1;
ret= isoburn_welcome_media(&o, (*drive_infos)[0].drive,
(flag & (8 | 16 | 32 | 64 | 128 | 512)) | !!(flag&2));
(flag & (8 | 16 | 32 | 64 | 128 | 512 | 1024)) |
!!(flag&2));
if(ret<=0)
goto ex;

View File

@ -6,7 +6,7 @@
/*
libisofs related functions of libisoburn.
Copyright 2007 - 2011 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
Copyright 2007 - 2017 Vreixo Formoso Lopes <metalpain2002@yahoo.es>
Thomas Schmitt <scdbackup@gmx.net>
Provided under GPL version 2 or later.
*/
@ -143,7 +143,7 @@ int isoburn_read_image(struct burn_drive *d,
struct isoburn_read_opts *read_opts,
IsoImage **image)
{
int ret, int_num, dummy;
int ret, int_num, dummy, ignore_aclea= 0;
IsoReadOpts *ropts= NULL;
IsoReadImageFeatures *features= NULL;
uint32_t ms_block;
@ -188,11 +188,11 @@ create_blank_image:;
isoburn_report_iso_error(ret, "Cannot create image", 0, "FATAL", 0);
goto ex;
}
iso_image_set_ignore_aclea(*image,
(!!(read_opts->noacl)) | ((!!read_opts->noea) << 1) );
new_image= *image;
} else {
/* Blank new image for the drive */
if(o->image != NULL)
ignore_aclea= iso_image_get_ignore_aclea(o->image);
iso_image_unref(o->image);
ret = iso_image_new("ISOIMAGE", &o->image);
if (ret < 0) {
@ -203,9 +203,7 @@ create_blank_image:;
*image = o->image;
iso_image_ref(*image); /*protects object from premature free*/
}
iso_image_set_ignore_aclea(o->image,
(!!(read_opts->noacl)) | ((!!read_opts->noea) << 1) );
iso_image_set_ignore_aclea(o->image, ignore_aclea);
ret= isoburn_root_defaults(o->image, 0);
if(ret <= 0)
goto ex;

View File

@ -249,7 +249,7 @@ void isoburn_version(int *major, int *minor, int *micro);
*/
#define isoburn_libisofs_req_major 1
#define isoburn_libisofs_req_minor 4
#define isoburn_libisofs_req_micro 8
#define isoburn_libisofs_req_micro 9
/** The minimum version of libburn to be used with this version of libisoburn
at compile time.
@ -440,7 +440,7 @@ int isoburn_drive_scan_and_grab(struct burn_drive_info *drive_infos[],
bit4= do not emulate table of content on overwriteable media
bit5= ignore ACL from external filesystems
bit6= ignore POSIX Extended Attributes from external
filesystems
filesystems (xattr)
bit7= pretend read-only profile and scan for table of content
bit8= re-assess already acquired (*drive_infos)[0] rather
than acquiring adr
@ -449,6 +449,9 @@ int isoburn_drive_scan_and_grab(struct burn_drive_info *drive_infos[],
Do not demand a valid superblock at LBA 0, ignore it in
favor of one at LBA 32, and scan until end of medium.
@since 1.2.6
bit10= if not bit6: accept all xattr namespaces from external
filesystems, not only "user.".
@since 1.5.0
@return 1 = success , 0 = drive not found , <0 = other error
Please excuse the typo "aquire" in the function name.

View File

@ -1 +1 @@
#define Xorriso_timestamP "2017.09.29.113942"
#define Xorriso_timestamP "2017.10.23.095252"