commit
84661e8f17
@ -0,0 +1 @@
|
||||
3f7ddc06db0272942e1a4cd98c3c96462df77387 SOURCES/cdrkit-1.1.11.tar.gz
|
@ -0,0 +1 @@
|
||||
SOURCES/cdrkit-1.1.11.tar.gz
|
@ -0,0 +1,40 @@
|
||||
From 05c639c8a0f61da73ca8f1f725f8f5394d8bf15f Mon Sep 17 00:00:00 2001
|
||||
From: Jakub Martisko <jamartis@redhat.com>
|
||||
Date: Thu, 2 Aug 2018 09:34:18 +0200
|
||||
Subject: [PATCH] fix: file name buffer overflow in isoinfo
|
||||
|
||||
---
|
||||
genisoimage/diag/isoinfo.c | 10 ++++++++++
|
||||
1 file changed, 10 insertions(+)
|
||||
|
||||
diff --git a/genisoimage/diag/isoinfo.c b/genisoimage/diag/isoinfo.c
|
||||
index 3cc2678..a08141d 100644
|
||||
--- a/genisoimage/diag/isoinfo.c
|
||||
+++ b/genisoimage/diag/isoinfo.c
|
||||
@@ -763,6 +763,11 @@ parse_dir(char *rootname, int extent, int len)
|
||||
strcat(td->name, name_buf);
|
||||
strcat(td->name, "/");
|
||||
} else {
|
||||
+ if ( (PATH_MAX - strlen(rootname)) < strlen(name_buf))
|
||||
+ {
|
||||
+ fprintf(stderr, "Name too long: %s%s\n", rootname, name_buf);
|
||||
+ exit(1);
|
||||
+ }
|
||||
strcpy(testname, rootname);
|
||||
strcat(testname, name_buf);
|
||||
if (xtract && strcmp(xtract, testname) == 0) {
|
||||
@@ -772,6 +777,11 @@ parse_dir(char *rootname, int extent, int len)
|
||||
if (do_find &&
|
||||
(idr->name_len[0] != 1 ||
|
||||
(idr->name[0] != 0 && idr->name[0] != 1))) {
|
||||
+ if ( (PATH_MAX - strlen(rootname)) < strlen(name_buf))
|
||||
+ {
|
||||
+ fprintf(stderr, "Name too long: %s%s\n", rootname, name_buf);
|
||||
+ exit(1);
|
||||
+ }
|
||||
strcpy(testname, rootname);
|
||||
strcat(testname, name_buf);
|
||||
printf("%s\n", testname);
|
||||
--
|
||||
2.14.4
|
||||
|
@ -0,0 +1,11 @@
|
||||
diff -up cdrkit-1.1.10/genisoimage/genisoimage.c.build-fix cdrkit-1.1.10/genisoimage/genisoimage.c
|
||||
--- cdrkit-1.1.10/genisoimage/genisoimage.c.build-fix 2010-01-20 11:05:05.000000000 +0100
|
||||
+++ cdrkit-1.1.10/genisoimage/genisoimage.c 2010-01-20 11:21:16.144098749 +0100
|
||||
@@ -47,6 +47,7 @@
|
||||
|
||||
#include <mconfig.h>
|
||||
#include "genisoimage.h"
|
||||
+#include "checksum.h"
|
||||
#include "iso9660.h"
|
||||
#include <errno.h>
|
||||
#include <timedefs.h>
|
@ -0,0 +1,9 @@
|
||||
diff -up cdrkit-1.1.11/CMakeLists.txt.cmakewarn cdrkit-1.1.11/CMakeLists.txt
|
||||
--- cdrkit-1.1.11/CMakeLists.txt.cmakewarn 2012-07-31 13:11:10.075500531 +0200
|
||||
+++ cdrkit-1.1.11/CMakeLists.txt 2012-07-31 13:11:41.069108287 +0200
|
||||
@@ -1,3 +1,5 @@
|
||||
+cmake_minimum_required(VERSION 2.8)
|
||||
+cmake_policy(SET CMP0015 OLD)
|
||||
PROJECT (cdrkit C)
|
||||
SUBDIRS(include genisoimage wodim libedc libhfs_iso icedax libusal librols libunls readom netscsid 3rd-party/dirsplit)
|
||||
|
@ -0,0 +1,30 @@
|
||||
diff -up wrk/libusal/scsi-linux-sg.c.wrk wrk/libusal/scsi-linux-sg.c
|
||||
--- wrk/libusal/scsi-linux-sg.c.wrk 2015-05-29 13:30:41.088896572 +0200
|
||||
+++ wrk/libusal/scsi-linux-sg.c 2015-05-29 13:38:25.776303388 +0200
|
||||
@@ -509,7 +509,9 @@ usalo_open(SCSI *usalp, char *device)
|
||||
/* scan and maybe keep one open, sg_setup decides */
|
||||
#define HDX 0
|
||||
#define SCD 1
|
||||
-#define SG 2
|
||||
+/* second scd option included because of Fedora naming convention /dev/srN */
|
||||
+#define SCD2 2
|
||||
+#define SG 3
|
||||
int h;
|
||||
/*
|
||||
retry_scan_open:
|
||||
@@ -533,6 +535,15 @@ retry_scan_open:
|
||||
first=0;
|
||||
last=255;
|
||||
break;
|
||||
+ }
|
||||
+ case(SCD2):
|
||||
+ {
|
||||
+ if(!check_linux_26())
|
||||
+ continue;
|
||||
+ pattern="/dev/sr%d";
|
||||
+ first=0;
|
||||
+ last=255;
|
||||
+ break;
|
||||
}
|
||||
case(SG):
|
||||
{
|
@ -0,0 +1,70 @@
|
||||
diff -up cdrkit-1.1.11/wodim/wodim.1.dvdman cdrkit-1.1.11/wodim/wodim.1
|
||||
--- cdrkit-1.1.11/wodim/wodim.1.dvdman 2011-06-08 14:49:00.073093571 +0200
|
||||
+++ cdrkit-1.1.11/wodim/wodim.1 2011-06-08 14:50:59.707093540 +0200
|
||||
@@ -835,49 +835,33 @@ newer ones) still implement the Sony pro
|
||||
not yet become a problem to use this driver for all Sony drives. If you find
|
||||
a newer Sony drive that does not work with this driver, please report.
|
||||
.TP
|
||||
-.B mmc_dvd
|
||||
+.B mmc_mdvd
|
||||
The generic SCSI-3/mmc-2 DVD-R/DVD-RW driver is auto-selected whenever
|
||||
.B wodim
|
||||
finds a MMC-2 or MMC-3 compliant drive that supports to write DVDs and
|
||||
an appropriate medium is loaded.
|
||||
-There is no Track At Once mode for DVD writers.
|
||||
-.TP
|
||||
-.B mmc_dvdplus
|
||||
-The generic SCSI-3/mmc-3 DVD+R/DVD+RW driver is auto-selected whenever
|
||||
-one of the DVD+ media types that are incompatible to each other is found.
|
||||
-It checks media and then
|
||||
-branches to the driver that matches the current medium.
|
||||
-.TP
|
||||
-.B mmc_dvdplusr
|
||||
-The generic SCSI-3/mmc-3 DVD+R driver is auto-selected whenever
|
||||
-a DVD+R medium is found in an appropriate writer.
|
||||
Note that for unknown reason, the DVD-Plus alliance does not
|
||||
-like that there is a simulation mode for DVD+R media.
|
||||
-The author of
|
||||
-.B wodim
|
||||
-tries to convince manufacturers to implement a simulation mode for DVD+R
|
||||
-and implement support.
|
||||
-DVD+R only supports one write mode that is somewhere between Track At Once
|
||||
-and Packet writing; this mode is selected in
|
||||
+like that there is a simulation mode for DVD+R and DVD+RW media nor a way
|
||||
+to erase DVD+RW media.
|
||||
+DVD+R and DVD+RW only supports one write mode that is somewhere between
|
||||
+Track At Once and Packet writing; this mode is selected in
|
||||
.B wodim
|
||||
via a the
|
||||
.BR \-dao / \-sao
|
||||
option.
|
||||
-.TP
|
||||
-.B mmc_dvdplusrw
|
||||
-The generic SCSI-3/mmc-3 DVD+RW driver is auto-selected whenever
|
||||
-a DVD+RW medium is found in an appropriate writer.
|
||||
-As DVD+RW media needs to be formatted before its first use, wodim
|
||||
-auto-detects this media state and performs a format before it starts
|
||||
-to write.
|
||||
-Note that for unknown reason, the DVD-Plus alliance does not
|
||||
-like that there is a simulation mode nor a way to erase DVD+RW media.
|
||||
-DVD+RW only supports one write mode that is close to
|
||||
-Packet writing; this mode is selected in
|
||||
+As DVD+RW media needs to be formatted before its first use,
|
||||
.B wodim
|
||||
-via a the
|
||||
-.BR \-dao / \-sao
|
||||
-option.
|
||||
+auto-detects this media state and performs a format before it starts
|
||||
+to write.
|
||||
+.sp
|
||||
+Note: If you have any problems during burning DVDs using
|
||||
+.BR wodim ,
|
||||
+please consider
|
||||
+.B growisofs
|
||||
+from package
|
||||
+.BR dvd+rw-tools ,
|
||||
+which often works better
|
||||
+in these cases.
|
||||
.TP
|
||||
.B cw_7501
|
||||
The driver for Matsushita/Panasonic CW-7501 is auto-selected when
|
@ -0,0 +1,129 @@
|
||||
diff -up cdrkit-1.1.11/wodim/drv_mmc.c.format cdrkit-1.1.11/wodim/drv_mmc.c
|
||||
--- cdrkit-1.1.11/wodim/drv_mmc.c.format 2011-05-18 16:49:14.591822130 +0200
|
||||
+++ cdrkit-1.1.11/wodim/drv_mmc.c 2011-05-18 16:49:14.596822130 +0200
|
||||
@@ -1507,6 +1507,11 @@ getdisktype_mdvd(SCSI *usalp, cdr_t *dp)
|
||||
dstat_t *dsp = dp->cdr_dstat;
|
||||
|
||||
struct track_info track_info;
|
||||
+
|
||||
+ extern char *buf;
|
||||
+ struct disk_info *dip;
|
||||
+ int profile;
|
||||
+
|
||||
if(lverbose)
|
||||
printf("HINT: use dvd+rw-mediainfo from dvd+rw-tools for information extraction.\n");
|
||||
/* if(getdisktype_mmc(usalp, dp)<0)
|
||||
@@ -1521,6 +1526,18 @@ getdisktype_mdvd(SCSI *usalp, cdr_t *dp)
|
||||
dsp->ds_disktype&= ~DT_CD;
|
||||
dsp->ds_disktype|= DT_DVD;
|
||||
|
||||
+ profile = get_curprofile(usalp);
|
||||
+ if (profile == 0x1A) {
|
||||
+ dip = (struct disk_info *)buf;
|
||||
+ if (get_diskinfo(usalp, dip) < 0)
|
||||
+ return (-1);
|
||||
+ if (dip->disk_status == DS_EMPTY) { /* Unformatted */
|
||||
+ dsp->ds_flags |= DSF_NEED_FORMAT;
|
||||
+ if(lverbose)
|
||||
+ printf("The medium is empty, it will be auto formatted.\n");
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
return (ret);
|
||||
|
||||
}
|
||||
diff -up cdrkit-1.1.11/wodim/scsi_cdr.c.format cdrkit-1.1.11/wodim/scsi_cdr.c
|
||||
--- cdrkit-1.1.11/wodim/scsi_cdr.c.format 2011-05-18 16:49:14.601822130 +0200
|
||||
+++ cdrkit-1.1.11/wodim/scsi_cdr.c 2011-05-18 16:49:14.600822130 +0200
|
||||
@@ -1328,7 +1328,7 @@ scsi_format(SCSI *usalp, caddr_t addr, i
|
||||
}
|
||||
sleep(10);
|
||||
printf("\rFormating in progress: 100.00 %% done. \n");
|
||||
- if (pid) exit (0);
|
||||
+ if (pid > 0) exit (0);
|
||||
return ret;
|
||||
}
|
||||
|
||||
diff -up cdrkit-1.1.11/wodim/wodim.c.format cdrkit-1.1.11/wodim/wodim.c
|
||||
--- cdrkit-1.1.11/wodim/wodim.c.format 2011-05-18 16:49:14.584822130 +0200
|
||||
+++ cdrkit-1.1.11/wodim/wodim.c 2011-05-18 17:21:59.510821630 +0200
|
||||
@@ -946,6 +946,40 @@ int main(int argc, char *argv[])
|
||||
print_toc(usalp, dp);
|
||||
comexit(0);
|
||||
}
|
||||
+
|
||||
+ if ((flags & F_FORMAT) || (dp->cdr_dstat->ds_flags & DSF_NEED_FORMAT)) {
|
||||
+ printf("wodim: media format asked\n");
|
||||
+ /*
|
||||
+ * Do not abort if OPC failes. Just give it a chance
|
||||
+ * for better laser power calibration than without OPC.
|
||||
+ *
|
||||
+ * Ricoh drives return with a vendor unique sense code.
|
||||
+ * This is most likely because they refuse to do OPC
|
||||
+ * on a non blank media.
|
||||
+ */
|
||||
+ usalp->silent++;
|
||||
+ do_opc(usalp, dp, flags);
|
||||
+ usalp->silent--;
|
||||
+ wait_unit_ready(usalp, 120);
|
||||
+ if (gettimeofday(&starttime, (struct timezone *)0) < 0)
|
||||
+ errmsg("Cannot get start time\n");
|
||||
+
|
||||
+ if ((*dp->cdr_format)(usalp, dp, formattype) < 0) {
|
||||
+ errmsgno(EX_BAD, "Cannot format disk, aborting.\n");
|
||||
+ comexit(EX_BAD);
|
||||
+ }
|
||||
+ if (gettimeofday(&fixtime, (struct timezone *)0) < 0)
|
||||
+ errmsg("Cannot get format time\n");
|
||||
+ if (lverbose)
|
||||
+ prtimediff("Formatting time: ", &starttime, &fixtime);
|
||||
+
|
||||
+ if (!wait_unit_ready(usalp, 240) || tracks == 0) {
|
||||
+ comexit(0);
|
||||
+ }
|
||||
+ if (gettimeofday(&starttime, (struct timezone *)0) < 0)
|
||||
+ errmsg("Cannot get start time\n");
|
||||
+ }
|
||||
+
|
||||
#ifdef XXX
|
||||
if ((*dp->cdr_check_session)() < 0) {
|
||||
comexit(EX_BAD);
|
||||
@@ -1230,38 +1264,6 @@ int main(int argc, char *argv[])
|
||||
comexit(0);
|
||||
}
|
||||
}
|
||||
- if (flags & F_FORMAT) {
|
||||
- printf("wodim: media format asked\n");
|
||||
- /*
|
||||
- * Do not abort if OPC failes. Just give it a chance
|
||||
- * for better laser power calibration than without OPC.
|
||||
- *
|
||||
- * Ricoh drives return with a vendor unique sense code.
|
||||
- * This is most likely because they refuse to do OPC
|
||||
- * on a non blank media.
|
||||
- */
|
||||
- usalp->silent++;
|
||||
- do_opc(usalp, dp, flags);
|
||||
- usalp->silent--;
|
||||
- wait_unit_ready(usalp, 120);
|
||||
- if (gettimeofday(&starttime, (struct timezone *)0) < 0)
|
||||
- errmsg("Cannot get start time\n");
|
||||
-
|
||||
- if ((*dp->cdr_format)(usalp, dp, formattype) < 0) {
|
||||
- errmsgno(EX_BAD, "Cannot format disk, aborting.\n");
|
||||
- comexit(EX_BAD);
|
||||
- }
|
||||
- if (gettimeofday(&fixtime, (struct timezone *)0) < 0)
|
||||
- errmsg("Cannot get format time\n");
|
||||
- if (lverbose)
|
||||
- prtimediff("Formatting time: ", &starttime, &fixtime);
|
||||
-
|
||||
- if (!wait_unit_ready(usalp, 240) || tracks == 0) {
|
||||
- comexit(0);
|
||||
- }
|
||||
- if (gettimeofday(&starttime, (struct timezone *)0) < 0)
|
||||
- errmsg("Cannot get start time\n");
|
||||
- }
|
||||
/*
|
||||
* Reset start time so we will not see blanking time and
|
||||
* writing time counted together.
|
@ -0,0 +1,12 @@
|
||||
diff -up cdrkit-1.1.11/icedax/icedax.c.handler cdrkit-1.1.11/icedax/icedax.c
|
||||
--- cdrkit-1.1.11/icedax/icedax.c.handler 2011-06-02 16:37:02.446206285 +0200
|
||||
+++ cdrkit-1.1.11/icedax/icedax.c 2011-06-02 16:37:25.444206279 +0200
|
||||
@@ -1054,7 +1054,7 @@ static void exit_wrapper(int status)
|
||||
|
||||
if (child_pid != 0) {
|
||||
SCSI *usalp = get_scsi_p();
|
||||
- if (usalp->running) {
|
||||
+ if (usalp && usalp->running) {
|
||||
usalp->cb_fun = on_exitscsi;
|
||||
usalp->cb_arg = (void *) (uintptr_t) status;
|
||||
} else {
|
@ -0,0 +1,201 @@
|
||||
diff -up wrk/genisoimage/genisoimage.1.wrk wrk/genisoimage/genisoimage.1
|
||||
--- wrk/genisoimage/genisoimage.1.wrk 2017-01-04 15:58:13.697936687 +0100
|
||||
+++ wrk/genisoimage/genisoimage.1 2017-01-04 16:08:22.411801026 +0100
|
||||
@@ -115,7 +115,8 @@ is the path of the directory tree to be
|
||||
Multiple paths can be specified, and
|
||||
.B genisoimage
|
||||
will merge the files found in all of the specified path components to
|
||||
-form the filesystem image.
|
||||
+form the filesystem image. If an error is encountered while handling directory tree,
|
||||
+only error messages are produced and the process is aborted - incomplete image is not created.
|
||||
.PP
|
||||
If the option
|
||||
.B \-graft\-points
|
||||
@@ -180,6 +181,8 @@ in the
|
||||
file.
|
||||
.TP
|
||||
.BI \-A " application_id"
|
||||
+.TP
|
||||
+.BI \-appid " application_id"
|
||||
Specifies a text string that will be written into the volume header.
|
||||
This should describe the application that will be on the disc. There
|
||||
is space for 128 characters. Equivalent to
|
||||
@@ -365,6 +368,8 @@ the Sun disk label will overlay the firs
|
||||
boot image.
|
||||
.TP
|
||||
.BI \-b " eltorito_boot_image"
|
||||
+.TP
|
||||
+.BI \-eltorito\-boot " eltorito_boot_image"
|
||||
Specifies the path and filename of the boot image to be used when making
|
||||
an El Torito bootable CD for x86 PCs. The pathname must be relative to
|
||||
the source path specified to
|
||||
@@ -427,6 +432,8 @@ See the
|
||||
section for a description of this table.
|
||||
.TP
|
||||
.BI \-C " last_sess_start,next_sess_start"
|
||||
+.TP
|
||||
+.BI \-cdrecord\-params " last_sess_start,next_sess_start"
|
||||
This option is needed to create a CD Extra or the image of a second
|
||||
session or a higher-level session for a multisession disc.
|
||||
.B \-C
|
||||
@@ -452,6 +459,8 @@ session on a CD Extra. This is a multise
|
||||
in the first session and an ISO9660 filesystem in the second session.
|
||||
.TP
|
||||
.BI \-c " boot_catalog"
|
||||
+.TP
|
||||
+.BI \-eltorito\-catalog " boot_catalog"
|
||||
Specifies the path and filename of the boot catalog, which is required
|
||||
for an El Torito bootable CD. The pathname must be relative to the source
|
||||
path specified to
|
||||
@@ -488,6 +497,12 @@ For the parameter
|
||||
see the description of
|
||||
.BR \-M .
|
||||
.TP
|
||||
+.BI \-checksum_algorithm_iso " alg1,alg2,..."
|
||||
+Specify the checksum types desired for the output image.
|
||||
+.TP
|
||||
+.BI \-checksum_algorithm_template " alg1,alg2,..."
|
||||
+Specify the checksum types desired for the output jigdo template.
|
||||
+.TP
|
||||
.BI \-copyright " file"
|
||||
Specifies copyright information, typically a filename on the disc.
|
||||
There is space for 37 characters. Equivalent to
|
||||
@@ -497,12 +512,16 @@ in the
|
||||
file.
|
||||
.TP
|
||||
.B \-d
|
||||
+.TP
|
||||
+.B \-omit\-period
|
||||
Do not append a period to files that do not have one.
|
||||
.br
|
||||
This violates the ISO9660 standard, but it happens to work on many systems.
|
||||
Use with caution.
|
||||
.TP
|
||||
.B \-D
|
||||
+.TP
|
||||
+.B \-disable\-deep\-relocation
|
||||
Do not use deep directory relocation, and instead just pack them in the
|
||||
way we see them.
|
||||
.br
|
||||
@@ -510,6 +529,9 @@ If ISO9660:1999 has not been selected,
|
||||
this violates the ISO9660 standard, but it happens to work on many systems.
|
||||
Use with caution.
|
||||
.TP
|
||||
+.B \-debug
|
||||
+Set debug flag.
|
||||
+.TP
|
||||
.BI \-dir\-mode " mode"
|
||||
Overrides the mode of directories used to create the image to
|
||||
.IR mode ,
|
||||
@@ -535,7 +557,14 @@ another directory
|
||||
needs to include all needed files (filenames must be all caps) for a
|
||||
compliant DVD-Video filesystem.
|
||||
.TP
|
||||
+.BI \-e " efi_boot_file"
|
||||
+.TP
|
||||
+.BI \-efi\-boot " efi_boot_file"
|
||||
+Set EFI boot image name.
|
||||
+.TP
|
||||
.B \-f
|
||||
+.TP
|
||||
+.B \-follow\-links
|
||||
Follow symbolic links when generating the filesystem. When this option is not
|
||||
in use, symbolic links will be entered using Rock Ridge if enabled, otherwise
|
||||
they will be ignored.
|
||||
@@ -740,6 +769,8 @@ See the
|
||||
section below for more details.
|
||||
.TP
|
||||
.B \-l
|
||||
+.TP
|
||||
+.B \-full\-iso9660\-filenames
|
||||
Allow full 31-character filenames. Normally the ISO9660 filename will be in an
|
||||
8.3 format which is compatible with MS-DOS, even though the ISO9660 standard
|
||||
allows filenames of up to 31 characters. If you use this option, the disc may
|
||||
@@ -870,6 +901,8 @@ with
|
||||
.BR \-C .
|
||||
.TP
|
||||
.B \-N
|
||||
+.TP
|
||||
+.B \-omit\-version\-number
|
||||
Omit version numbers from ISO9660 filenames.
|
||||
.br
|
||||
This violates the ISO9660 standard, but no one really uses the
|
||||
@@ -967,6 +1000,8 @@ in the
|
||||
file.
|
||||
.TP
|
||||
.BI \-p " preparer_id"
|
||||
+.TP
|
||||
+.BI \-preparer " preparer_id"
|
||||
Specifies a text string that will be written into the volume header.
|
||||
This should describe the preparer of the CD-ROM, usually with a mailing
|
||||
address and phone number. There is space for 128 characters.
|
||||
@@ -1008,10 +1043,14 @@ This makes
|
||||
even less verbose. No progress output will be provided.
|
||||
.TP
|
||||
.B \-R
|
||||
+.TP
|
||||
+.B \-rock
|
||||
Generate SUSP and RR records using the Rock Ridge protocol to further describe
|
||||
the files on the ISO9660 filesystem.
|
||||
.TP
|
||||
.B \-r
|
||||
+.TP
|
||||
+.B \-rational\-rock
|
||||
This is like the \-R option, but file ownership and modes are set to
|
||||
more useful values. The uid and gid are set to zero, because they are
|
||||
usually only useful on the author's system, and not useful to the
|
||||
@@ -1092,6 +1131,11 @@ intentionally. Accessing several older v
|
||||
support by the operating system to choose which sessions are to be
|
||||
mounted.
|
||||
.TP
|
||||
+.BI \-s " sector type"
|
||||
+.TP
|
||||
+.BI \-sectype " sector type"
|
||||
+Set output sector type to e.g. data/xa1/raw.
|
||||
+ .TP
|
||||
.BI \-sort " sort_file"
|
||||
Sort file locations on the media. Sorting is controlled by a file that
|
||||
contains pairs of filenames and sorting offset weighting.
|
||||
@@ -1213,6 +1257,8 @@ in the
|
||||
file.
|
||||
.TP
|
||||
.B \-T
|
||||
+.TP
|
||||
+.B \-translation\-table
|
||||
Generate a file
|
||||
.I TRANS.TBL
|
||||
in each directory on the CD-ROM, which can be used
|
||||
@@ -1262,6 +1308,8 @@ to
|
||||
This option is the default on VMS.
|
||||
.TP
|
||||
.B \-U
|
||||
+.TP
|
||||
+.B \-untranslated\-filenames
|
||||
Allows "untranslated" filenames, completely violating the ISO9660 standards
|
||||
described above. Enables the following flags:
|
||||
.B \-d \-l \-N \-allow\-leading\-dots \-relaxed\-filenames
|
||||
@@ -1333,6 +1381,8 @@ must be specified before
|
||||
on each command line.
|
||||
.TP
|
||||
.B \-v
|
||||
+.TP
|
||||
+.B \-verbose
|
||||
Verbose execution. If given twice on the command line, extra debug information
|
||||
will be printed.
|
||||
.TP
|
||||
@@ -1341,7 +1391,15 @@ Identical to
|
||||
.B \-m
|
||||
.IR glob .
|
||||
.TP
|
||||
+.B \-XA
|
||||
+Generate XA directory attruibutes.
|
||||
+.TP
|
||||
+.B \-xa
|
||||
+Generate rationalized XA directory attruibutes.
|
||||
+.TP
|
||||
.B \-z
|
||||
+.TP
|
||||
+.B \-transparent\-compression
|
||||
Generate special
|
||||
.I RRIP
|
||||
records for transparently compressed files.
|
@ -0,0 +1,37 @@
|
||||
diff -up wrk/genisoimage/jte.c.wrk wrk/genisoimage/jte.c
|
||||
--- wrk/genisoimage/jte.c.wrk 2013-02-22 13:24:47.722196877 +0100
|
||||
+++ wrk/genisoimage/jte.c 2013-02-25 12:41:45.136653487 +0100
|
||||
@@ -280,7 +280,7 @@ extern int list_file_in_jigdo(char *file
|
||||
if (!jtemplate_out)
|
||||
return 0;
|
||||
|
||||
- memset(md5, 0, sizeof(md5));
|
||||
+ memset(md5, 0, 16);
|
||||
|
||||
/* Cheaper to check file size first */
|
||||
if (size < jte_min_size)
|
||||
diff -up wrk/genisoimage/md5.c.wrk wrk/genisoimage/md5.c
|
||||
--- wrk/genisoimage/md5.c.wrk 2013-02-22 13:15:18.210866321 +0100
|
||||
+++ wrk/genisoimage/md5.c 2013-02-22 13:15:29.979935133 +0100
|
||||
@@ -183,7 +183,7 @@ mk_MD5Final (unsigned char digest[16], s
|
||||
putu32(ctx->buf[1], digest + 4);
|
||||
putu32(ctx->buf[2], digest + 8);
|
||||
putu32(ctx->buf[3], digest + 12);
|
||||
- memset(ctx, 0, sizeof(ctx)); /* In case it's sensitive */
|
||||
+ memset(ctx, 0, sizeof(*ctx)); /* In case it's sensitive */
|
||||
}
|
||||
|
||||
/* The four core functions - F1 is optimized somewhat */
|
||||
diff -up wrk/libedc/edcspeed.c.wrk wrk/libedc/edcspeed.c
|
||||
--- wrk/libedc/edcspeed.c.wrk 2013-02-22 10:45:33.353219110 +0100
|
||||
+++ wrk/libedc/edcspeed.c 2013-02-22 10:46:52.497686387 +0100
|
||||
@@ -35,7 +35,8 @@ static int encspeed()
|
||||
secs = 10;
|
||||
end = 75*1000000 * secs;
|
||||
|
||||
- memset(sect, 0, sizeof(sect));
|
||||
+ //faulty and unneccessary, immediately rewritten again
|
||||
+ //memset(sect, 0, sizeof(sect));
|
||||
for (i=0; i < 2352; ) {
|
||||
sect[i++] = 'J';
|
||||
sect[i++] = 'S';
|
@ -0,0 +1,556 @@
|
||||
diff -up cdrkit-1.1.11/CMakeLists.txt.paranoiacdda cdrkit-1.1.11/CMakeLists.txt
|
||||
--- cdrkit-1.1.11/CMakeLists.txt.paranoiacdda 2012-07-31 14:27:15.166155309 +0200
|
||||
+++ cdrkit-1.1.11/CMakeLists.txt 2012-07-31 14:27:28.469613175 +0200
|
||||
@@ -1,3 +1,3 @@
|
||||
PROJECT (cdrkit C)
|
||||
-SUBDIRS(include genisoimage wodim libedc libhfs_iso libparanoia icedax libusal librols libunls readom netscsid 3rd-party/dirsplit)
|
||||
+SUBDIRS(include genisoimage wodim libedc libhfs_iso icedax libusal librols libunls readom netscsid 3rd-party/dirsplit)
|
||||
|
||||
diff -up cdrkit-1.1.11/icedax/CMakeLists.txt.paranoiacdda cdrkit-1.1.11/icedax/CMakeLists.txt
|
||||
--- cdrkit-1.1.11/icedax/CMakeLists.txt.paranoiacdda 2012-07-31 14:27:15.228157411 +0200
|
||||
+++ cdrkit-1.1.11/icedax/CMakeLists.txt 2012-07-31 14:27:15.239157786 +0200
|
||||
@@ -1,8 +1,9 @@
|
||||
PROJECT (icedax C)
|
||||
-INCLUDE_DIRECTORIES(../include ../wodim ../libparanoia ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}/include)
|
||||
+INCLUDE_DIRECTORIES(../include ../wodim ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}/include)
|
||||
include(../include/AddScgBits.cmake)
|
||||
include(../include/AddSchilyBits.cmake)
|
||||
include(../include/AddNetworkBits.cmake)
|
||||
+INCLUDE (CheckLibraryExists)
|
||||
|
||||
FIND_FILE (HAVE_SYS_SOUNDCARD_H sys/soundcard.h)
|
||||
IF(HAVE_SYS_SOUNDCARD_H)
|
||||
@@ -18,12 +19,20 @@ IF(HAVE_LIBOSSAUDIO)
|
||||
LIST(APPEND EXTRA_LIBS "ossaudio")
|
||||
ENDIF(HAVE_LIBOSSAUDIO)
|
||||
|
||||
-LIST(APPEND EXTRA_LIBS paranoia)
|
||||
+CHECK_INCLUDE_FILES(cdda/cdda_interface.h HAVE_CDDA_INTERFACE_H)
|
||||
+CHECK_LIBRARY_EXISTS (cdda_paranoia paranoia_init "" HAVE_LIBPARANOIA)
|
||||
+IF(HAVE_CDDA_INTERFACE_H AND HAVE_LIBPARANOIA)
|
||||
+ LIST(APPEND EXTRA_LIBS cdda_paranoia cdda_interface)
|
||||
+ELSE(HAVE_CDDA_INTERFACE_H AND HAVE_LIBPARANOIA)
|
||||
+ MESSAGE(FATAL_ERROR "You need cdparanoia library installed")
|
||||
+ENDIF(HAVE_CDDA_INTERFACE_H AND HAVE_LIBPARANOIA)
|
||||
+
|
||||
+LIST(APPEND EXTRA_LIBS)
|
||||
IF (WIN32)
|
||||
LIST(APPEND EXTRA_LIBS winmm)
|
||||
ENDIF (WIN32)
|
||||
|
||||
-LINK_DIRECTORIES(../librols ../libusal ../libparanoia)
|
||||
+LINK_DIRECTORIES(../librols ../libusal)
|
||||
ADD_EXECUTABLE (icedax aifc.c aiff.c base64.c icedax.c interface.c ioctl.c raw.c resample.c ringbuff.c scsi_cmds.c semshm.c setuid.c sha_func.c sndconfig.c sun.c toc.c wav.c)
|
||||
TARGET_LINK_LIBRARIES(icedax wodimstuff ${EXTRA_LIBS})
|
||||
SET_TARGET_PROPERTIES(icedax PROPERTIES SKIP_BUILD_RPATH TRUE)
|
||||
diff -up cdrkit-1.1.11/icedax/global.h.paranoiacdda cdrkit-1.1.11/icedax/global.h
|
||||
--- cdrkit-1.1.11/icedax/global.h.paranoiacdda 2012-07-31 14:27:15.232157548 +0200
|
||||
+++ cdrkit-1.1.11/icedax/global.h 2012-07-31 14:27:15.226157345 +0200
|
||||
@@ -17,7 +17,8 @@
|
||||
#include "md5.h"
|
||||
#endif
|
||||
#ifdef USE_PARANOIA
|
||||
-#include "cdda_paranoia.h"
|
||||
+#include <cdda/cdda_interface.h>
|
||||
+#include <cdda/cdda_paranoia.h>
|
||||
#endif
|
||||
|
||||
typedef struct index_list
|
||||
@@ -102,10 +103,10 @@ typedef struct global
|
||||
|
||||
struct paranoia_parms_t
|
||||
{
|
||||
- Ucbit disable_paranoia:1;
|
||||
- Ucbit disable_extra_paranoia:1;
|
||||
- Ucbit disable_scratch_detect:1;
|
||||
- Ucbit disable_scratch_repair:1;
|
||||
+ char disable_paranoia:1;
|
||||
+ char disable_extra_paranoia:1;
|
||||
+ char disable_scratch_detect:1;
|
||||
+ char disable_scratch_repair:1;
|
||||
int retries;
|
||||
int overlap;
|
||||
int mindynoverlap;
|
||||
diff -up cdrkit-1.1.11/icedax/icedax.c.paranoiacdda cdrkit-1.1.11/icedax/icedax.c
|
||||
--- cdrkit-1.1.11/icedax/icedax.c.paranoiacdda 2012-07-31 14:27:15.237157718 +0200
|
||||
+++ cdrkit-1.1.11/icedax/icedax.c 2012-07-31 14:27:15.238157752 +0200
|
||||
@@ -120,6 +120,10 @@
|
||||
#ifdef USE_LAME
|
||||
#include "mp3.h" /* mp3 file handling */
|
||||
#endif
|
||||
+#ifdef USE_PARANOIA
|
||||
+#include <cdda/cdda_interface.h>
|
||||
+#include <cdda/cdda_paranoia.h>
|
||||
+#endif
|
||||
#include "interface.h" /* low level cdrom interfacing */
|
||||
#include "icedax.h"
|
||||
#include "resample.h"
|
||||
@@ -128,9 +132,6 @@
|
||||
#include "ringbuff.h"
|
||||
#include "global.h"
|
||||
#include "exitcodes.h"
|
||||
-#ifdef USE_PARANOIA
|
||||
-#include "cdda_paranoia.h"
|
||||
-#endif
|
||||
#include "defaults.h"
|
||||
|
||||
static void RestrictPlaybackRate(long newrate);
|
||||
@@ -800,7 +801,7 @@ static void init_globals()
|
||||
global.useroverlap = -1; /* amount of overlapping sectors user override */
|
||||
global.need_hostorder = 0; /* processing needs samples in host endianess */
|
||||
global.in_lendian = -1; /* input endianess from SetupSCSI() */
|
||||
- global.outputendianess = NONE; /* user specified output endianess */
|
||||
+ global.outputendianess = NONE_EN; /* user specified output endianess */
|
||||
global.findminmax = 0; /* flag find extrem amplitudes */
|
||||
#ifdef HAVE_LIMITS_H
|
||||
global.maxamp[0] = INT_MIN; /* maximum amplitude */
|
||||
@@ -2418,7 +2419,7 @@ Rate Divider Rate Divider
|
||||
if (bulk == -1) bulk = 0;
|
||||
|
||||
global.need_big_endian = global.audio_out->need_big_endian;
|
||||
- if (global.outputendianess != NONE)
|
||||
+ if (global.outputendianess != NONE_EN)
|
||||
global.need_big_endian = global.outputendianess == BIG;
|
||||
|
||||
if (global.no_file) global.fname_base[0] = '\0';
|
||||
@@ -2602,7 +2603,7 @@ Rate Divider Rate Divider
|
||||
fputs( ", soundcard", stderr );
|
||||
#endif
|
||||
#if defined USE_PARANOIA
|
||||
- fputs( ", libparanoia", stderr );
|
||||
+ fputs( ", libcdda_paranoia", stderr );
|
||||
#endif
|
||||
fputs( " support\n", stderr );
|
||||
}
|
||||
@@ -2892,8 +2893,28 @@ Rate Divider Rate Divider
|
||||
#ifdef USE_PARANOIA
|
||||
if (global.paranoia_selected) {
|
||||
long paranoia_mode;
|
||||
+ cdrom_drive *tmpdrive;
|
||||
+ usal_close(get_scsi_p());
|
||||
|
||||
- global.cdp = paranoia_init(get_scsi_p(), global.nsectors);
|
||||
+ tmpdrive = cdda_identify(global.dev_name, 0, NULL);
|
||||
+ if (!tmpdrive)
|
||||
+ {
|
||||
+ fputs("Can't identify disc\n", stderr);
|
||||
+ return 1;
|
||||
+ }
|
||||
+
|
||||
+ if(global.nsectors)
|
||||
+ {
|
||||
+ tmpdrive->nsectors = global.nsectors;
|
||||
+ tmpdrive->bigbuff = global.nsectors * CD_FRAMESIZE_RAW;
|
||||
+ }
|
||||
+ if (cdda_open(tmpdrive) != 0)
|
||||
+ {
|
||||
+ fputs("Can't open disc\n", stderr);
|
||||
+ cdda_close(tmpdrive);
|
||||
+ return 1;
|
||||
+ }
|
||||
+ global.cdp = paranoia_init(tmpdrive);
|
||||
|
||||
if (global.paranoia_parms.overlap >= 0) {
|
||||
int overlap = global.paranoia_parms.overlap;
|
||||
@@ -2902,17 +2923,7 @@ Rate Divider Rate Divider
|
||||
overlap = global.nsectors - 1;
|
||||
paranoia_overlapset(global.cdp, overlap);
|
||||
}
|
||||
- /*
|
||||
- * Default to a minimum of dynamic overlapping == 0.5 sectors.
|
||||
- * If we don't do this, we get the default from libparanoia
|
||||
- * which is approx. 0.1.
|
||||
- */
|
||||
- if (global.paranoia_parms.mindynoverlap < 0)
|
||||
- paranoia_dynoverlapset(global.cdp, CD_FRAMEWORDS/2, -1);
|
||||
- paranoia_dynoverlapset(global.cdp,
|
||||
- global.paranoia_parms.mindynoverlap * CD_FRAMEWORDS,
|
||||
- global.paranoia_parms.maxdynoverlap * CD_FRAMEWORDS);
|
||||
-
|
||||
+
|
||||
paranoia_mode = PARANOIA_MODE_FULL ^ PARANOIA_MODE_NEVERSKIP;
|
||||
|
||||
if (global.paranoia_parms.disable_paranoia) {
|
||||
diff -up cdrkit-1.1.11/icedax/icedax.h.paranoiacdda cdrkit-1.1.11/icedax/icedax.h
|
||||
--- cdrkit-1.1.11/icedax/icedax.h.paranoiacdda 2012-07-31 14:27:15.216157005 +0200
|
||||
+++ cdrkit-1.1.11/icedax/icedax.h 2012-07-31 14:27:15.217157039 +0200
|
||||
@@ -41,7 +41,7 @@
|
||||
|
||||
/* Endianess */
|
||||
#define GUESS (-2)
|
||||
-#define NONE (-1)
|
||||
+#define NONE_EN (-1)
|
||||
#define LITTLE 0
|
||||
#define BIG 1
|
||||
|
||||
diff -up cdrkit-1.1.11/icedax/interface.c.paranoiacdda cdrkit-1.1.11/icedax/interface.c
|
||||
--- cdrkit-1.1.11/icedax/interface.c.paranoiacdda 2012-07-31 14:27:15.235157650 +0200
|
||||
+++ cdrkit-1.1.11/icedax/interface.c 2012-07-31 14:27:15.232157548 +0200
|
||||
@@ -116,7 +116,7 @@ int (*Play_at)(SCSI *usalp, unsigned in
|
||||
int (*StopPlay)(SCSI *usalp);
|
||||
void (*trash_cache)(UINT4 *p, unsigned lSector, unsigned SectorBurstVal);
|
||||
|
||||
-#if defined USE_PARANOIA
|
||||
+#if 0 //defined USE_PARANOIA
|
||||
long cdda_read(void *d, void *buffer, long beginsector, long sectors);
|
||||
|
||||
long cdda_read(void *d, void *buffer, long beginsector, long sectors)
|
||||
diff -up cdrkit-1.1.11/icedax/toc.c.paranoiacdda cdrkit-1.1.11/icedax/toc.c
|
||||
--- cdrkit-1.1.11/icedax/toc.c.paranoiacdda 2012-07-31 14:27:15.225157311 +0200
|
||||
+++ cdrkit-1.1.11/icedax/toc.c 2012-07-31 14:27:15.230157480 +0200
|
||||
@@ -379,8 +379,7 @@ static void emit_cddb_form(char *fname_b
|
||||
static void emit_cdindex_form(char *fname_baseval);
|
||||
#endif
|
||||
|
||||
-
|
||||
-typedef struct TOC { /* structure of table of contents (cdrom) */
|
||||
+typedef struct TOC_t { /* structure of table of contents (cdrom) */
|
||||
unsigned char reserved1;
|
||||
unsigned char bFlags;
|
||||
unsigned char bTrack;
|
||||
@@ -391,8 +390,7 @@ typedef struct TOC { /* structure of tab
|
||||
int frms;
|
||||
unsigned char ISRC[16];
|
||||
int SCMS;
|
||||
-} TOC;
|
||||
-
|
||||
+} TOC_t;
|
||||
|
||||
/* Flags contains two fields:
|
||||
bits 7-4 (ADR)
|
||||
@@ -432,7 +430,7 @@ struct iterator {
|
||||
int index;
|
||||
int startindex;
|
||||
void (*reset)(struct iterator *this);
|
||||
- struct TOC *(*getNextTrack)(struct iterator *this);
|
||||
+ struct TOC_t *(*getNextTrack)(struct iterator *this);
|
||||
int (*hasNextTrack)(struct iterator *this);
|
||||
};
|
||||
|
||||
@@ -518,7 +516,7 @@ unsigned FixupTOC(unsigned no_tracks)
|
||||
InitIterator(&i, 1);
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- struct TOC *p = i.getNextTrack(&i);
|
||||
+ struct TOC_t *p = i.getNextTrack(&i);
|
||||
if (IS__AUDIO(p)) count_audio_tracks++;
|
||||
}
|
||||
|
||||
@@ -733,7 +731,7 @@ static void emit_cddb_form(char *fname_b
|
||||
fprintf( cddb_form, "# Track frame offsets:\n#\n");
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- struct TOC *p = i.getNextTrack(&i);
|
||||
+ struct TOC_t *p = i.getNextTrack(&i);
|
||||
if (GETTRACK(p) == CDROM_LEADOUT) break;
|
||||
fprintf( cddb_form,
|
||||
"# %lu\n", 150 + Get_AudioStartSector(GETTRACK(p)));
|
||||
@@ -765,7 +763,7 @@ static void emit_cddb_form(char *fname_b
|
||||
|
||||
i.reset(&i);
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- struct TOC *p = i.getNextTrack(&i);
|
||||
+ struct TOC_t *p = i.getNextTrack(&i);
|
||||
int ii;
|
||||
|
||||
ii = GETTRACK(p);
|
||||
@@ -788,7 +786,7 @@ static void emit_cddb_form(char *fname_b
|
||||
|
||||
i.reset(&i);
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- struct TOC *p = i.getNextTrack(&i);
|
||||
+ struct TOC_t *p = i.getNextTrack(&i);
|
||||
int ii;
|
||||
|
||||
ii = GETTRACK(p);
|
||||
@@ -1495,7 +1493,7 @@ static int IsSingleArtist(void)
|
||||
InitIterator(&i, 1);
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- struct TOC *p = i.getNextTrack(&i);
|
||||
+ struct TOC_t *p = i.getNextTrack(&i);
|
||||
int ii;
|
||||
|
||||
if (IS__DATA(p) || GETTRACK(p) == CDROM_LEADOUT) continue;
|
||||
@@ -1681,7 +1679,7 @@ static void emit_cdindex_form(char *fnam
|
||||
global.creator ? ascii2html(global.creator) : "");
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- struct TOC *p = i.getNextTrack(&i);
|
||||
+ struct TOC_t *p = i.getNextTrack(&i);
|
||||
int ii = GETTRACK(p);
|
||||
|
||||
if (ii == CDROM_LEADOUT) break;
|
||||
@@ -1703,7 +1701,7 @@ static void emit_cdindex_form(char *fnam
|
||||
fprintf( cdindex_form, " <MultipleArtistCD>\n");
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- struct TOC *p = i.getNextTrack(&i);
|
||||
+ struct TOC_t *p = i.getNextTrack(&i);
|
||||
int ii = GETTRACK(p);
|
||||
|
||||
if (ii == CDROM_LEADOUT) break;
|
||||
@@ -1942,9 +1940,9 @@ static void DisplayToc_with_gui(unsigned
|
||||
|
||||
if ((global.verbose & (SHOW_TOC | SHOW_STARTPOSITIONS | SHOW_SUMMARY | SHOW_TITLES)) != 0
|
||||
&& i.hasNextTrack(&i)) {
|
||||
- TOC *o = i.getNextTrack(&i);
|
||||
+ TOC_t *o = i.getNextTrack(&i);
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
int from;
|
||||
from = GETTRACK(o);
|
||||
|
||||
@@ -2072,9 +2070,9 @@ static void DisplayToc_no_gui(unsigned l
|
||||
count_audio_trks = 0;
|
||||
|
||||
if (i.hasNextTrack(&i)) {
|
||||
- TOC *o = i.getNextTrack(&i);
|
||||
+ TOC_t *o = i.getNextTrack(&i);
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
int from;
|
||||
from = GETTRACK(o);
|
||||
|
||||
@@ -2131,10 +2129,10 @@ static void DisplayToc_no_gui(unsigned l
|
||||
i.reset(&i);
|
||||
if ((global.verbose & SHOW_TOC) != 0 &&
|
||||
i.hasNextTrack(&i)) {
|
||||
- TOC *o = i.getNextTrack(&i);
|
||||
+ TOC_t *o = i.getNextTrack(&i);
|
||||
|
||||
for (; i.hasNextTrack(&i);) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
|
||||
if ( GETTRACK(o) <= MAXTRK ) {
|
||||
unsigned char brace1, brace2;
|
||||
@@ -2189,9 +2187,9 @@ static void DisplayToc_no_gui(unsigned l
|
||||
ii = 0;
|
||||
i.reset(&i);
|
||||
if (i.hasNextTrack(&i)) {
|
||||
- TOC *o = i.getNextTrack(&i);
|
||||
+ TOC_t *o = i.getNextTrack(&i);
|
||||
for ( ; i.hasNextTrack(&i);) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
fprintf ( stderr,
|
||||
" %2u.(%8u)",
|
||||
GETTRACK(o),
|
||||
@@ -2248,7 +2246,7 @@ static void DisplayToc_no_gui(unsigned l
|
||||
|
||||
i.reset(&i);
|
||||
for ( ; i.hasNextTrack(&i);) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
int jj = GETTRACK(p);
|
||||
|
||||
if ( global.tracktitle[jj] != NULL ) {
|
||||
@@ -2260,7 +2258,7 @@ static void DisplayToc_no_gui(unsigned l
|
||||
|
||||
i.reset(&i);
|
||||
for ( ; i.hasNextTrack(&i); ) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
int jj;
|
||||
|
||||
if (IS__DATA(p))
|
||||
@@ -2720,7 +2718,7 @@ void Read_MCN_ISRC(void)
|
||||
InitIterator(&i, 1);
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- struct TOC *p = i.getNextTrack(&i);
|
||||
+ struct TOC_t *p = i.getNextTrack(&i);
|
||||
unsigned ii = GETTRACK(p);
|
||||
|
||||
if (ii == CDROM_LEADOUT) break;
|
||||
@@ -3155,7 +3153,7 @@ unsigned ScanIndices(unsigned track, uns
|
||||
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- struct TOC *p = i.getNextTrack(&i);
|
||||
+ struct TOC_t *p = i.getNextTrack(&i);
|
||||
unsigned ii = GETTRACK(p);
|
||||
|
||||
if ( ii < starttrack || IS__DATA(p) )
|
||||
@@ -3322,7 +3320,7 @@ unsigned char *Get_MCN(void)
|
||||
}
|
||||
|
||||
|
||||
-static TOC g_toc [MAXTRK+1]; /* hidden track + 100 regular tracks */
|
||||
+static TOC_t g_toc [MAXTRK+1]; /* hidden track + 100 regular tracks */
|
||||
|
||||
/*#define IS_AUDIO(i) (!(g_toc[i].bFlags & 0x40))*/
|
||||
|
||||
@@ -3397,10 +3395,10 @@ static int patch_cd_extra(unsigned track
|
||||
|
||||
static int restrict_tracks_illleadout(void)
|
||||
{
|
||||
- struct TOC *o = &g_toc[cdtracks+1];
|
||||
+ struct TOC_t *o = &g_toc[cdtracks+1];
|
||||
int i;
|
||||
for (i = cdtracks; i >= 0; i--) {
|
||||
- struct TOC *p = &g_toc[i];
|
||||
+ struct TOC_t *p = &g_toc[i];
|
||||
if (GETSTART(o) > GETSTART(p)) break;
|
||||
}
|
||||
patch_cd_extra(i+1, GETSTART(o));
|
||||
@@ -3523,7 +3521,7 @@ static void it_reset(struct iterator *th
|
||||
|
||||
|
||||
static int it_hasNextTrack(struct iterator *this);
|
||||
-static struct TOC *it_getNextTrack(struct iterator *this);
|
||||
+static struct TOC_t *it_getNextTrack(struct iterator *this);
|
||||
|
||||
static int it_hasNextTrack(struct iterator *this)
|
||||
{
|
||||
@@ -3532,7 +3530,7 @@ static int it_hasNextTrack(struct iterat
|
||||
|
||||
|
||||
|
||||
-static struct TOC *it_getNextTrack(struct iterator *this)
|
||||
+static struct TOC_t *it_getNextTrack(struct iterator *this)
|
||||
{
|
||||
/* if ( (*this->hasNextTrack)(this) == 0 ) return NULL; */
|
||||
if ( this->index > (int)cdtracks+1 ) return NULL;
|
||||
@@ -3583,7 +3581,7 @@ long Get_AudioStartSector(unsigned long
|
||||
if (p_track == cdtracks + 1) p_track = CDROM_LEADOUT;
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
|
||||
if (GETTRACK(p) == p_track) {
|
||||
if (IS__DATA(p)) {
|
||||
@@ -3613,7 +3611,7 @@ long Get_StartSector(unsigned long p_tra
|
||||
if (p_track == cdtracks + 1) p_track = CDROM_LEADOUT;
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
|
||||
if (GETTRACK(p) == p_track) {
|
||||
return GETSTART(p);
|
||||
@@ -3637,7 +3635,7 @@ long Get_EndSector(unsigned long p_track
|
||||
if (p_track == cdtracks + 1) p_track = CDROM_LEADOUT;
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
if (GETTRACK(p) == p_track) {
|
||||
p = i.getNextTrack(&i);
|
||||
if (p == NULL) {
|
||||
@@ -3669,7 +3667,7 @@ long FirstAudioTrack(void)
|
||||
else i.reset(&i);
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
unsigned ii = GETTRACK(p);
|
||||
|
||||
if (ii == CDROM_LEADOUT) break;
|
||||
@@ -3687,7 +3685,7 @@ long FirstDataTrack(void)
|
||||
else i.reset(&i);
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
if (IS__DATA(p)) {
|
||||
return GETTRACK(p);
|
||||
}
|
||||
@@ -3708,7 +3706,7 @@ long LastAudioTrack(void)
|
||||
else i.reset(&i);
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
if (IS__AUDIO(p) && (GETTRACK(p) != CDROM_LEADOUT)) {
|
||||
j = GETTRACK(p);
|
||||
}
|
||||
@@ -3730,7 +3728,7 @@ long Get_LastSectorOnCd(unsigned long p_
|
||||
if (p_track == cdtracks + 1) p_track = CDROM_LEADOUT;
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
|
||||
if (GETTRACK(p) < p_track)
|
||||
continue;
|
||||
@@ -3749,9 +3747,9 @@ int Get_Track(unsigned long sector)
|
||||
else i.reset(&i);
|
||||
|
||||
if (i.hasNextTrack(&i)) {
|
||||
- TOC *o = i.getNextTrack(&i);
|
||||
+ TOC_t *o = i.getNextTrack(&i);
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
if ((GETSTART(o) <= sector) && (GETSTART(p) > sector)) {
|
||||
if (IS__DATA(o)) {
|
||||
return -1;
|
||||
@@ -3772,7 +3770,7 @@ int CheckTrackrange(unsigned long from,
|
||||
else i.reset(&i);
|
||||
|
||||
while (i.hasNextTrack(&i)) {
|
||||
- TOC *p = i.getNextTrack(&i);
|
||||
+ TOC_t *p = i.getNextTrack(&i);
|
||||
|
||||
if (GETTRACK(p) < from)
|
||||
continue;
|
||||
@@ -3788,54 +3786,3 @@ int CheckTrackrange(unsigned long from,
|
||||
return 0;
|
||||
}
|
||||
|
||||
-#ifdef USE_PARANOIA
|
||||
-long cdda_disc_firstsector(void *d);
|
||||
-
|
||||
-long cdda_disc_firstsector(void *d)
|
||||
-{
|
||||
- return Get_StartSector(FirstAudioTrack());
|
||||
-}
|
||||
-
|
||||
-int cdda_tracks(void *d);
|
||||
-
|
||||
-int cdda_tracks(void *d)
|
||||
-{
|
||||
- return LastAudioTrack() - FirstAudioTrack() +1;
|
||||
-}
|
||||
-
|
||||
-int cdda_track_audiop(void *d, int track);
|
||||
-
|
||||
-int cdda_track_audiop(void *d, int track)
|
||||
-{
|
||||
- return Get_Datatrack(track) == 0;
|
||||
-}
|
||||
-
|
||||
-long cdda_track_firstsector(void *d, int track);
|
||||
-
|
||||
-long cdda_track_firstsector(void *d, int track)
|
||||
-{
|
||||
- return Get_AudioStartSector(track);
|
||||
-}
|
||||
-
|
||||
-long cdda_track_lastsector(void *d, int track);
|
||||
-
|
||||
-long cdda_track_lastsector(void *d, int track)
|
||||
-{
|
||||
- return Get_EndSector(track);
|
||||
-}
|
||||
-
|
||||
-long cdda_disc_lastsector(void *d);
|
||||
-
|
||||
-long cdda_disc_lastsector(void *d)
|
||||
-{
|
||||
- return Get_LastSectorOnCd(cdtracks) - 1;
|
||||
-}
|
||||
-
|
||||
-int cdda_sector_gettrack(void *d,long sector);
|
||||
-
|
||||
-int cdda_sector_gettrack(void *d, long sector)
|
||||
-{
|
||||
- return Get_Track(sector);
|
||||
-}
|
||||
-
|
||||
-#endif
|
@ -0,0 +1,13 @@
|
||||
diff -up wrk/include/glibc_elf.h.wrk wrk/include/glibc_elf.h
|
||||
--- wrk/include/glibc_elf.h.wrk 2014-09-19 16:04:45.546981432 +0200
|
||||
+++ wrk/include/glibc_elf.h 2014-09-19 16:38:55.407991682 +0200
|
||||
@@ -2081,7 +2081,8 @@ typedef Elf32_Addr Elf32_Conflict;
|
||||
#define R_PPC64_DTPREL16_HIGHESTA 106 /* half16 (sym+add)@dtprel@highesta */
|
||||
|
||||
/* Keep this the last entry. */
|
||||
-#define R_PPC64_NUM 107
|
||||
+//symbol conflicting with system headers on ppc64le and nowhere used
|
||||
+//#define R_PPC64_NUM 107
|
||||
|
||||
/* PowerPC64 specific values for the Dyn d_tag field. */
|
||||
#define DT_PPC64_GLINK (DT_LOPROC + 0)
|
@ -0,0 +1,12 @@
|
||||
diff -up cdrkit-1.1.11/readom/readom.c.readsegfault cdrkit-1.1.11/readom/readom.c
|
||||
--- cdrkit-1.1.11/readom/readom.c.readsegfault 2011-03-07 15:51:46.889441591 +0100
|
||||
+++ cdrkit-1.1.11/readom/readom.c 2011-03-07 15:51:50.702938263 +0100
|
||||
@@ -906,7 +906,7 @@ read_ftoc(SCSI *usalp, parm_t *parmp, BO
|
||||
|
||||
|
||||
strcpy(filename, "toc.dat");
|
||||
- if (strcmp(parmp->name, "/dev/null") != 0) {
|
||||
+ if (parmp != NULL && strcmp(parmp->name, "/dev/null") != 0) {
|
||||
|
||||
len = strlen(parmp->name);
|
||||
if (len > (sizeof (filename)-5)) {
|
@ -0,0 +1,31 @@
|
||||
diff -up cdrkit-1.1.11/genisoimage/tree.c.rootstat cdrkit-1.1.11/genisoimage/tree.c
|
||||
--- cdrkit-1.1.11/genisoimage/tree.c.rootstat 2011-01-25 14:15:36.766389403 +0100
|
||||
+++ cdrkit-1.1.11/genisoimage/tree.c 2011-01-25 14:17:24.804643126 +0100
|
||||
@@ -48,6 +48,7 @@
|
||||
#include <fctldefs.h>
|
||||
#include <device.h>
|
||||
#include <schily.h>
|
||||
+#include <libgen.h>
|
||||
|
||||
extern int allow_limited_size;
|
||||
|
||||
@@ -1421,12 +1422,16 @@ insert_file_entry(struct directory *this
|
||||
return (0);
|
||||
}
|
||||
if (this_dir == root && strcmp(short_name, ".") == 0)
|
||||
- root_statbuf = statbuf; /* Save this for later on */
|
||||
+ memcpy(&root_statbuf, &statbuf, sizeof(root_statbuf)); /* Save this for later on */
|
||||
|
||||
/* We do this to make sure that the root entries are consistent */
|
||||
if (this_dir == root && strcmp(short_name, "..") == 0) {
|
||||
- statbuf = root_statbuf;
|
||||
- lstatbuf = root_statbuf;
|
||||
+ /* for the case .. comes before . */
|
||||
+ if (!root_statbuf.st_ctime) {
|
||||
+ stat_filter(dirname(whole_path), &root_statbuf);
|
||||
+ }
|
||||
+ memcpy(&statbuf, &root_statbuf, sizeof(statbuf));
|
||||
+ memcpy(&lstatbuf, &root_statbuf, sizeof(lstatbuf));
|
||||
}
|
||||
if (S_ISLNK(lstatbuf.st_mode)) {
|
||||
|
@ -0,0 +1,60 @@
|
||||
diff -up wrk/genisoimage/rock.c.wrk wrk/genisoimage/rock.c
|
||||
--- wrk/genisoimage/rock.c.wrk 2017-01-04 14:25:54.879670532 +0100
|
||||
+++ wrk/genisoimage/rock.c 2017-01-04 15:11:38.061228649 +0100
|
||||
@@ -39,6 +39,11 @@
|
||||
#include <device.h>
|
||||
#include <schily.h>
|
||||
|
||||
+/* "major" and "minor" macros will be moved to sysmacros.h
|
||||
+ * silence the warning
|
||||
+ * added by cdrkit-1.1.11-sysmacros.patch */
|
||||
+#include <sys/sysmacros.h>
|
||||
+
|
||||
#define SU_VERSION 1
|
||||
|
||||
#define SL_ROOT 8
|
||||
diff -up wrk/genisoimage/tree.c.wrk wrk/genisoimage/tree.c
|
||||
--- wrk/genisoimage/tree.c.wrk 2017-01-04 14:21:47.472189363 +0100
|
||||
+++ wrk/genisoimage/tree.c 2017-01-04 15:13:32.989466729 +0100
|
||||
@@ -50,6 +50,11 @@
|
||||
#include <schily.h>
|
||||
#include <libgen.h>
|
||||
|
||||
+/* "major" and "minor" macros will be moved to sysmacros.h
|
||||
+ * silence the warning
|
||||
+ * added by cdrkit-1.1.11-sysmacros.patch */
|
||||
+#include <sys/sysmacros.h>
|
||||
+
|
||||
extern int allow_limited_size;
|
||||
|
||||
#ifdef VMS
|
||||
diff -up wrk/icedax/interface.c.wrk wrk/icedax/interface.c
|
||||
--- wrk/icedax/interface.c.wrk 2017-01-04 14:46:54.298203958 +0100
|
||||
+++ wrk/icedax/interface.c 2017-01-04 15:14:06.333535804 +0100
|
||||
@@ -55,6 +55,11 @@
|
||||
#include <sys/ioctl.h>
|
||||
#include <statdefs.h>
|
||||
|
||||
+/* "major" and "minor" macros will be moved to sysmacros.h
|
||||
+ * silence the warning
|
||||
+ * added by cdrkit-1.1.11-sysmacros.patch */
|
||||
+#include <sys/sysmacros.h>
|
||||
+
|
||||
|
||||
#include "mycdrom.h"
|
||||
#include "lowlevel.h"
|
||||
diff -up wrk/icedax/ioctl.c.wrk wrk/icedax/ioctl.c
|
||||
--- wrk/icedax/ioctl.c.wrk 2017-01-04 14:49:45.834583930 +0100
|
||||
+++ wrk/icedax/ioctl.c 2017-01-04 15:15:10.268668248 +0100
|
||||
@@ -36,6 +36,11 @@
|
||||
#include <schily.h>
|
||||
#include <device.h>
|
||||
|
||||
+/* "major" and "minor" macros will be moved to sysmacros.h
|
||||
+ * silence the warning
|
||||
+ * added by cdrkit-1.1.11-sysmacros.patch */
|
||||
+#include <sys/sysmacros.h>
|
||||
+
|
||||
#include <usal/scsitransp.h>
|
||||
|
||||
#include "mycdrom.h"
|
@ -0,0 +1,33 @@
|
||||
diff -up cdrkit-1.1.11/librols/CMakeLists.txt.usalinst cdrkit-1.1.11/librols/CMakeLists.txt
|
||||
--- cdrkit-1.1.11/librols/CMakeLists.txt.usalinst 2012-07-31 10:51:30.270669381 +0200
|
||||
+++ cdrkit-1.1.11/librols/CMakeLists.txt 2012-07-31 10:52:02.365378257 +0200
|
||||
@@ -3,5 +3,11 @@ INCLUDE_DIRECTORIES(../include ../libhfs
|
||||
|
||||
SET(LIBROLS_SRCS astoi.c astoll.c astoull.c breakline.c cmpbytes.c comerr.c error.c fexec.c fillbytes.c getargs.c getav0.c getdomainname.c geterrno.c gethostid.c gethostname.c getpagesize.c handlecond.c movebytes.c raisecond.c rename.c saveargs.c seterrno.c spawn.c strcatl.c strdup.c streql.c swabbytes.c usleep.c stdio/cvmod.c stdio/dat.c stdio/fcons.c stdio/fdown.c stdio/fdup.c stdio/ffileread.c stdio/ffilewrite.c stdio/fgetline.c stdio/file_raise.c stdio/fileclose.c stdio/fileluopen.c stdio/filemopen.c stdio/fileopen.c stdio/filepos.c stdio/fileread.c stdio/filereopen.c stdio/fileseek.c stdio/filesize.c stdio/filestat.c stdio/filewrite.c stdio/flag.c stdio/flush.c stdio/fpipe.c stdio/niread.c stdio/niwrite.c stdio/nixread.c stdio/nixwrite.c stdio/openfd.c stdio/peekc.c default.c)
|
||||
|
||||
-ADD_LIBRARY (rols STATIC ${CMAKE_CURRENT_SOURCE_DIR}/../include/xconfig.h ${CMAKE_CURRENT_SOURCE_DIR}/../include/align.h ${LIBROLS_SRCS})
|
||||
+ADD_LIBRARY (rols SHARED ${CMAKE_CURRENT_SOURCE_DIR}/../include/xconfig.h ${CMAKE_CURRENT_SOURCE_DIR}/../include/align.h ${LIBROLS_SRCS})
|
||||
+SET_TARGET_PROPERTIES(rols PROPERTIES
|
||||
+ VERSION 0.0.1
|
||||
+ SOVERSION 0
|
||||
+)
|
||||
+
|
||||
+INSTALL(TARGETS rols DESTINATION lib${LIB_SUFFIX})
|
||||
|
||||
diff -up cdrkit-1.1.11/libusal/CMakeLists.txt.usalinst cdrkit-1.1.11/libusal/CMakeLists.txt
|
||||
--- cdrkit-1.1.11/libusal/CMakeLists.txt.usalinst 2012-07-31 10:51:30.302670085 +0200
|
||||
+++ cdrkit-1.1.11/libusal/CMakeLists.txt 2012-07-31 10:52:09.190528942 +0200
|
||||
@@ -6,5 +6,12 @@ ADD_DEFINITIONS(-DUSE_RCMD_RSH)
|
||||
#SET(LIBSCG_SRCS rdummy.c usalsettarget.c usaltimes.c scsi-linux-ata.c scsi-linux-pg.c scsi-linux-sg.c scsierrs.c scsihack.c scsihelp.c scsiopen.c scsitransp.c)
|
||||
SET(LIBSCG_SRCS usalsettarget.c usaltimes.c scsierrs.c scsihack.c scsihelp.c scsiopen.c scsitransp.c scsi-remote.c)
|
||||
LINK_DIRECTORIES(../librols)
|
||||
-ADD_LIBRARY (usal STATIC ${LIBSCG_SRCS})
|
||||
+ADD_LIBRARY (usal SHARED ${LIBSCG_SRCS})
|
||||
+
|
||||
TARGET_LINK_LIBRARIES(usal ${SCG_SELF_LIBS})
|
||||
+SET_TARGET_PROPERTIES(usal PROPERTIES
|
||||
+ VERSION 0.0.1
|
||||
+ SOVERSION 0
|
||||
+)
|
||||
+INSTALL(TARGETS usal DESTINATION lib${LIB_SUFFIX})
|
||||
+INSTALL(FILES usal/scsicdb.h usal/aspi-dos.h usal/usalcmd.h usal/usalio.h usal/scsireg.h usal/usalops.h usal/scsidefs.h usal/spti-wnt.h usal/srb_os2.h usal/scsitransp.h usal/aspi-win32.h usal/scsisense.h usaltimes.h pg.h DESTINATION include/usal)
|
@ -0,0 +1,104 @@
|
||||
diff -up cdrkit-1.1.11/Changelog.utf8 cdrkit-1.1.11/Changelog
|
||||
--- cdrkit-1.1.11/Changelog.utf8 2012-07-31 12:38:50.207872763 +0200
|
||||
+++ cdrkit-1.1.11/Changelog 2012-07-31 12:38:57.669026934 +0200
|
||||
@@ -519,7 +519,7 @@ cdrkit (2.01.01a08+X.12) UNRELEASED; urg
|
||||
|
||||
cdrkit (2.01.01a08+X.11) UNRELEASED; urgency=low
|
||||
|
||||
- * 26_author_locale (ASCII transliteration of Jörg in the standard credits
|
||||
+ * 26_author_locale (ASCII transliteration of Jörg in the standard credits
|
||||
message)
|
||||
* 28_cdda2wav_interface (Linux friendly cdda2wav behaviour)
|
||||
* 30_doc_typo_fixes (various documentation/message fixes)
|
||||
@@ -821,8 +821,8 @@ Sun May 16 01:37:11 2004 Joerg Schilling
|
||||
|
||||
Sun May 16 01:26:52 2004 Joerg Schilling <joerg@schily.isdn.cs.tu-berlin.de>
|
||||
* cdrecord.1 1.95
|
||||
- Eißfeldt -> Ei\*sfeldt
|
||||
- µsec -> \*msec
|
||||
+ Eißfeldt -> Ei\*sfeldt
|
||||
+ ľsec -> \*msec
|
||||
|
||||
Sat May 15 23:14:18 2004 Joerg Schilling <joerg@schily.isdn.cs.tu-berlin.de>
|
||||
* subchan.c 1.19
|
||||
@@ -1057,7 +1057,7 @@ Wed Jan 14 15:37:47 2004 Joerg Schilling
|
||||
Wed Jan 14 01:14:27 2004 Joerg Schilling <joerg@schily.isdn.cs.tu-berlin.de>
|
||||
* scsi-mac-iokit.c 1.8
|
||||
ux_errno wird nun korrekt gesetzt wenn ein Kommando schiefgeht
|
||||
- Die Sense Daten werden nicht mehr gelöscht
|
||||
+ Die Sense Daten werden nicht mehr gelöscht
|
||||
Author ist nun "schily", denn das Modul kommt nun teilweise dirch scgcheck
|
||||
|
||||
Tue Jan 13 20:43:44 2004 Joerg Schilling <joerg@schily.isdn.cs.tu-berlin.de>
|
||||
@@ -1074,7 +1074,7 @@ Mon Jan 12 00:33:39 2004 Joerg Schilling
|
||||
|
||||
Sun Jan 11 18:42:14 2004 Joerg Schilling <joerg@schily.isdn.cs.tu-berlin.de>
|
||||
* scsi-linux-sg.c 1.77
|
||||
- Versuch das /dev/hd* Interface von Linux-2.6 besser zu unterstützen.
|
||||
+ Versuch das /dev/hd* Interface von Linux-2.6 besser zu unterstützen.
|
||||
|
||||
Sun Jan 11 16:18:48 2004 Joerg Schilling <joerg@schily.isdn.cs.tu-berlin.de>
|
||||
* scsi-linux-sg.c 1.76
|
||||
@@ -6144,7 +6144,7 @@ Mon Oct 26 00:27:22 1998 Joerg Schilling
|
||||
New manufacturer: Xcitec Inc.
|
||||
Doremi Media Co., Ltd.
|
||||
Matsushita Electric Industrial Co.,Ltd.
|
||||
- CDA Datenträger Albrechts GmbH.
|
||||
+ CDA Datenträger Albrechts GmbH.
|
||||
|
||||
Sun Oct 25 13:00:22 1998 Joerg Schilling <joerg@schily.isdn.cs.tu-berlin.de>
|
||||
* cdrecord.c 1.71
|
||||
diff -up cdrkit-1.1.11/doc/icedax/README.utf8 cdrkit-1.1.11/doc/icedax/README
|
||||
--- cdrkit-1.1.11/doc/icedax/README.utf8 2012-07-31 12:38:18.903226517 +0200
|
||||
+++ cdrkit-1.1.11/doc/icedax/README 2012-07-31 12:38:18.902226496 +0200
|
||||
@@ -387,7 +387,7 @@ and
|
||||
|
||||
<http://www.anime.net/~goemon/linux-cd/cdda-list.html>
|
||||
|
||||
-From a news posting from Björn Wiberg
|
||||
+From a news posting from Björn Wiberg
|
||||
|
||||
> The following table was generated using the CDROM.CFG file from Nero
|
||||
> v3.0.4.2.
|
||||
diff -up cdrkit-1.1.11/doc/icedax/THANKS.utf8 cdrkit-1.1.11/doc/icedax/THANKS
|
||||
--- cdrkit-1.1.11/doc/icedax/THANKS.utf8 2012-07-31 12:38:18.901226475 +0200
|
||||
+++ cdrkit-1.1.11/doc/icedax/THANKS 2012-07-31 12:38:18.901226475 +0200
|
||||
@@ -5,7 +5,7 @@ http://www.mode.net/
|
||||
|
||||
and
|
||||
|
||||
-Fraunhofer Institut für integrierte Schaltungen (FhG-IIS)
|
||||
+Fraunhofer Institut für integrierte Schaltungen (FhG-IIS)
|
||||
http://www.iis.fhg.de/
|
||||
|
||||
Code for extraction of ISRC and MCN codes as well as MD5 signatures
|
||||
@@ -33,4 +33,4 @@ Francesco Chemolli (getopt_long patches)
|
||||
Thanks to all testers and finally Jim McLaughlin for supplying
|
||||
the first cdda-reader source code (that got me started).
|
||||
|
||||
-Heiko Eißfeldt
|
||||
+Heiko Eißfeldt
|
||||
diff -up cdrkit-1.1.11/doc/READMEs/README.ATAPI.utf8 cdrkit-1.1.11/doc/READMEs/README.ATAPI
|
||||
--- cdrkit-1.1.11/doc/READMEs/README.ATAPI.utf8 2012-07-31 12:38:18.899226433 +0200
|
||||
+++ cdrkit-1.1.11/doc/READMEs/README.ATAPI 2012-07-31 12:38:18.900226454 +0200
|
||||
@@ -279,7 +279,7 @@ selectively telling the kernel what to u
|
||||
this would not be needed if the Linux SCSI CD-ROM driver would be more
|
||||
up to date and supports standard conforming drives.
|
||||
|
||||
-Jörg Schilling <schilling@fokus.fhg.de>
|
||||
+Jörg Schilling <schilling@fokus.fhg.de>
|
||||
|
||||
--------------------------------------------------
|
||||
Here is a hint from Alan Brown <alanb@manawatu.gen.nz>:
|
||||
diff -up cdrkit-1.1.11/doc/READMEs/README.cdplus.utf8 cdrkit-1.1.11/doc/READMEs/README.cdplus
|
||||
--- cdrkit-1.1.11/doc/READMEs/README.cdplus.utf8 2012-07-31 12:38:18.900226454 +0200
|
||||
+++ cdrkit-1.1.11/doc/READMEs/README.cdplus 2012-07-31 12:38:18.900226454 +0200
|
||||
@@ -63,7 +63,7 @@ Note: If you want to create an HFS hybri
|
||||
use the '-part' option to genisoimage. Otherwise, the data track will be mounted
|
||||
as an ISO9660/Joliet CD when used on a Mac.
|
||||
|
||||
-Jörg
|
||||
+Jörg
|
||||
|
||||
Edited for cdrkit by Christian Fromme <kaner@strace.org> and Eduard Bloch
|
||||
|
@ -0,0 +1,22 @@
|
||||
diff -up wrk/genisoimage/exclude.c.wrk wrk/genisoimage/exclude.c
|
||||
--- wrk/genisoimage/exclude.c.wrk 2015-02-25 13:16:28.054237196 +0100
|
||||
+++ wrk/genisoimage/exclude.c 2015-02-25 13:33:06.761312002 +0100
|
||||
@@ -39,7 +39,7 @@ exclude(char *fn)
|
||||
{
|
||||
register int i;
|
||||
|
||||
- for (i = 0; excl[i] && i < MAXEXCL; i++)
|
||||
+ for (i = 0; i < MAXEXCL && excl[i]; i++)
|
||||
;
|
||||
|
||||
if (i == MAXEXCL) {
|
||||
@@ -69,7 +69,7 @@ is_excluded(char *fn)
|
||||
/*
|
||||
* very dumb search method ...
|
||||
*/
|
||||
- for (i = 0; excl[i] && i < MAXEXCL; i++) {
|
||||
+ for (i = 0; i < MAXEXCL && excl[i]; i++) {
|
||||
if (strcmp(excl[i], fn) == 0) {
|
||||
return (1); /* found -> excluded filenmae */
|
||||
}
|
||||
diff -up wrk/icedax/toc.c.wrk wrk/icedax/toc.c
|
@ -0,0 +1,206 @@
|
||||
diff -up cdrkit-1.1.8/wodim/wodim.c.werror cdrkit-1.1.8/wodim/wodim.c
|
||||
--- cdrkit-1.1.8/wodim/wodim.c.werror 2008-05-27 15:34:03.000000000 +0200
|
||||
+++ cdrkit-1.1.8/wodim/wodim.c 2008-05-27 15:36:22.000000000 +0200
|
||||
@@ -4089,7 +4089,7 @@ audioread(SCSI *usalp, cdr_t *dp, int fl
|
||||
|
||||
read_scsi(usalp, buf, 1000, 1);
|
||||
printf("XXX:\n");
|
||||
- write(1, buf, 512); /* FIXME: handle return value */
|
||||
+ do{int ret;ret=write(1, buf, 512);}while(0); /* FIXME: handle return value */
|
||||
unload_media(usalp, dp, flags);
|
||||
comexit(0);
|
||||
#endif
|
||||
diff -up cdrkit-1.1.8/wodim/isosize.c.werror cdrkit-1.1.8/wodim/isosize.c
|
||||
--- cdrkit-1.1.8/wodim/isosize.c.werror 2008-05-27 15:41:36.000000000 +0200
|
||||
+++ cdrkit-1.1.8/wodim/isosize.c 2008-05-27 15:42:12.000000000 +0200
|
||||
@@ -69,7 +69,7 @@ isosize(int f)
|
||||
vp = (struct iso9660_pr_voldesc *) &vd;
|
||||
|
||||
do {
|
||||
- read(f, &vd, sizeof (vd)); /* FIXME: check return value */
|
||||
+ do{int ret;ret=read(f, &vd, sizeof (vd));}while(0); /* FIXME: check return value */
|
||||
if (GET_UBYTE(vd.vd_type) == VD_PRIMARY)
|
||||
break;
|
||||
|
||||
diff -up cdrkit-1.1.8/icedax/toc.c.werror cdrkit-1.1.8/icedax/toc.c
|
||||
--- cdrkit-1.1.8/icedax/toc.c.werror 2008-05-27 15:34:03.000000000 +0200
|
||||
+++ cdrkit-1.1.8/icedax/toc.c 2008-05-27 15:41:11.000000000 +0200
|
||||
@@ -1071,7 +1071,7 @@ static int handle_userchoice(char *p, un
|
||||
/* get user response. */
|
||||
do {
|
||||
fprintf(stderr, "please choose one (0-%u): ", nr);
|
||||
- scanf("%u", &user_choice); /* FIXME: check return value */
|
||||
+ do{int ret;ret=scanf("%u", &user_choice);}while(0); /* FIXME: check return value */
|
||||
} while (user_choice > nr);
|
||||
|
||||
if (user_choice == nr)
|
||||
diff -up cdrkit-1.1.8/genisoimage/diag/dump.c.werror cdrkit-1.1.8/genisoimage/diag/dump.c
|
||||
--- cdrkit-1.1.8/genisoimage/diag/dump.c.werror 2008-05-27 15:34:03.000000000 +0200
|
||||
+++ cdrkit-1.1.8/genisoimage/diag/dump.c 2008-05-27 15:34:03.000000000 +0200
|
||||
@@ -368,7 +368,7 @@ main(int argc, char *argv[])
|
||||
do {
|
||||
if (file_addr < (off_t)0) file_addr = (off_t)0;
|
||||
showblock(1);
|
||||
- read(STDIN_FILENO, &c, 1); /* FIXME: check return value */
|
||||
+ do{int ret;ret=read(STDIN_FILENO, &c, 1);}while(0); /* FIXME: check return value */
|
||||
if (c == 'a')
|
||||
file_addr -= PAGE;
|
||||
if (c == 'b')
|
||||
@@ -378,11 +378,11 @@ main(int argc, char *argv[])
|
||||
printf("Enter new starting block (in hex):");
|
||||
if (sizeof (file_addr) > sizeof (long)) {
|
||||
Llong ll;
|
||||
- scanf("%llx", &ll); /* FIXME: check return value */
|
||||
+ do{int ret;ret=scanf("%llx", &ll);}while(0); /* FIXME: check return value */
|
||||
file_addr = (off_t)ll;
|
||||
} else {
|
||||
long l;
|
||||
- scanf("%lx", &l); /* FIXME: check return value */
|
||||
+ do{int ret;ret=scanf("%lx", &l);}while(0); /* FIXME: check return value */
|
||||
file_addr = (off_t)l;
|
||||
}
|
||||
file_addr = file_addr << 11;
|
||||
@@ -392,7 +392,7 @@ main(int argc, char *argv[])
|
||||
if (c == 'f') {
|
||||
crsr2(20, 1);
|
||||
printf("Enter new search string:");
|
||||
- fgets((char *)search, sizeof (search), stdin); /* FIXME: check return value */
|
||||
+ do{char *ret;ret=fgets((char *)search, sizeof (search), stdin);}while(0); /* FIXME: check return value */
|
||||
while (search[strlen((char *)search)-1] == '\n')
|
||||
search[strlen((char *)search)-1] = 0;
|
||||
crsr2(20, 1);
|
||||
diff -up cdrkit-1.1.8/genisoimage/diag/isoinfo.c.werror cdrkit-1.1.8/genisoimage/diag/isoinfo.c
|
||||
--- cdrkit-1.1.8/genisoimage/diag/isoinfo.c.werror 2008-05-27 15:34:03.000000000 +0200
|
||||
+++ cdrkit-1.1.8/genisoimage/diag/isoinfo.c 2008-05-27 15:34:03.000000000 +0200
|
||||
@@ -651,7 +651,7 @@ extract_file(struct iso_directory_record
|
||||
#endif
|
||||
len -= tlen;
|
||||
extent++;
|
||||
- write(STDOUT_FILENO, buff, tlen); /* FIXME: check return value */
|
||||
+ do{int ret;ret=write(STDOUT_FILENO, buff, tlen);}while(0); /* FIXME: check return value */
|
||||
}
|
||||
}
|
||||
|
||||
diff -up cdrkit-1.1.8/genisoimage/diag/isodump.c.werror cdrkit-1.1.8/genisoimage/diag/isodump.c
|
||||
--- cdrkit-1.1.8/genisoimage/diag/isodump.c.werror 2008-05-27 15:34:03.000000000 +0200
|
||||
+++ cdrkit-1.1.8/genisoimage/diag/isodump.c 2008-05-27 15:34:03.000000000 +0200
|
||||
@@ -655,7 +655,7 @@ main(int argc, char *argv[])
|
||||
if (file_addr < 0)
|
||||
file_addr = (off_t)0;
|
||||
showblock(1);
|
||||
- read(STDIN_FILENO, &c, 1); /* FIXME: check return value */
|
||||
+ do{int ret;ret=read(STDIN_FILENO, &c, 1);}while(0); /* FIXME: check return value */
|
||||
if (c == 'a')
|
||||
file_addr -= blocksize;
|
||||
if (c == 'b')
|
||||
@@ -665,11 +665,11 @@ main(int argc, char *argv[])
|
||||
printf("Enter new starting block (in hex):");
|
||||
if (sizeof (file_addr) > sizeof (long)) {
|
||||
Llong ll;
|
||||
- scanf("%llx", &ll); /* FIXME: check return value */
|
||||
+ do{int ret;ret=scanf("%llx", &ll);}while(0); /* FIXME: check return value */
|
||||
file_addr = (off_t)ll;
|
||||
} else {
|
||||
long l;
|
||||
- scanf("%lx", &l); /* FIXME: check return value */
|
||||
+ do{int ret;ret=scanf("%lx", &l);}while(0); /* FIXME: check return value */
|
||||
file_addr = (off_t)l;
|
||||
}
|
||||
file_addr = file_addr * blocksize;
|
||||
@@ -679,7 +679,7 @@ main(int argc, char *argv[])
|
||||
if (c == 'f') {
|
||||
crsr2(20, 1);
|
||||
printf("Enter new search string:");
|
||||
- fgets((char *)search, sizeof (search), stdin); /* FIXME: check return value */
|
||||
+ do{char *ret;ret=fgets((char *)search, sizeof (search), stdin);}while(0); /* FIXME: check return value */
|
||||
while (search[strlen((char *)search)-1] == '\n')
|
||||
search[strlen((char *)search)-1] = 0;
|
||||
crsr2(20, 1);
|
||||
diff -up cdrkit-1.1.8/genisoimage/diag/isovfy.c.werror cdrkit-1.1.8/genisoimage/diag/isovfy.c
|
||||
--- cdrkit-1.1.8/genisoimage/diag/isovfy.c.werror 2008-05-27 15:34:03.000000000 +0200
|
||||
+++ cdrkit-1.1.8/genisoimage/diag/isovfy.c 2008-05-27 15:34:03.000000000 +0200
|
||||
@@ -591,11 +591,11 @@ check_path_tables(int typel_extent, int
|
||||
readsecs(typel_extent * blocksize / 2048, typel, ISO_BLOCKS(path_table_size));
|
||||
#else
|
||||
lseek(fileno(infile), (off_t)((off_t)typel_extent) * blocksize, SEEK_SET);
|
||||
- read(fileno(infile), typel, path_table_size); /* FIXME: check return value */
|
||||
+ do{int ret;ret=read(fileno(infile), typel, path_table_size);}while(0); /* FIXME: check return value */
|
||||
#endif
|
||||
typem = (char *) malloc(path_table_size);
|
||||
lseek(fileno(infile), (off_t)((off_t)typem_extent) * blocksize, SEEK_SET);
|
||||
- read(fileno(infile), typem, path_table_size); /* FIXME: check return value */
|
||||
+ do{int ret;ret=read(fileno(infile), typem, path_table_size);}while(0); /* FIXME: check return value */
|
||||
|
||||
j = path_table_size;
|
||||
pnt = typel;
|
||||
diff -up cdrkit-1.1.8/genisoimage/jte.c.werror cdrkit-1.1.8/genisoimage/jte.c
|
||||
--- cdrkit-1.1.8/genisoimage/jte.c.werror 2008-05-27 15:34:03.000000000 +0200
|
||||
+++ cdrkit-1.1.8/genisoimage/jte.c 2008-05-27 15:34:03.000000000 +0200
|
||||
@@ -36,6 +36,8 @@
|
||||
#include "vms.h"
|
||||
#endif
|
||||
|
||||
+#include "md5.h"
|
||||
+
|
||||
/* Different types used in building our state list below */
|
||||
#define JTET_FILE_MATCH 1
|
||||
#define JTET_NOMATCH 2
|
||||
@@ -643,7 +645,7 @@ static void flush_bz2_chunk(void *buffer
|
||||
|
||||
err = BZ2_bzCompressInit(&c_stream, 9, 0, 0);
|
||||
comp_buf = malloc(2 * size); /* Worst case */
|
||||
- c_stream.next_out = comp_buf;
|
||||
+ c_stream.next_out = (char *)comp_buf;
|
||||
c_stream.avail_out = 2 * size;
|
||||
c_stream.next_in = buffer;
|
||||
c_stream.avail_in = size;
|
||||
@@ -691,7 +693,7 @@ static void write_compressed_chunk(unsig
|
||||
if (!uncomp_buf)
|
||||
{
|
||||
#ifdef USE_LIBSCHILY
|
||||
- comerr("failed to allocate %d bytes for template compression buffer\n", uncomp_size);
|
||||
+ comerr("failed to allocate %d bytes for template compression buffer\n", (int)uncomp_size);
|
||||
#else
|
||||
fprintf(stderr, "failed to allocate %d bytes for template compression buffer\n", uncomp_size);
|
||||
exit(1);
|
||||
@@ -1019,8 +1021,8 @@ void write_jt_match_record(char *filenam
|
||||
#endif
|
||||
}
|
||||
if (first_block)
|
||||
- rsync64_sum = rsync64(buf, MIN_JIGDO_FILE_SIZE);
|
||||
- checksum_update(iso_context, buf, use);
|
||||
+ rsync64_sum = rsync64((unsigned char *)buf, MIN_JIGDO_FILE_SIZE);
|
||||
+ checksum_update(iso_context, (unsigned char *)buf, use);
|
||||
// mk_MD5Update(&iso_context, buf, use);
|
||||
remain -= use;
|
||||
first_block = 0;
|
||||
@@ -1033,7 +1035,7 @@ void write_jt_match_record(char *filenam
|
||||
{
|
||||
int pad_size = sector_size - (size % sector_size);
|
||||
memset(buf, 0, pad_size);
|
||||
- checksum_update(iso_context, buf, pad_size);
|
||||
+ checksum_update(iso_context, (unsigned char *)buf, pad_size);
|
||||
// mk_MD5Update(&iso_context, buf, pad_size);
|
||||
}
|
||||
|
||||
@@ -1041,7 +1043,7 @@ void write_jt_match_record(char *filenam
|
||||
if (size % sector_size)
|
||||
{
|
||||
int pad_size = sector_size - (size % sector_size);
|
||||
- write_compressed_chunk(buf, pad_size);
|
||||
+ write_compressed_chunk((unsigned char *)buf, pad_size);
|
||||
add_unmatched_entry(pad_size);
|
||||
}
|
||||
}
|
||||
diff -up cdrkit-1.1.8/genisoimage/eltorito.c.werror cdrkit-1.1.8/genisoimage/eltorito.c
|
||||
--- cdrkit-1.1.8/genisoimage/eltorito.c.werror 2008-05-27 15:34:03.000000000 +0200
|
||||
+++ cdrkit-1.1.8/genisoimage/eltorito.c 2008-05-27 15:34:03.000000000 +0200
|
||||
@@ -660,7 +660,7 @@ fill_boot_desc(struct eltorito_defaultbo
|
||||
set_731(bi_table.bi_length, de->size);
|
||||
set_731(bi_table.bi_csum, bi_checksum);
|
||||
|
||||
- write(bootimage, &bi_table, sizeof (bi_table)); /* FIXME: check return value */
|
||||
+ do{int ret;ret=write(bootimage, &bi_table, sizeof (bi_table));}while(0); /* FIXME: check return value */
|
||||
close(bootimage);
|
||||
}
|
||||
}/* fill_boot_desc(... */
|
@ -0,0 +1,66 @@
|
||||
diff -ru origin-1.1.9/wodim/scsi_cdr.c master-1.1.9/wodim/scsi_cdr.c
|
||||
--- origin-1.1.9/wodim/scsi_cdr.c 2008-02-25 12:14:07.000000000 +0100
|
||||
+++ master-1.1.9/wodim/scsi_cdr.c 2009-07-16 12:01:29.000000000 +0200
|
||||
@@ -2181,26 +2181,30 @@
|
||||
if (inq->add_len == 0) {
|
||||
if (usalp->dev == DEV_UNKNOWN && got_inquiry) {
|
||||
usalp->dev = DEV_ACB5500;
|
||||
- strcpy(inq->vendor_info,
|
||||
- "ADAPTEC ACB-5500 FAKE");
|
||||
+ strncpy(inq->vendor_info, "ADAPTEC ", 8);
|
||||
+ strncpy(inq->prod_ident,"ACB-5500 ", 16);
|
||||
+ strncpy(inq->prod_revision, "FAKE", 4);
|
||||
|
||||
} else switch (usalp->dev) {
|
||||
-
|
||||
case DEV_ACB40X0:
|
||||
- strcpy(inq->vendor_info,
|
||||
- "ADAPTEC ACB-40X0 FAKE");
|
||||
+ strncpy(inq->vendor_info, "ADAPTEC ", 8);
|
||||
+ strncpy(inq->prod_ident, "ACB-40X0 ",16);
|
||||
+ strncpy(inq->prod_revision, "FAKE", 4);
|
||||
break;
|
||||
case DEV_ACB4000:
|
||||
- strcpy(inq->vendor_info,
|
||||
- "ADAPTEC ACB-4000 FAKE");
|
||||
+ strncpy(inq->vendor_info, "ADAPTEC ",8);
|
||||
+ strncpy(inq->prod_ident, "ACB-4000 ",16);
|
||||
+ strncpy(inq->prod_revision, "FAKE",4);
|
||||
break;
|
||||
case DEV_ACB4010:
|
||||
- strcpy(inq->vendor_info,
|
||||
- "ADAPTEC ACB-4010 FAKE");
|
||||
+ strncpy(inq->vendor_info, "ADAPTEC ",8);
|
||||
+ strncpy(inq->prod_ident, "ACB-4010 ",16);
|
||||
+ strncpy(inq->prod_revision, "FAKE",4);
|
||||
break;
|
||||
case DEV_ACB4070:
|
||||
- strcpy(inq->vendor_info,
|
||||
- "ADAPTEC ACB-4070 FAKE");
|
||||
+ strncpy(inq->vendor_info,"ADAPTEC ",8);
|
||||
+ strncpy(inq->prod_ident, "ACB-4070 ", 16);
|
||||
+ strncpy(inq->prod_revision, "FAKE",4 );
|
||||
break;
|
||||
}
|
||||
} else if (inq->add_len < 31) {
|
||||
@@ -2230,14 +2234,16 @@
|
||||
|
||||
case INQ_SEQD:
|
||||
if (usalp->dev == DEV_SC4000) {
|
||||
- strcpy(inq->vendor_info,
|
||||
- "SYSGEN SC4000 FAKE");
|
||||
+ strncpy(inq->vendor_info,"SYSGEN ",8);
|
||||
+ strncpy(inq->prod_ident, "SC4000 ",16);
|
||||
+ strncpy(inq->prod_revision, "FAKE",4);
|
||||
} else if (inq->add_len == 0 &&
|
||||
inq->removable &&
|
||||
inq->ansi_version == 1) {
|
||||
usalp->dev = DEV_MT02;
|
||||
- strcpy(inq->vendor_info,
|
||||
- "EMULEX MT02 FAKE");
|
||||
+ strncpy(inq->vendor_info,"EMULEX ",8);
|
||||
+ strncpy(inq->prod_ident, "MT02 ",16);
|
||||
+ strncpy(inq->prod_revision, "FAKE",4);
|
||||
}
|
||||
break;
|
||||
|
@ -0,0 +1,204 @@
|
||||
diff --git a/doc/icedax/tracknames.pl b/doc/icedax/tracknames.pl
|
||||
old mode 100755
|
||||
new mode 100644
|
||||
index 09f0fcf..801b89e
|
||||
--- a/doc/icedax/tracknames.pl
|
||||
+++ b/doc/icedax/tracknames.pl
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/local/bin/perl
|
||||
+#!/usr/bin/perl
|
||||
# A quick perl hack to get rename files pulled in with icedax.
|
||||
# by billo@billo.com
|
||||
#
|
||||
diff --git a/genisoimage/eltorito.c b/genisoimage/eltorito.c
|
||||
index b97bdf1..5d7c2d1 100644
|
||||
--- a/genisoimage/eltorito.c
|
||||
+++ b/genisoimage/eltorito.c
|
||||
@@ -59,7 +59,7 @@ static void get_torito_desc(struct eltorito_boot_descriptor *boot_desc);
|
||||
static void fill_boot_desc(struct eltorito_defaultboot_entry *boot_desc_entry,
|
||||
struct eltorito_boot_entry_info *boot_entry);
|
||||
void get_boot_entry(void);
|
||||
-void new_boot_entry(void);
|
||||
+void new_boot_entry();
|
||||
static int tvd_write(FILE *outfile);
|
||||
|
||||
|
||||
@@ -283,6 +283,7 @@ get_torito_desc(struct eltorito_boot_descriptor *boot_desc)
|
||||
int i;
|
||||
int offset;
|
||||
struct eltorito_defaultboot_entry boot_desc_record;
|
||||
+ struct eltorito_sectionheader_entry section_header;
|
||||
|
||||
memset(boot_desc, 0, sizeof (*boot_desc));
|
||||
boot_desc->type[0] = 0;
|
||||
@@ -317,7 +318,7 @@ get_torito_desc(struct eltorito_boot_descriptor *boot_desc)
|
||||
*/
|
||||
memset(&valid_desc, 0, sizeof (valid_desc));
|
||||
valid_desc.headerid[0] = 1;
|
||||
- valid_desc.arch[0] = EL_TORITO_ARCH_x86;
|
||||
+ valid_desc.arch[0] = first_boot_entry->arch;
|
||||
|
||||
/*
|
||||
* we'll shove start of publisher id into id field,
|
||||
@@ -347,10 +348,53 @@ get_torito_desc(struct eltorito_boot_descriptor *boot_desc)
|
||||
/* now write it to the virtual boot catalog */
|
||||
memcpy(de2->table, &valid_desc, 32);
|
||||
|
||||
- for (current_boot_entry = first_boot_entry, offset = sizeof (valid_desc);
|
||||
- current_boot_entry != NULL;
|
||||
- current_boot_entry = current_boot_entry->next,
|
||||
- offset += sizeof (boot_desc_record)) {
|
||||
+ /* Fill the first entry, since it's special and already has the
|
||||
+ * matching header via the validation header... */
|
||||
+ offset = sizeof (valid_desc);
|
||||
+ current_boot_entry = first_boot_entry;
|
||||
+
|
||||
+ if (offset >= SECTOR_SIZE) {
|
||||
+#ifdef USE_LIBSCHILY
|
||||
+ comerrno(EX_BAD, "Too many El Torito boot entries\n");
|
||||
+#else
|
||||
+ fprintf(stderr, "Too many El Torito boot entries\n");
|
||||
+ exit(1);
|
||||
+#endif
|
||||
+ }
|
||||
+ fill_boot_desc(&boot_desc_record, current_boot_entry);
|
||||
+ memcpy(de2->table + offset, &boot_desc_record,
|
||||
+ sizeof (boot_desc_record));
|
||||
+
|
||||
+ offset += sizeof(boot_desc_record);
|
||||
+
|
||||
+ for (current_boot_entry = current_boot_entry->next;
|
||||
+ current_boot_entry != NULL;
|
||||
+ current_boot_entry = current_boot_entry->next) {
|
||||
+ struct eltorito_sectionheader_entry section_header;
|
||||
+
|
||||
+ if (offset >= SECTOR_SIZE) {
|
||||
+#ifdef USE_LIBSCHILY
|
||||
+ comerrno(EX_BAD,
|
||||
+ "Too many El Torito boot entries\n");
|
||||
+#else
|
||||
+ fprintf(stderr,
|
||||
+ "Too many El Torito boot entries\n");
|
||||
+ exit(1);
|
||||
+#endif
|
||||
+ }
|
||||
+
|
||||
+ memset(§ion_header, '\0', sizeof(section_header));
|
||||
+ if (current_boot_entry->next)
|
||||
+ section_header.headerid[0] = EL_TORITO_SECTION_HEADER;
|
||||
+ else
|
||||
+ section_header.headerid[0] = EL_TORITO_LAST_SECTION_HEADER;
|
||||
+
|
||||
+ section_header.arch[0] = current_boot_entry->arch;
|
||||
+ set_721(section_header.num_entries, 1);
|
||||
+
|
||||
+ memcpy(de2->table + offset, §ion_header,
|
||||
+ sizeof(section_header));
|
||||
+ offset += sizeof(section_header);
|
||||
|
||||
if (offset >= SECTOR_SIZE) {
|
||||
#ifdef USE_LIBSCHILY
|
||||
@@ -365,6 +409,8 @@ get_torito_desc(struct eltorito_boot_descriptor *boot_desc)
|
||||
fill_boot_desc(&boot_desc_record, current_boot_entry);
|
||||
memcpy(de2->table + offset, &boot_desc_record,
|
||||
sizeof (boot_desc_record));
|
||||
+ offset += sizeof (boot_desc_record);
|
||||
+
|
||||
}
|
||||
}/* get_torito_desc(... */
|
||||
|
||||
diff --git a/genisoimage/genisoimage.c b/genisoimage/genisoimage.c
|
||||
index a5b0b46..8add1ac 100644
|
||||
--- a/genisoimage/genisoimage.c
|
||||
+++ b/genisoimage/genisoimage.c
|
||||
@@ -47,6 +47,7 @@
|
||||
|
||||
#include <mconfig.h>
|
||||
#include "genisoimage.h"
|
||||
+#include "iso9660.h"
|
||||
#include <errno.h>
|
||||
#include <timedefs.h>
|
||||
#include <fctldefs.h>
|
||||
@@ -523,6 +524,8 @@ static const struct ld_option ld_options[] =
|
||||
'\0', NULL, "Set debug flag", ONE_DASH},
|
||||
{{"eltorito-boot", required_argument, NULL, 'b'},
|
||||
'b', "FILE", "Set El Torito boot image name", ONE_DASH},
|
||||
+ {{"efi-boot", required_argument, NULL, 'e'},
|
||||
+ 'e', "FILE", "Set EFI boot image name", ONE_DASH},
|
||||
{{"eltorito-alt-boot", no_argument, NULL, OPTION_ALT_BOOT},
|
||||
'\0', NULL, "Start specifying alternative El Torito boot parameters", ONE_DASH},
|
||||
{{"sparc-boot", required_argument, NULL, 'B'},
|
||||
@@ -1502,6 +1505,7 @@ int main(int argc, char *argv[])
|
||||
all_files = 0;
|
||||
break;
|
||||
case 'b':
|
||||
+ case 'e':
|
||||
do_sort++; /* We sort bootcat/botimage */
|
||||
use_eltorito++;
|
||||
boot_image = optarg; /* pathname of the boot image */
|
||||
@@ -1517,6 +1521,10 @@ int main(int argc, char *argv[])
|
||||
#endif
|
||||
}
|
||||
get_boot_entry();
|
||||
+ if (c == 'e')
|
||||
+ current_boot_entry->arch = EL_TORITO_ARCH_EFI;
|
||||
+ else
|
||||
+ current_boot_entry->arch = EL_TORITO_ARCH_x86;
|
||||
current_boot_entry->boot_image = boot_image;
|
||||
break;
|
||||
case OPTION_ALT_BOOT:
|
||||
diff --git a/genisoimage/genisoimage.h b/genisoimage/genisoimage.h
|
||||
index bbedfb0..76e5e21 100644
|
||||
--- a/genisoimage/genisoimage.h
|
||||
+++ b/genisoimage/genisoimage.h
|
||||
@@ -293,6 +293,7 @@ struct deferred_write {
|
||||
struct eltorito_boot_entry_info {
|
||||
struct eltorito_boot_entry_info *next;
|
||||
char *boot_image;
|
||||
+ char arch;
|
||||
int not_bootable;
|
||||
int no_emul_boot;
|
||||
int hard_disk_boot;
|
||||
diff --git a/genisoimage/iso9660.h b/genisoimage/iso9660.h
|
||||
index c74c2a9..c8b7a05 100644
|
||||
--- a/genisoimage/iso9660.h
|
||||
+++ b/genisoimage/iso9660.h
|
||||
@@ -62,10 +62,14 @@ struct iso_volume_descriptor {
|
||||
#define EL_TORITO_ARCH_x86 0
|
||||
#define EL_TORITO_ARCH_PPC 1
|
||||
#define EL_TORITO_ARCH_MAC 2
|
||||
+#define EL_TORITO_ARCH_EFI 0xef
|
||||
|
||||
#define EL_TORITO_BOOTABLE 0x88
|
||||
#define EL_TORITO_NOT_BOOTABLE 0
|
||||
|
||||
+#define EL_TORITO_SECTION_HEADER 0x90
|
||||
+#define EL_TORITO_LAST_SECTION_HEADER 0x91
|
||||
+
|
||||
#define EL_TORITO_MEDIA_NOEMUL 0
|
||||
#define EL_TORITO_MEDIA_12FLOP 1
|
||||
#define EL_TORITO_MEDIA_144FLOP 2
|
||||
@@ -173,7 +177,7 @@ struct eltorito_validation_entry {
|
||||
struct eltorito_defaultboot_entry {
|
||||
char boot_id [ISODCL(1, 1)]; /* 711 */
|
||||
char boot_media [ISODCL(2, 2)];
|
||||
- char loadseg [ISODCL(3, 4)]; /* 711 */
|
||||
+ char loadseg [ISODCL(3, 4)]; /* 712 */
|
||||
char sys_type [ISODCL(5, 5)];
|
||||
char pad1 [ISODCL(6, 6)];
|
||||
char nsect [ISODCL(7, 8)];
|
||||
@@ -181,6 +185,14 @@ struct eltorito_defaultboot_entry {
|
||||
char pad2 [ISODCL(13, 32)];
|
||||
};
|
||||
|
||||
+/* El Torito Section Header Entry in boot catalog */
|
||||
+struct eltorito_sectionheader_entry {
|
||||
+ char headerid [ISODCL(1, 1)]; /* 711 */
|
||||
+ char arch [ISODCL(2, 2)];
|
||||
+ char num_entries [ISODCL(3, 4)]; /* 711 */
|
||||
+ char id [ISODCL(5, 32)];
|
||||
+};
|
||||
+
|
||||
/*
|
||||
* XXX JS: The next two structures have odd lengths!
|
||||
* Some compilers (e.g. on Sun3/mc68020) padd the structures to even length.
|
@ -0,0 +1,50 @@
|
||||
diff -up cdrkit-1.1.9/icedax/cdda2ogg.1.no_mp3 cdrkit-1.1.9/icedax/cdda2ogg.1
|
||||
--- cdrkit-1.1.9/icedax/cdda2ogg.1.no_mp3 2009-06-15 14:48:44.930637082 +0200
|
||||
+++ cdrkit-1.1.9/icedax/cdda2ogg.1 2009-06-15 14:50:35.596769274 +0200
|
||||
@@ -1,12 +1,11 @@
|
||||
'\"
|
||||
.TH "cdda2ogg" "1"
|
||||
.SH "NAME"
|
||||
-cdda2ogg, cdda2mp3 \(em extract audio CD audio tracks and encode them
|
||||
+cdda2ogg \(em extract audio CD audio tracks and encode them
|
||||
.SH "SYNOPSIS"
|
||||
.PP
|
||||
.B cdda2ogg
|
||||
.PP
|
||||
-.B cdda2mp3
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
.B cdda2ogg is a simple script that uses the
|
||||
@@ -15,9 +14,6 @@ command to extract all audio tracks with
|
||||
.B icedax <fileprefix>
|
||||
command and encode them using the
|
||||
.B ogg123
|
||||
-respective
|
||||
-.I <censored>
|
||||
-MP3
|
||||
encoder. The scripts are not intended to be full-featured music archiving
|
||||
programs, but only for quick storing of few audio data.
|
||||
It does not use databases like CDDB or have any extra features. You may look
|
||||
@@ -36,8 +32,6 @@ for more information.
|
||||
.SH "CONFIGURATION"
|
||||
.PP
|
||||
.B cdda2ogg
|
||||
-and
|
||||
-.B cdda2mp3
|
||||
have predefined values for reading and labeling of the target files.
|
||||
You can overwrite them with following environment variables:
|
||||
|
||||
@@ -65,11 +59,11 @@ Additional options passed to
|
||||
The base part of the filename of resulting audio files. This can also be specified as the first argument to the script.
|
||||
|
||||
.PP
|
||||
-See cdda2ogg (cdda2mp3) script file to get the default values
|
||||
+See cdda2ogg script file to get the default values
|
||||
.PP
|
||||
System administrator can also set default values by creating of a shell
|
||||
include file, defining the variables for the POSIX shell, and storing them as
|
||||
-/etc/default/cdda2ogg (resp. cdda2mp3).
|
||||
+/etc/default/cdda2ogg.
|
||||
.SH "EXAMPLES"
|
||||
.PP
|
||||
.B CDDA_DEVICE=/dev/cdrom1 cdda2ogg
|
@ -0,0 +1,539 @@
|
||||
Summary: A collection of CD/DVD utilities
|
||||
Name: cdrkit
|
||||
Version: 1.1.11
|
||||
Release: 39%{?dist}
|
||||
License: GPLv2
|
||||
Group: Applications/System
|
||||
URL: http://cdrkit.org/
|
||||
Source: http://cdrkit.org/releases/cdrkit-%{version}.tar.gz
|
||||
|
||||
Patch1: cdrkit-1.1.8-werror.patch
|
||||
Patch2: cdrkit-1.1.9-efi-boot.patch
|
||||
Patch4: cdrkit-1.1.9-no_mp3.patch
|
||||
Patch5: cdrkit-1.1.9-buffer_overflow.patch
|
||||
Patch6: cdrkit-1.1.10-build-fix.patch
|
||||
Patch7: cdrkit-1.1.11-manpagefix.patch
|
||||
Patch8: cdrkit-1.1.11-rootstat.patch
|
||||
Patch9: cdrkit-1.1.11-usalinst.patch
|
||||
Patch10: cdrkit-1.1.11-readsegfault.patch
|
||||
Patch11: cdrkit-1.1.11-format.patch
|
||||
Patch12: cdrkit-1.1.11-handler.patch
|
||||
Patch13: cdrkit-1.1.11-dvdman.patch
|
||||
Patch14: cdrkit-1.1.11-paranoiacdda.patch
|
||||
Patch15: cdrkit-1.1.11-utf8.patch
|
||||
Patch16: cdrkit-1.1.11-cmakewarn.patch
|
||||
Patch17: cdrkit-1.1.11-memset.patch
|
||||
Patch19: cdrkit-1.1.11-ppc64le_elfheader.patch
|
||||
Patch20: cdrkit-1.1.11-werror_gcc5.patch
|
||||
Patch21: cdrkit-1.1.11-devname.patch
|
||||
Patch22: cdrkit-1.1.11-sysmacros.patch
|
||||
|
||||
Patch23: 0001-fix-file-name-buffer-overflow-in-isoinfo.patch
|
||||
|
||||
BuildRequires: cmake libcap-devel zlib-devel perl-interpreter perl-generators file-devel bzip2-devel
|
||||
|
||||
%description
|
||||
cdrkit is a collection of CD/DVD utilities.
|
||||
|
||||
%package -n wodim
|
||||
Summary: A command line CD/DVD recording program
|
||||
Group: Applications/Archiving
|
||||
Obsoletes: dvdrecord <= 0:0.1.5
|
||||
Provides: dvdrecord = 0:0.1.5.1
|
||||
Obsoletes: cdrecord < 9:2.01-12
|
||||
Provides: cdrecord = 9:2.01-12
|
||||
Requires: libusal = %{version}-%{release}
|
||||
Requires(preun): %{_sbindir}/alternatives coreutils
|
||||
Requires(post): %{_sbindir}/alternatives coreutils
|
||||
|
||||
%description -n wodim
|
||||
Wodim is an application for creating audio and data CDs. Wodim
|
||||
works with many different brands of CD recorders, fully supports
|
||||
multi-sessions and provides human-readable error messages.
|
||||
|
||||
%package -n genisoimage
|
||||
Summary: Creates an image of an ISO9660 file-system
|
||||
Group: Applications/System
|
||||
Obsoletes: mkisofs < 9:2.01-12
|
||||
Provides: mkisofs = 9:2.01-12
|
||||
Requires: libusal = %{version}-%{release}
|
||||
Requires(preun): %{_sbindir}/alternatives coreutils
|
||||
Requires(post): %{_sbindir}/alternatives coreutils
|
||||
|
||||
%description -n genisoimage
|
||||
The genisoimage program is used as a pre-mastering program; i.e., it
|
||||
generates the ISO9660 file-system. Genisoimage takes a snapshot of
|
||||
a given directory tree and generates a binary image of the tree
|
||||
which will correspond to an ISO9660 file-system when written to
|
||||
a block device. Genisoimage is used for writing CD-ROMs, and includes
|
||||
support for creating boot-able El Torito CD-ROMs.
|
||||
|
||||
Install the genisoimage package if you need a program for writing
|
||||
CD-ROMs.
|
||||
|
||||
%package -n dirsplit
|
||||
Summary: Utility to split directories
|
||||
Group: Applications/System
|
||||
Requires: perl-interpreter >= 4:5.8.1
|
||||
Requires: genisoimage = %{version}-%{release}
|
||||
|
||||
%description -n dirsplit
|
||||
This utility is used to split directories into chunks before burning.
|
||||
Chunk size is usually set to fit to a CD/DVD.
|
||||
|
||||
%package -n icedax
|
||||
Group: Applications/Multimedia
|
||||
Summary: A utility for sampling/copying .wav files from digital audio CDs
|
||||
Obsoletes: cdda2wav < 9:2.01-12
|
||||
Provides: cdda2wav = 9:2.01-12
|
||||
Requires: libusal = %{version}-%{release}
|
||||
Requires(preun): %{_sbindir}/alternatives chkconfig coreutils
|
||||
Requires(post): %{_sbindir}/alternatives chkconfig coreutils
|
||||
Requires: vorbis-tools
|
||||
Requires: cdparanoia
|
||||
BuildRequires: cdparanoia-devel
|
||||
|
||||
%description -n icedax
|
||||
Icedax is a sampling utility for CD-ROM drives that are capable of
|
||||
providing a CD's audio data in digital form to your host. Audio data
|
||||
read from the CD can be saved as .wav or .sun format sound files.
|
||||
Recording formats include stereo/mono, 8/12/16 bits and different
|
||||
rates. Icedax can also be used as a CD player.
|
||||
|
||||
%package -n libusal
|
||||
Summary: Library to communicate with SCSI devices
|
||||
Group: Development/Libraries
|
||||
|
||||
%description -n libusal
|
||||
The libusal package contains C libraries that allows applications
|
||||
to communicate with SCSI devices and is well suitable for writing
|
||||
CD-R media.
|
||||
|
||||
%package -n libusal-devel
|
||||
Summary: Development files for libusal
|
||||
Group: Development/Libraries
|
||||
Requires: libusal = %{version}-%{release}
|
||||
|
||||
%description -n libusal-devel
|
||||
The libusal-devel package contains C libraries and header files
|
||||
for developing applications that use libusal for communication with
|
||||
SCSI devices.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch1 -p1 -b .werror
|
||||
%patch2 -p1 -b .efi
|
||||
%patch4 -p1 -b .no_mp3
|
||||
%patch5 -p1 -b .buffer_overflow
|
||||
%patch6 -p1 -b .build-fix
|
||||
%patch7 -p1 -b .manpagefix
|
||||
%patch8 -p1 -b .rootstat
|
||||
%patch9 -p1 -b .usalinst
|
||||
%patch10 -p1 -b .readsegfault
|
||||
%patch11 -p1 -b .format
|
||||
%patch12 -p1 -b .handler
|
||||
%patch13 -p1 -b .dvdman
|
||||
%patch14 -p1 -b .paranoiacdda
|
||||
# not using -b since otherwise backup files would be included into rpm
|
||||
%patch15 -p1
|
||||
%patch16 -p1 -b .cmakewarn
|
||||
%patch17 -p1 -b .edcspeed
|
||||
%patch19 -p1 -b .elfheader
|
||||
%patch20 -p1 -b .werror_gcc5
|
||||
%patch21 -p1 -b .devname
|
||||
%patch22 -p1 -b .sysmacros
|
||||
|
||||
%patch23 -p1 -b .namesize
|
||||
|
||||
# we do not want bundled paranoia library
|
||||
rm -rf libparanoia
|
||||
|
||||
find . -type f -print0 | xargs -0 perl -pi -e 's#/usr/local/bin/perl#/usr/bin/perl#g'
|
||||
find doc -type f -print0 | xargs -0 chmod a-x
|
||||
|
||||
|
||||
%build
|
||||
mkdir fedora
|
||||
cd fedora
|
||||
export CFLAGS="$RPM_OPT_FLAGS -Wno-error=format-security -fno-strict-aliasing"
|
||||
export CXXFLAGS="$CFLAGS"
|
||||
export FFLAGS="$CFLAGS"
|
||||
%cmake CMAKE_VERBOSE=1 \
|
||||
-DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \
|
||||
-DBUILD_SHARED_LIBS:BOOL=ON \
|
||||
..
|
||||
|
||||
make VERBOSE=1 %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
cd fedora
|
||||
make install DESTDIR=$RPM_BUILD_ROOT
|
||||
perl -pi -e 's#^require v5.8.1;##g' $RPM_BUILD_ROOT%{_bindir}/dirsplit
|
||||
ln -s genisoimage $RPM_BUILD_ROOT%{_bindir}/mkisofs
|
||||
ln -s genisoimage $RPM_BUILD_ROOT%{_bindir}/mkhybrid
|
||||
ln -s icedax $RPM_BUILD_ROOT%{_bindir}/cdda2wav
|
||||
ln -s wodim $RPM_BUILD_ROOT%{_bindir}/cdrecord
|
||||
ln -s wodim $RPM_BUILD_ROOT%{_bindir}/dvdrecord
|
||||
|
||||
#do not include empty fedora/* directories in debuginfo package
|
||||
cd ..
|
||||
rm -rf fedora
|
||||
|
||||
# missing man page. Do symlink like in debian
|
||||
ln -sf wodim.1.gz $RPM_BUILD_ROOT/%{_mandir}/man1/netscsid.1.gz
|
||||
|
||||
# we don't need cdda2mp3 since we don't have any mp3 {en,de}coder
|
||||
rm $RPM_BUILD_ROOT%{_bindir}/cdda2mp3
|
||||
|
||||
%post -n wodim
|
||||
link=`readlink %{_bindir}/cdrecord`
|
||||
if [ "$link" == "%{_bindir}/wodim" ]; then
|
||||
rm -f %{_bindir}/cdrecord
|
||||
fi
|
||||
link=`readlink %{_bindir}/dvdrecord`
|
||||
if [ "$link" == "wodim" ]; then
|
||||
rm -f %{_bindir}/dvdrecord
|
||||
fi
|
||||
|
||||
%{_sbindir}/alternatives --install %{_bindir}/cdrecord cdrecord \
|
||||
%{_bindir}/wodim 50 \
|
||||
--slave %{_mandir}/man1/cdrecord.1.gz cdrecord-cdrecordman \
|
||||
%{_mandir}/man1/wodim.1.gz \
|
||||
--slave %{_bindir}/dvdrecord cdrecord-dvdrecord %{_bindir}/wodim \
|
||||
--slave %{_mandir}/man1/dvdrecord.1.gz cdrecord-dvdrecordman \
|
||||
%{_mandir}/man1/wodim.1.gz \
|
||||
--slave %{_bindir}/readcd cdrecord-readcd %{_bindir}/readom \
|
||||
--slave %{_mandir}/man1/readcd.1.gz cdrecord-readcdman \
|
||||
%{_mandir}/man1/readom.1.gz
|
||||
|
||||
%preun -n wodim
|
||||
if [ $1 = 0 ]; then
|
||||
%{_sbindir}/alternatives --remove cdrecord %{_bindir}/wodim
|
||||
fi
|
||||
|
||||
%post -n genisoimage
|
||||
link=`readlink %{_bindir}/mkisofs`
|
||||
if [ "$link" == "genisoimage" ]; then
|
||||
rm -f %{_bindir}/mkisofs
|
||||
fi
|
||||
|
||||
%{_sbindir}/alternatives --install %{_bindir}/mkisofs mkisofs \
|
||||
%{_bindir}/genisoimage 50 \
|
||||
--slave %{_mandir}/man1/mkisofs.1.gz mkisofs-mkisofsman \
|
||||
%{_mandir}/man1/genisoimage.1.gz \
|
||||
--slave %{_bindir}/mkhybrid mkisofs-mkhybrid %{_bindir}/genisoimage \
|
||||
--slave %{_mandir}/man1/mkhybrid.1.gz mkisofs-mkhybridman \
|
||||
%{_mandir}/man1/genisoimage.1.gz
|
||||
|
||||
%preun -n genisoimage
|
||||
if [ $1 = 0 ]; then
|
||||
%{_sbindir}/alternatives --remove mkisofs %{_bindir}/genisoimage
|
||||
fi
|
||||
|
||||
%post -n icedax
|
||||
link=`readlink %{_bindir}/cdda2wav`
|
||||
if [ "$link" == "icedax" ]; then
|
||||
rm -f %{_bindir}/cdda2wav
|
||||
fi
|
||||
%{_sbindir}/alternatives --install %{_bindir}/cdda2wav cdda2wav \
|
||||
%{_bindir}/icedax 50 \
|
||||
--slave %{_mandir}/man1/cdda2wav.1.gz cdda2wav-cdda2wavman \
|
||||
%{_mandir}/man1/icedax.1.gz
|
||||
|
||||
%preun -n icedax
|
||||
if [ $1 = 0 ]; then
|
||||
%{_sbindir}/alternatives --remove cdda2wav %{_bindir}/icedax
|
||||
fi
|
||||
|
||||
%post -n libusal -p /sbin/ldconfig
|
||||
|
||||
%postun -n libusal -p /sbin/ldconfig
|
||||
|
||||
%files -n wodim
|
||||
%doc Changelog COPYING FAQ FORK START
|
||||
%doc doc/READMEs doc/wodim
|
||||
%{_bindir}/devdump
|
||||
%{_bindir}/wodim
|
||||
%ghost %{_bindir}/cdrecord
|
||||
%ghost %{_bindir}/dvdrecord
|
||||
%{_bindir}/readom
|
||||
%{_sbindir}/netscsid
|
||||
%{_mandir}/man1/devdump.*
|
||||
%{_mandir}/man1/wodim.*
|
||||
%{_mandir}/man1/netscsid.*
|
||||
%{_mandir}/man1/readom.*
|
||||
|
||||
%files -n icedax
|
||||
%doc doc/icedax COPYING
|
||||
%{_bindir}/icedax
|
||||
%ghost %{_bindir}/cdda2wav
|
||||
%{_bindir}/cdda2ogg
|
||||
%{_mandir}/man1/icedax.*
|
||||
%{_mandir}/man1/cdda2ogg.*
|
||||
%{_mandir}/man1/list_audio_tracks.*
|
||||
|
||||
%files -n genisoimage
|
||||
%doc doc/genisoimage COPYING
|
||||
%{_bindir}/genisoimage
|
||||
%ghost %{_bindir}/mkisofs
|
||||
%ghost %{_bindir}/mkhybrid
|
||||
%{_bindir}/isodebug
|
||||
%{_bindir}/isodump
|
||||
%{_bindir}/isoinfo
|
||||
%{_bindir}/isovfy
|
||||
%{_bindir}/pitchplay
|
||||
%{_bindir}/readmult
|
||||
%{_mandir}/man5/genisoimagerc.*
|
||||
%{_mandir}/man1/genisoimage.*
|
||||
%{_mandir}/man1/isodebug.*
|
||||
%{_mandir}/man1/isodump.*
|
||||
%{_mandir}/man1/isoinfo.*
|
||||
%{_mandir}/man1/isovfy.*
|
||||
%{_mandir}/man1/pitchplay.*
|
||||
%{_mandir}/man1/readmult.*
|
||||
|
||||
%files -n dirsplit
|
||||
%{_bindir}/dirsplit
|
||||
%{_mandir}/man1/dirsplit.*
|
||||
|
||||
%files -n libusal
|
||||
%doc doc/plattforms/README.linux Changelog COPYING FAQ FORK START
|
||||
%{_libdir}/libusal.so.*
|
||||
%{_libdir}/librols.so.*
|
||||
|
||||
%files -n libusal-devel
|
||||
%doc COPYING
|
||||
%{_libdir}/libusal.so
|
||||
%{_libdir}/librols.so
|
||||
%{_includedir}/usal
|
||||
|
||||
%changelog
|
||||
* Thu Aug 02 2018 Jakub Martisko <jamartis@redhat.com> - 1.1.11-39
|
||||
- Fix buffer overflow erro in isoinfo caused by long names
|
||||
- Resolves: 1533004
|
||||
|
||||
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.11-38
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||
|
||||
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.11-37
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
||||
|
||||
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.11-36
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
||||
|
||||
* Thu Jul 13 2017 Petr Pisar <ppisar@redhat.com> - 1.1.11-35
|
||||
- perl dependency renamed to perl-interpreter
|
||||
<https://fedoraproject.org/wiki/Changes/perl_Package_to_Install_Core_Modules>
|
||||
|
||||
* Wed Feb 22 2017 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-34
|
||||
- FTBFS with gcc7, removed -Werror (no upstream to fix problems anyway)
|
||||
|
||||
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.11-33
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
||||
|
||||
* Wed Jan 04 2017 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-32
|
||||
- FTBFS: <sys/sysmacros.h> included where "major" and "minor" macros are in use
|
||||
(cdrkit-1.1.11-sysmacros.patch added)
|
||||
- https://bugzilla.redhat.com/show_bug.cgi?id=1263599 - man page clarified
|
||||
(cdrkit-1.1.11-manpagefix.patch modified)
|
||||
|
||||
* Tue Feb 16 2016 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-31
|
||||
- FTBFS: added -Wno-error=misleading-indentation
|
||||
|
||||
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.11-30
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
||||
|
||||
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-29
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
||||
|
||||
* Fri May 29 2015 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-28
|
||||
- libusal: added /dev/srN next to /dev/scdN path when scanning for devices
|
||||
added cdrkit-1.1.11-devname.patch
|
||||
bz#1053056
|
||||
|
||||
* Wed Feb 25 2015 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-27
|
||||
- fixed FTBFS with gcc5, added cdrkit-1.1.11-werror_gcc5.patch
|
||||
|
||||
* Fri Nov 07 2014 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-26
|
||||
- reverted back to cdda-paranoia, cdio has now incompatible GPLv3+ license
|
||||
|
||||
* Wed Nov 05 2014 Dan Horák <dan[at]danny.cz> - 1.1.11-25
|
||||
- fix build on ppc* (#1144072)
|
||||
|
||||
* Fri Aug 15 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-24
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
||||
|
||||
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-23
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
||||
|
||||
* Sat Aug 03 2013 Petr Pisar <ppisar@redhat.com> - 1.1.11-22
|
||||
- Perl 5.18 rebuild
|
||||
|
||||
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-21
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
||||
|
||||
* Tue Jul 23 2013 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-20
|
||||
- do not include empty fedora/* directories in debuginfo package
|
||||
|
||||
* Wed Jul 17 2013 Petr Pisar <ppisar@redhat.com> - 1.1.11-19
|
||||
- Perl 5.18 rebuild
|
||||
|
||||
* Wed Jul 17 2013 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-18
|
||||
- ported from cdda-paranoia to libcdio-paranoia, modified paranoia-cdda.patch
|
||||
- fixed bogus date in changelog
|
||||
|
||||
* Mon Feb 25 2013 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-17
|
||||
- modified the memset patch, memsetting the whole array
|
||||
|
||||
* Fri Feb 22 2013 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-16
|
||||
- changed or deleted faulty and unneeded memset's that caused build failure with gcc-4.8 -Werror
|
||||
|
||||
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-15
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
|
||||
|
||||
* Wed Oct 03 2012 Honza Horak <hhorak@redhat.com> - 1.1.11-14
|
||||
- Add coreutils as preun/post requirements for wodim and genisoimage
|
||||
Resolves: #862554
|
||||
|
||||
* Mon Aug 27 2012 Honza Horak <hhorak@redhat.com> - 1.1.11-13
|
||||
- Add mkhybrid(1) as a symlink to genisoimage(1)
|
||||
- Spec file cleanup
|
||||
|
||||
* Mon Jul 30 2012 Honza Horak <hhorak@redhat.com> - 1.1.11-12
|
||||
- Use system cdparanoia instead of old bundled version
|
||||
- Build libusal as a shared library
|
||||
- Messages from rpmlint clean-up
|
||||
|
||||
* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-11
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
|
||||
|
||||
* Thu Jan 12 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-10
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
||||
|
||||
* Wed Dec 07 2011 Honza Horak <hhorak@redhat.com> - 1.1.11-9
|
||||
- Fix driver specification in man pages
|
||||
(Resolves: #711623)
|
||||
|
||||
* Thu Jun 02 2011 Honza Horak <hhorak@redhat.com> - 1.1.11-8
|
||||
- Fix segmentation fault when icedax exits while sleeping after ctrl-c
|
||||
(Resolves: #709902)
|
||||
|
||||
* Tue May 17 2011 Honza Horak <hhorak@redhat.com> - 1.1.11-7
|
||||
- Fix automatic formatting of DVD+RW if needed
|
||||
(Resolves: #519465)
|
||||
|
||||
* Thu Mar 17 2011 Honza Horak <hhorak@redhat.com> - 1.1.11-6
|
||||
- Added Provides: libusal-static for libusal-devel subpackage
|
||||
(Resolves: #688347)
|
||||
|
||||
* Mon Mar 07 2011 Honza Horak <hhorak@redhat.com> - 1.1.11-5
|
||||
- Fix segmentation fault in readom
|
||||
(Resolves: #682591)
|
||||
|
||||
* Thu Feb 17 2011 Honza Horak <hhorak@redhat.com> - 1.1.11-4
|
||||
- Library libusal is installed in order to be used by other apps
|
||||
(Resolves: #588508)
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=588508
|
||||
|
||||
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
||||
|
||||
* Mon Jan 31 2011 Honza Horak <hhorak@redhat.com> 1.1.11-2
|
||||
- fixed man page missing arguments (Resolves: #647024)
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=647024
|
||||
- fixed erroneous "Unknown file type (unallocated)" warning
|
||||
(Resolves: #174667)
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=174667
|
||||
|
||||
* Mon Oct 18 2010 Nikola Pajkovsky <npajkovs@redhat.com> 1.1.11-1
|
||||
- new upstream version 1.1.11
|
||||
|
||||
* Mon Jun 21 2010 Roman Rakus <rrakus@redhat.com> - 1.1.10-2
|
||||
- Added missing manpage for netscsid (symlink to wodim manpage)
|
||||
|
||||
* Wed Jan 20 2010 Nikola Pajkovsky <npajkovs@redhat.com> - 1.1.10-1
|
||||
- new upstream version 1.1.10
|
||||
|
||||
* Tue Aug 11 2009 Nikola Pajkovsky <npajkovs@redhat.com> 1.1.9-10
|
||||
- fix #508449. fix string overflow breakage when using the -root
|
||||
|
||||
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.9-9
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
|
||||
|
||||
* Thu Jul 16 2009 Nikola Pajkovsky <npajkovs@redhat.com> 1.1.9-8
|
||||
- fix buffer overflow
|
||||
|
||||
* Fri Jul 10 2009 Adam Jackson <ajax@redhat.com> 1.1.9-7
|
||||
- Move dirsplit to a subpackage to isolate the perl dependency.
|
||||
|
||||
* Mon Jun 15 2009 Roman Rakus <rrakus@redhat.com> - 1.1.9-6
|
||||
- rename functions as they conflict with glibc
|
||||
- Don't push cdda2mp3 because we don't have any mp3 coder
|
||||
Resolves: #505918
|
||||
|
||||
* Tue Jun 02 2009 Roman Rakus <rrakus@redhat.com> - 1.1.9-5
|
||||
- Added Requires vorbis-tools in icedax (rhbz #503699)
|
||||
|
||||
* Wed Feb 25 2009 Peter Jones <pjones@redhat.com> - 1.1.9-4
|
||||
- Add support for EFI boot images.
|
||||
|
||||
* Mon Feb 23 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.9-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
|
||||
|
||||
* Thu Feb 12 2009 Roman Rakus <rrakus@redhat.com> - 1.1.9-2
|
||||
- Use -fno-strict-aliasing to prevent strict_aliasing warnings/errors
|
||||
|
||||
* Mon Oct 27 2008 Roman Rakus <rrakus@redhat.com> - 1.1.9-1
|
||||
- Bump to version 1.1.9
|
||||
|
||||
* Tue May 27 2008 Roman Rakus <rrakus@redhat.com> - 1.1.8-1
|
||||
- Version 1.1.8 - old patches included
|
||||
- added bzip2-devel to build requirements
|
||||
- fixed #171510 - preserve directory permissions
|
||||
|
||||
* Wed Feb 27 2008 Harald Hoyer <harald@redhat.com> 1.1.6-11
|
||||
- refined -Werror patch
|
||||
|
||||
* Mon Feb 25 2008 Harald Hoyer <harald@redhat.com> 1.1.6-10
|
||||
- patched to compile with -Werror (rhbz#429385)
|
||||
|
||||
* Thu Feb 21 2008 Harald Hoyer <harald@redhat.com> 1.1.6-9
|
||||
- fixed loop on error message for old dev syntax (rhbz#429386)
|
||||
|
||||
* Thu Feb 21 2008 Harald Hoyer <harald@redhat.com> 1.1.6-8
|
||||
- added file-devel to build requirements
|
||||
|
||||
* Mon Feb 18 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.1.6-7
|
||||
- Autorebuild for GCC 4.3
|
||||
|
||||
* Tue Sep 25 2007 Harald Hoyer <harald@redhat.com> - 1.1.6-6
|
||||
- fixed readcd man page symlink
|
||||
|
||||
* Fri Sep 21 2007 Harald Hoyer <harald@redhat.com> - 1.1.6-5
|
||||
- fixed rhbz#255001 - icedax --devices segfaults
|
||||
- fixed rhbz#249357 - Typo in wodim output
|
||||
|
||||
* Fri Sep 21 2007 Harald Hoyer <harald@redhat.com> - 1.1.6-4
|
||||
- play stupid tricks, to let alternatives make the links and
|
||||
rpm not removing them afterwards
|
||||
- removed bogus warning for "." and ".."
|
||||
|
||||
* Thu Sep 20 2007 Harald Hoyer <harald@redhat.com> - 1.1.6-3
|
||||
- fixed rhbz#248262
|
||||
- switched to alternatives
|
||||
|
||||
* Fri Aug 17 2007 Harald Hoyer <harald@redhat.com> - 1.1.6-2
|
||||
- changed license to GPLv2
|
||||
|
||||
* Wed Jun 20 2007 Harald Hoyer <harald@redhat.com> - 1.1.6-1
|
||||
- version 1.1.6
|
||||
- added readcd symlink
|
||||
|
||||
* Mon Apr 23 2007 Harald Hoyer <harald@redhat.com> - 1.1.2-4
|
||||
- bump obsoletes/provides
|
||||
|
||||
* Tue Feb 27 2007 Harald Hoyer <harald@redhat.com> - 1.1.2-3
|
||||
- applied specfile changes as in bug #224365
|
||||
|
||||
* Wed Jan 24 2007 Harald Hoyer <harald@redhat.com> - 1.1.2-1
|
||||
- version 1.1.2
|
Loading…
Reference in new issue