"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "libburn/mmc.c" between
xorriso-1.4.6.tar.gz and xorriso-1.4.8.tar.gz

About: GNU xorriso creates, loads, manipulates and writes ISO 9660 filesystem images with Rock Ridge extensions. It is suitable for incremental data backup and for production of bootable ISO 9660 images. GNU xorriso is a statical compilation of the libraries libburn, libisofs, libisoburn, and libjte.

mmc.c  (xorriso-1.4.6):mmc.c  (xorriso-1.4.8)
skipping to change at line 1920 skipping to change at line 1920
d->media_read_capacity = 0x7fffffff; d->media_read_capacity = 0x7fffffff;
d->mr_capacity_trusted = -1; d->mr_capacity_trusted = -1;
/* ts A61202 */ /* ts A61202 */
d->toc_entries = 0; d->toc_entries = 0;
if (d->status == BURN_DISC_EMPTY) if (d->status == BURN_DISC_EMPTY)
{ret = 1; goto ex;} {ret = 1; goto ex;}
mmc_get_configuration(d); mmc_get_configuration(d);
/*
*/
#define Libburn_test_read_toc_form_0_track_0 yes
#ifdef Libburn_test_read_toc_form_0_track_0
/*
Test bed.
Linux drivers/scsi/sr_ioctl.c uses this gesture to obtain the
multi-session info which MMC-1 to MMC-5 promise with Form 1
(to be required by byte 2 of CDB).
http://www.t10.org/pipermail/t10/1994-October/001135.html
"Many SCSI CDROM vendors (Sony, Matsushita, Hitachi...) have
already added a 2 bit format field in the READ TOC command
(byte 9, bits 6 & 7) to support multisession discs. For
compatibility, it would be nice to define this same location
in the SCSI-3 spec."
Byte 9 of READ TOC/PMA/ATIP is actually the SPC/SAM CONTROL byte
which is at the end of all SCSI CDBs.
So there was objection:
http://www.t10.org/pipermail/t10/1994-October/001137.html
"To define these bits specifically for the READ TOC command at least
bends the architecture."
Consequentially no trace of the two bits can be found in MMC-1 or
MMC-5. Since the command name nowadays mentions "TOC/PMA/ATIP",
i assume that the Forms 1 to 4 in MMC-1 were invented to accomodate
for this and a few other wishes, which else would have needed
skillful reading of CD sector sub-channels.
Later Form 5 was added.
*/
/* This is performed just to get its reply in the SCSI log.
*/
scsi_init_command(c, MMC_GET_TOC_FMT0, sizeof(MMC_GET_TOC_FMT0));
c->dxfer_len = 12;
c->opcode[7] = (c->dxfer_len >> 8) & 0xff;
c->opcode[8] = c->dxfer_len & 0xff;
/* Undocumented Linux way: */
/* c->opcode[9] = 0x40; */
/* MMC-1 way: */
c->opcode[2] = 1;
c->retry = 1;
c->page = buf;
c->page->sectors = 0;
c->page->bytes = 0;
c->dir = FROM_DRIVE;
d->issue_command(d, c);
#endif /* Libburn_test_read_toc_form_0_track_0 */
scsi_init_command(c, MMC_GET_DISC_INFO, sizeof(MMC_GET_DISC_INFO)); scsi_init_command(c, MMC_GET_DISC_INFO, sizeof(MMC_GET_DISC_INFO));
c->dxfer_len = *alloc_len; c->dxfer_len = *alloc_len;
c->opcode[7]= (c->dxfer_len >> 8) & 0xff; c->opcode[7]= (c->dxfer_len >> 8) & 0xff;
c->opcode[8]= c->dxfer_len & 0xff; c->opcode[8]= c->dxfer_len & 0xff;
c->retry = 1; c->retry = 1;
c->page = buf; c->page = buf;
c->page->sectors = 0; c->page->sectors = 0;
c->page->bytes = 0; c->page->bytes = 0;
c->dir = FROM_DRIVE; c->dir = FROM_DRIVE;
d->issue_command(d, c); d->issue_command(d, c);
skipping to change at line 5314 skipping to change at line 5367
d->read_10 = mmc_read_10; d->read_10 = mmc_read_10;
/* ts A70302 */ /* ts A70302 */
d->phys_if_std = -1; d->phys_if_std = -1;
d->phys_if_name[0] = 0; d->phys_if_name[0] = 0;
/* ts A61020 */ /* ts A61020 */
d->start_lba = -2000000000; d->start_lba = -2000000000;
d->end_lba = -2000000000; d->end_lba = -2000000000;
d->do_simulate= 0;
/* ts A61201 - A90815*/ /* ts A61201 - A90815*/
d->erasable = 0; d->erasable = 0;
d->current_profile = -1; d->current_profile = -1;
d->current_profile_text[0] = 0; d->current_profile_text[0] = 0;
d->current_is_cd_profile = 0; d->current_is_cd_profile = 0;
d->current_is_supported_profile = 0; d->current_is_supported_profile = 0;
d->current_is_guessed_profile = 0; d->current_is_guessed_profile = 0;
memset(d->all_profiles, 0, 256); memset(d->all_profiles, 0, 256);
d->num_profiles = 0; d->num_profiles = 0;
d->current_has_feat21h = 0; d->current_has_feat21h = 0;
 End of changes. 2 change blocks. 
0 lines changed or deleted 55 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)