From: Jan Rękorajski Date: Thu, 20 Oct 2016 07:14:00 +0000 (+0200) Subject: - up to 1.2, library and devel stuff gine upstream X-Git-Tag: auto/th/udftools-1.2-1 X-Git-Url: http://git.pld-linux.org/gitweb.cgi?a=commitdiff_plain;h=b4fe6387da2387b1f6c46c65dfd54243af273253;p=packages%2Fudftools.git - up to 1.2, library and devel stuff gine upstream --- diff --git a/udftools-cvs.patch b/udftools-cvs.patch deleted file mode 100644 index 3a0cdf7..0000000 --- a/udftools-cvs.patch +++ /dev/null @@ -1,330 +0,0 @@ -diff -Nur -x CVS udftools-1.0.0b3/cdrwtool/defaults.c udftools/cdrwtool/defaults.c ---- udftools-1.0.0b3/cdrwtool/defaults.c 2002-11-26 08:18:50.000000000 +0100 -+++ udftools/cdrwtool/defaults.c 2004-02-27 00:46:22.000000000 +0100 -@@ -164,7 +164,7 @@ - charSetInfo : UDF_CHAR_SET_INFO - }, - logicalVolIdent : "\x08" "LinuxUDF", -- LVInfo1 : "\x08" "Linux mkudffs " MKUDFFS_VERSION, -+ LVInfo1 : "\x08" "Linux mkudffs " PACKAGE_VERSION, - LVInfo2 : "\x08" "Linux UDF " UDFFS_VERSION " (" UDFFS_DATE ")", - LVInfo3 : "\x08" EMAIL_STRING, - impIdent : -diff -Nur -x CVS udftools-1.0.0b3/cdrwtool/Makefile.am udftools/cdrwtool/Makefile.am ---- udftools-1.0.0b3/cdrwtool/Makefile.am 2002-11-26 08:18:50.000000000 +0100 -+++ udftools/cdrwtool/Makefile.am 2004-02-27 00:45:50.000000000 +0100 -@@ -2,4 +2,4 @@ - cdrwtool_LDADD = $(top_builddir)/libudffs/libudffs.la - cdrwtool_SOURCES = main.c options.c cdrwtool.c defaults.c ../mkudffs/mkudffs.c options.h cdrwtool.h ../include/ecma_167.h ../include/osta_udf.h ../mkudffs/mkudffs.h ../include/libudffs.h ../include/defaults.h ../include/udf_endian.h - --AM_CPPFLAGS = -D_LARGEFILE64_SOURCE -+AM_CPPFLAGS = -I$(top_srcdir)/include -D_LARGEFILE64_SOURCE -diff -Nur -x CVS udftools-1.0.0b3/configure.in udftools/configure.in ---- udftools-1.0.0b3/configure.in 2003-10-24 03:52:14.000000000 +0200 -+++ udftools/configure.in 2004-02-27 01:02:53.000000000 +0100 -@@ -1,8 +1,8 @@ - dnl Process this file with autoconf to produce a configure script. --AC_INIT(mkudffs/mkudffs.c) -+AC_INIT(mkudffs, 1.0.0b3) - AC_CONFIG_AUX_DIR(config) - AM_CONFIG_HEADER(include/config.h:include/config.in) --AM_INIT_AUTOMAKE(udftools, 1.0.0b3) -+AM_INIT_AUTOMAKE - - dnl Checks for programs. - AC_PROG_CC -@@ -22,6 +22,9 @@ - - dnl Checks for library functions. - AC_CHECK_FUNCS(gettimeofday mktime open64 lseek64 llseek) -+AC_SUBST(LTLIBOBJS) - AC_CHECK_FUNCS([getopt_long],[],[AC_LIBOBJ([getopt])]) - --AC_OUTPUT(Makefile libudffs/Makefile mkudffs/Makefile cdrwtool/Makefile pktsetup/Makefile udffsck/Makefile wrudf/Makefile doc/Makefile udfct/Makefile) -+AC_CONFIG_FILES(Makefile libudffs/Makefile mkudffs/Makefile cdrwtool/Makefile pktsetup/Makefile udffsck/Makefile wrudf/Makefile doc/Makefile udfct/Makefile) -+ -+AC_OUTPUT -diff -Nur -x CVS udftools-1.0.0b3/libudffs/Makefile.am udftools/libudffs/Makefile.am ---- udftools-1.0.0b3/libudffs/Makefile.am 2003-10-24 03:03:18.000000000 +0200 -+++ udftools/libudffs/Makefile.am 2004-02-27 00:45:50.000000000 +0100 -@@ -3,4 +3,4 @@ - libudffs_la_LIBADD = @LTLIBOBJS@ - libudffs_la_LDFLAGS = -version-info 1:0:0 - --AM_CPPFLAGS = -D_LARGEFILE64_SOURCE -+AM_CPPFLAGS = -I$(top_srcdir)/include -D_LARGEFILE64_SOURCE -diff -Nur -x CVS udftools-1.0.0b3/mkudffs/defaults.c udftools/mkudffs/defaults.c ---- udftools-1.0.0b3/mkudffs/defaults.c 2002-11-26 08:18:51.000000000 +0100 -+++ udftools/mkudffs/defaults.c 2004-02-27 00:46:22.000000000 +0100 -@@ -171,7 +171,7 @@ - charSetInfo : UDF_CHAR_SET_INFO - }, - logicalVolIdent : "\x08" "LinuxUDF", -- LVInfo1 : "\x08" "Linux mkudffs " MKUDFFS_VERSION, -+ LVInfo1 : "\x08" "Linux mkudffs " PACKAGE_VERSION, - LVInfo2 : "\x08" "Linux UDF " UDFFS_VERSION " (" UDFFS_DATE ")", - LVInfo3 : "\x08" EMAIL_STRING, - impIdent : -diff -Nur -x CVS udftools-1.0.0b3/mkudffs/Makefile.am udftools/mkudffs/Makefile.am ---- udftools-1.0.0b3/mkudffs/Makefile.am 2002-11-26 08:18:51.000000000 +0100 -+++ udftools/mkudffs/Makefile.am 2004-02-27 00:45:50.000000000 +0100 -@@ -2,4 +2,4 @@ - mkudffs_LDADD = $(top_builddir)/libudffs/libudffs.la - mkudffs_SOURCES = main.c mkudffs.c defaults.c options.c mkudffs.h options.h ../include/ecma_167.h ../include/osta_udf.h ../include/libudffs.h ../include/defaults.h ../include/udf_endian.h ../include/bswap.h - --AM_CPPFLAGS = -D_LARGEFILE64_SOURCE -+AM_CPPFLAGS = -I$(top_srcdir)/include -D_LARGEFILE64_SOURCE -diff -Nur -x CVS udftools-1.0.0b3/mkudffs/mkudffs.c udftools/mkudffs/mkudffs.c ---- udftools-1.0.0b3/mkudffs/mkudffs.c 2004-02-23 04:35:33.000000000 +0100 -+++ udftools/mkudffs/mkudffs.c 2004-03-02 03:09:39.000000000 +0100 -@@ -250,14 +250,14 @@ - if (size % offsets[PSPACE_SIZE]) - size -= (size % offsets[PSPACE_SIZE]); - set_extent(disc, PSPACE, start, size); -- for (i=0; iudf_lvd[0]->numPartitionMaps; i++) -+ for (i=0; iudf_lvd[0]->numPartitionMaps); i++) - { - if (i == 1) - disc->udf_lvid->freeSpaceTable[i] = cpu_to_le32(0xFFFFFFFF); - else - disc->udf_lvid->freeSpaceTable[i] = cpu_to_le32(size); - } -- for (j=0; judf_lvd[0]->numPartitionMaps; j++) -+ for (j=0; judf_lvd[0]->numPartitionMaps); j++) - { - if (j == 1) - disc->udf_lvid->sizeTable[i+j] = cpu_to_le32(0xFFFFFFFF); -diff -Nur -x CVS udftools-1.0.0b3/mkudffs/mkudffs.h udftools/mkudffs/mkudffs.h ---- udftools-1.0.0b3/mkudffs/mkudffs.h 2004-02-23 04:33:11.000000000 +0100 -+++ udftools/mkudffs/mkudffs.h 2004-02-27 01:04:36.000000000 +0100 -@@ -30,11 +30,10 @@ - - #define CS0 0x00000001 - #define UDF_ID_APPLICATION "*Linux mkudffs" --#define MKUDFFS_VERSION "1.0.0b2" - - #define EMAIL_STRING "" - --#define UDFFS_DATE "2002/02/09" -+#define UDFFS_DATE "2004/02/26" - #define UDFFS_VERSION "1.0.0-cvs" - - #define DEFAULT_HD 0 -diff -Nur -x CVS udftools-1.0.0b3/mkudffs/options.c udftools/mkudffs/options.c ---- udftools-1.0.0b3/mkudffs/options.c 2002-11-26 08:18:51.000000000 +0100 -+++ udftools/mkudffs/options.c 2004-02-27 00:46:22.000000000 +0100 -@@ -77,7 +77,7 @@ - "\t--utf8\n" - "\t--bridge\n" - "\t--closed\n", -- MKUDFFS_VERSION, UDFFS_VERSION, UDFFS_DATE -+ PACKAGE_VERSION, UDFFS_VERSION, UDFFS_DATE - ); - exit(1); - } -diff -Nur -x CVS udftools-1.0.0b3/udffsck/defaults.c udftools/udffsck/defaults.c ---- udftools-1.0.0b3/udffsck/defaults.c 1970-01-01 01:00:00.000000000 +0100 -+++ udftools/udffsck/defaults.c 2004-02-27 01:02:53.000000000 +0100 -@@ -0,0 +1,88 @@ -+/* -+ * defaults.c -+ * -+ * Copyright (c) 2001-2002 Ben Fennema -+ * All rights reserved. -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -+ * -+ */ -+ -+#include "../mkudffs/mkudffs.h" -+ -+struct fileEntry default_fe = -+{ -+ descTag : -+ { -+ tagIdent : constant_cpu_to_le16(TAG_IDENT_LVID), -+ descVersion : constant_cpu_to_le16(3), -+ tagSerialNum : 1, -+ descCRC : constant_cpu_to_le16(sizeof(struct primaryVolDesc) - sizeof(tag)), -+ }, -+ icbTag : -+ { -+ strategyType : constant_cpu_to_le16(4), -+ strategyParameter : constant_cpu_to_le16(0), -+ numEntries : constant_cpu_to_le16(1), -+ fileType : 0, -+ flags : constant_cpu_to_le16(ICBTAG_FLAG_AD_IN_ICB), -+ }, -+ permissions : constant_cpu_to_le32(FE_PERM_U_DELETE|FE_PERM_U_CHATTR|FE_PERM_U_READ|FE_PERM_U_WRITE|FE_PERM_U_EXEC|FE_PERM_G_READ|FE_PERM_G_EXEC|FE_PERM_O_READ|FE_PERM_O_EXEC), -+ fileLinkCount : constant_cpu_to_le16(0), -+ informationLength : constant_cpu_to_le64(0), -+ logicalBlocksRecorded : constant_cpu_to_le64(0), -+ impIdent : -+ { -+ ident : UDF_ID_DEVELOPER, -+ identSuffix : -+ { -+ UDF_OS_CLASS_UNIX, -+ UDF_OS_ID_LINUX, -+ }, -+ }, -+}; -+ -+struct extendedFileEntry default_efe = -+{ -+ descTag : -+ { -+ tagIdent : constant_cpu_to_le16(TAG_IDENT_LVID), -+ descVersion : constant_cpu_to_le16(3), -+ tagSerialNum : 1, -+ descCRC : constant_cpu_to_le16(sizeof(struct primaryVolDesc) - sizeof(tag)), -+ }, -+ icbTag : -+ { -+ strategyType : constant_cpu_to_le16(4), -+ strategyParameter : constant_cpu_to_le16(0), -+ numEntries : constant_cpu_to_le16(1), -+ fileType : 0, -+ flags : constant_cpu_to_le16(ICBTAG_FLAG_AD_IN_ICB), -+ }, -+ permissions : constant_cpu_to_le32(FE_PERM_U_DELETE|FE_PERM_U_CHATTR|FE_PERM_U_READ|FE_PERM_U_WRITE|FE_PERM_U_EXEC|FE_PERM_G_READ|FE_PERM_G_EXEC|FE_PERM_O_READ|FE_PERM_O_EXEC), -+ fileLinkCount : constant_cpu_to_le16(0), -+ informationLength : constant_cpu_to_le64(0), -+ objectSize : constant_cpu_to_le64(0), -+ logicalBlocksRecorded : constant_cpu_to_le64(0), -+ impIdent : -+ { -+ ident : UDF_ID_DEVELOPER, -+ identSuffix : -+ { -+ UDF_OS_CLASS_UNIX, -+ UDF_OS_ID_LINUX, -+ }, -+ }, -+}; -diff -Nur -x CVS udftools-1.0.0b3/udffsck/Makefile.am udftools/udffsck/Makefile.am ---- udftools-1.0.0b3/udffsck/Makefile.am 2002-11-26 08:18:51.000000000 +0100 -+++ udftools/udffsck/Makefile.am 2004-02-27 01:02:53.000000000 +0100 -@@ -1,5 +1,5 @@ - bin_PROGRAMS = udffsck - udffsck_LDADD = $(top_builddir)/libudffs/libudffs.la --udffsck_SOURCES = main.c -+udffsck_SOURCES = main.c defaults.c - --AM_CPPFLAGS = -D_LARGEFILE64_SOURCE -+AM_CPPFLAGS = -I$(top_srcdir)/include -D_LARGEFILE64_SOURCE -diff -Nur -x CVS udftools-1.0.0b3/wrudf/defaults.c udftools/wrudf/defaults.c ---- udftools-1.0.0b3/wrudf/defaults.c 1970-01-01 01:00:00.000000000 +0100 -+++ udftools/wrudf/defaults.c 2004-02-27 01:02:53.000000000 +0100 -@@ -0,0 +1,88 @@ -+/* -+ * defaults.c -+ * -+ * Copyright (c) 2001-2002 Ben Fennema -+ * All rights reserved. -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -+ * -+ */ -+ -+#include "../mkudffs/mkudffs.h" -+ -+struct fileEntry default_fe = -+{ -+ descTag : -+ { -+ tagIdent : constant_cpu_to_le16(TAG_IDENT_LVID), -+ descVersion : constant_cpu_to_le16(3), -+ tagSerialNum : 1, -+ descCRC : constant_cpu_to_le16(sizeof(struct primaryVolDesc) - sizeof(tag)), -+ }, -+ icbTag : -+ { -+ strategyType : constant_cpu_to_le16(4), -+ strategyParameter : constant_cpu_to_le16(0), -+ numEntries : constant_cpu_to_le16(1), -+ fileType : 0, -+ flags : constant_cpu_to_le16(ICBTAG_FLAG_AD_IN_ICB), -+ }, -+ permissions : constant_cpu_to_le32(FE_PERM_U_DELETE|FE_PERM_U_CHATTR|FE_PERM_U_READ|FE_PERM_U_WRITE|FE_PERM_U_EXEC|FE_PERM_G_READ|FE_PERM_G_EXEC|FE_PERM_O_READ|FE_PERM_O_EXEC), -+ fileLinkCount : constant_cpu_to_le16(0), -+ informationLength : constant_cpu_to_le64(0), -+ logicalBlocksRecorded : constant_cpu_to_le64(0), -+ impIdent : -+ { -+ ident : UDF_ID_DEVELOPER, -+ identSuffix : -+ { -+ UDF_OS_CLASS_UNIX, -+ UDF_OS_ID_LINUX, -+ }, -+ }, -+}; -+ -+struct extendedFileEntry default_efe = -+{ -+ descTag : -+ { -+ tagIdent : constant_cpu_to_le16(TAG_IDENT_LVID), -+ descVersion : constant_cpu_to_le16(3), -+ tagSerialNum : 1, -+ descCRC : constant_cpu_to_le16(sizeof(struct primaryVolDesc) - sizeof(tag)), -+ }, -+ icbTag : -+ { -+ strategyType : constant_cpu_to_le16(4), -+ strategyParameter : constant_cpu_to_le16(0), -+ numEntries : constant_cpu_to_le16(1), -+ fileType : 0, -+ flags : constant_cpu_to_le16(ICBTAG_FLAG_AD_IN_ICB), -+ }, -+ permissions : constant_cpu_to_le32(FE_PERM_U_DELETE|FE_PERM_U_CHATTR|FE_PERM_U_READ|FE_PERM_U_WRITE|FE_PERM_U_EXEC|FE_PERM_G_READ|FE_PERM_G_EXEC|FE_PERM_O_READ|FE_PERM_O_EXEC), -+ fileLinkCount : constant_cpu_to_le16(0), -+ informationLength : constant_cpu_to_le64(0), -+ objectSize : constant_cpu_to_le64(0), -+ logicalBlocksRecorded : constant_cpu_to_le64(0), -+ impIdent : -+ { -+ ident : UDF_ID_DEVELOPER, -+ identSuffix : -+ { -+ UDF_OS_CLASS_UNIX, -+ UDF_OS_ID_LINUX, -+ }, -+ }, -+}; -diff -Nur -x CVS udftools-1.0.0b3/wrudf/Makefile.am udftools/wrudf/Makefile.am ---- udftools-1.0.0b3/wrudf/Makefile.am 2002-11-26 08:18:51.000000000 +0100 -+++ udftools/wrudf/Makefile.am 2004-02-27 01:02:53.000000000 +0100 -@@ -1,5 +1,5 @@ - bin_PROGRAMS = wrudf - wrudf_LDADD = $(top_builddir)/libudffs/libudffs.la -lreadline -lncurses --wrudf_SOURCES = wrudf.c wrudf-cmnd.c wrudf-desc.c wrudf-cdrw.c wrudf-cdr.c ide-pc.c wrudf.h ide-pc.h ../include/ecma_167.h ../include/osta_udf.h ../include/bswap.h -+wrudf_SOURCES = wrudf.c defaults.c wrudf-cmnd.c wrudf-desc.c wrudf-cdrw.c wrudf-cdr.c ide-pc.c wrudf.h ide-pc.h ../include/ecma_167.h ../include/osta_udf.h ../include/bswap.h - --AM_CPPFLAGS = -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DDEBUG -+AM_CPPFLAGS = -I$(top_srcdir)/include -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DDEBUG diff --git a/udftools-gcc4.patch b/udftools-gcc4.patch deleted file mode 100644 index 13b7b9e..0000000 --- a/udftools-gcc4.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur udftools-1.0.0b3.orig/wrudf/wrudf.c udftools-1.0.0b3.gcc4/wrudf/wrudf.c ---- udftools-1.0.0b3.orig/wrudf/wrudf.c 2002-11-26 07:18:51.000000000 +0000 -+++ udftools-1.0.0b3.gcc4/wrudf/wrudf.c 2006-11-11 17:56:14.000000000 +0000 -@@ -245,7 +245,7 @@ - } else if( strncmp( spm->partIdent.ident, UDF_ID_VIRTUAL, strlen(UDF_ID_VIRTUAL)) == 0 ) - virtualPartitionNum = i; - } -- (char*)spm += spm->partitionMapLength; -+ spm = (struct sparablePartitionMap*)(((char*) spm) + spm->partitionMapLength); - } - - if( medium == CDR ) { diff --git a/udftools-install_headers.patch b/udftools-install_headers.patch deleted file mode 100644 index c918d1c..0000000 --- a/udftools-install_headers.patch +++ /dev/null @@ -1,32 +0,0 @@ -diff -Nur b.udftools-1.0.0b3/Makefile.am n.udftools-1.0.0b3/Makefile.am ---- b.udftools-1.0.0b3/Makefile.am 2002-11-26 08:18:50.000000000 +0100 -+++ n.udftools-1.0.0b3/Makefile.am 2006-11-12 00:04:50.000000000 +0100 -@@ -1 +1 @@ --SUBDIRS = libudffs mkudffs cdrwtool pktsetup udffsck wrudf doc udfct -+SUBDIRS = libudffs mkudffs cdrwtool pktsetup udffsck wrudf doc udfct include -diff -Nur b.udftools-1.0.0b3/configure.in n.udftools-1.0.0b3/configure.in ---- b.udftools-1.0.0b3/configure.in 2006-11-12 00:04:18.000000000 +0100 -+++ n.udftools-1.0.0b3/configure.in 2006-11-12 00:17:11.000000000 +0100 -@@ -25,6 +25,7 @@ - AC_SUBST(LTLIBOBJS) - AC_CHECK_FUNCS([getopt_long],[],[AC_LIBOBJ([getopt])]) - --AC_CONFIG_FILES(Makefile libudffs/Makefile mkudffs/Makefile cdrwtool/Makefile pktsetup/Makefile udffsck/Makefile wrudf/Makefile doc/Makefile udfct/Makefile) -+AC_CONFIG_FILES(Makefile libudffs/Makefile mkudffs/Makefile cdrwtool/Makefile pktsetup/Makefile udffsck/Makefile wrudf/Makefile doc/Makefile -+ udfct/Makefile include/Makefile) - - AC_OUTPUT -diff -Nur b.udftools-1.0.0b3/include/Makefile.am n.udftools-1.0.0b3/include/Makefile.am ---- b.udftools-1.0.0b3/include/Makefile.am 1970-01-01 01:00:00.000000000 +0100 -+++ n.udftools-1.0.0b3/include/Makefile.am 2006-11-12 00:23:40.000000000 +0100 -@@ -0,0 +1,10 @@ -+pkgincludedir = $(includedir)/udffs -+pkginclude_HEADERS = \ -+ bswap.h \ -+ defaults.h \ -+ ecma_167.h \ -+ getopt.h \ -+ libudffs.h \ -+ osta_udf.h \ -+ udf_endian.h \ -+ udf_lib.h diff --git a/udftools-missing-INT_MAX.patch b/udftools-missing-INT_MAX.patch deleted file mode 100644 index ad03a40..0000000 --- a/udftools-missing-INT_MAX.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- udftools-1.0.0b3/cdrwtool/cdrwtool.c.old 2007-11-09 13:09:44.000000000 +0100 -+++ udftools-1.0.0b3/cdrwtool/cdrwtool.c 2007-11-09 13:10:34.000000000 +0100 -@@ -32,6 +32,7 @@ - #include - - #include -+#include - - #include "cdrwtool.h" - #include "../mkudffs/mkudffs.h" ---- udftools-1.0.0b3/pktsetup/pktsetup.c.old 2007-11-09 13:11:28.000000000 +0100 -+++ udftools-1.0.0b3/pktsetup/pktsetup.c 2007-11-09 13:11:57.000000000 +0100 -@@ -17,6 +17,7 @@ - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ -+#include - #include - #include - #include diff --git a/udftools-open.patch b/udftools-open.patch deleted file mode 100644 index 4397a6a..0000000 --- a/udftools-open.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur /var/tmp/portage/sys-fs/udftools-1.0.0b-r7/work/udftools-1.0.0b3/pktsetup/pktsetup.c /root/hardened/udftools-1.0.0b3/pktsetup/pktsetup.c ---- pktsetup/pktsetup.c 2008-06-19 00:27:08.000000000 +0200 -+++ pktsetup/pktsetup.c 2008-06-19 00:20:31.000000000 +0200 -@@ -85,7 +85,7 @@ - { - int pkt_fd, dev_fd, cmd; - -- if ((pkt_fd = open(pkt_device, O_RDONLY | O_CREAT)) == -1) { -+ if ((pkt_fd = open(pkt_device, O_RDONLY)) == -1) { - perror("open packet device"); - return; - } diff --git a/udftools-pktcdvd.patch b/udftools-pktcdvd.patch deleted file mode 100644 index 5ef0825..0000000 --- a/udftools-pktcdvd.patch +++ /dev/null @@ -1,346 +0,0 @@ -From: Peter Osterlund -Subject: Re: [RFC][PATCH] Control pktcdvd with an auxiliary character device -To: linux-kernel@vger.kernel.org -Cc: Christoph Hellwig , Arnd Bergmann , - Jens Axboe , Andrew Morton -Date: Wed Jul 14 02:17:27 2004 +0200 - -Peter Osterlund writes: - -> Peter Osterlund writes: -> -> > Christoph Hellwig writes: -> > -> > > On Sun, Jul 11, 2004 at 01:20:45AM +0200, Arnd Bergmann wrote: -> > > > These are actually incorrect definitions since the ioctl argument is -> > > > not a pointer to unsigned int but instead just an int. However, that's -> > > > too late to fix without breaking the existing tools. -> > > -> > > The tools need to change anyway to get away from the broken behaviour to -> > > issue in ioctl on the actual block device to bind it.. -> > -> > OK, I'll create a patch that gets rid of the ioctl interface and uses -> > an auxiliary character device instead to control device bindings. -> -> Here is a patch for 2.6.7-mm7 that does that. The driver creates a -> misc character device and bind/unbind of the block devices are -> controlled by ioctl commands on the char device. -> -> This patch needs corresponding changes in the pktsetup user space -> program. I'll post a patch for pktsetup as a separate message. - -And here is a patch for udftools-1.0.0b3 that updates the pktsetup -program to make it able to use the character device for block device -setup/teardown. - ---- - - udftools-1.0.0b3-petero/pktsetup/pktsetup.c | 245 +++++++++++++++++++++++++++- - 1 files changed, 238 insertions(+), 7 deletions(-) - -diff -puN pktsetup/pktsetup.c~pktsetup-char-dev pktsetup/pktsetup.c ---- udftools-1.0.0b3/pktsetup/pktsetup.c~pktsetup-char-dev 2004-07-12 19:57:51.000000000 +0200 -+++ udftools-1.0.0b3-petero/pktsetup/pktsetup.c 2004-07-14 00:34:02.471317888 +0200 -@@ -1,5 +1,6 @@ - /* - * Copyright (c) 1999,2000 Jens Axboe -+ * Copyright (c) 2004 Peter Osterlund - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by -@@ -19,6 +20,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -33,8 +35,33 @@ - #define PACKET_SETUP_DEV _IOW('X', 1, unsigned int) - #define PACKET_TEARDOWN_DEV _IOW('X', 2, unsigned int) - #endif -+#ifndef PACKET_CTRL_CMD -+#define PACKET_CTRL_CMD _IOWR('X', 1, struct pkt_ctrl_command) -+#endif -+ -+#define MAJOR(dev) ((dev & 0xfff00) >> 8) -+#define MINOR(dev) ((dev & 0xff) | ((dev >> 12) & 0xfff00)) -+#define MKDEV(ma,mi) ((mi & 0xff) | (ma << 8) | ((mi & ~0xff) << 12)) -+ -+#define MISC_MAJOR 10 -+#define CTL_DIR "/dev/pktcdvd" -+#define CTL_DEV "control" -+ -+#define PKT_CTRL_CMD_SETUP 0 -+#define PKT_CTRL_CMD_TEARDOWN 1 -+#define PKT_CTRL_CMD_STATUS 2 -+ -+struct pkt_ctrl_command { -+ __u32 command; /* in: Setup, teardown, status */ -+ __u32 dev_index; /* in/out: Device index */ -+ __u32 dev; /* in/out: Device nr for cdrw device */ -+ __u32 pkt_dev; /* out: Device nr for packet device */ -+ __u32 num_devices; /* out: Largest device index + 1 */ -+ __u32 padding; -+}; -+ - --int init_cdrom(int fd) -+static int init_cdrom(int fd) - { - if (ioctl(fd, CDROM_DRIVE_STATUS, CDSL_CURRENT) < 0) { - perror("drive not ready\n"); -@@ -54,7 +81,7 @@ int init_cdrom(int fd) - return 0; - } - --void setup_dev(char *pkt_device, char *device, int rem) -+static void setup_dev(char *pkt_device, char *device, int rem) - { - int pkt_fd, dev_fd, cmd; - -@@ -88,29 +115,233 @@ void setup_dev(char *pkt_device, char *d - close(pkt_fd); - } - --int usage(void) -+static int usage(void) - { -- printf("pktsetup /dev/pktcdvd0 /dev/cdrom\tsetup device\n"); -- printf("pktsetup -d /dev/pktcdvd0\t\ttear down device\n"); -+ printf("For pktcdvd < 0.2.0:\n"); -+ printf(" pktsetup /dev/pktcdvd0 /dev/cdrom setup device\n"); -+ printf(" pktsetup -d /dev/pktcdvd0 tear down device\n"); -+ printf("For pktcdvd >= 0.2.0:\n"); -+ printf(" pktsetup dev_name /dev/cdrom setup device\n"); -+ printf(" pktsetup -d dev_name tear down device\n"); -+ printf(" pktsetup -d major:minor tear down device\n"); -+ printf(" pktsetup -s show device mappings\n"); - return 1; - } - -+/* -+ * Find the minor device number for the pktcdvd control device. -+ */ -+static int get_misc_minor(void) -+{ -+ int minor; -+ char name[64]; -+ FILE *f; -+ -+ if ((f = fopen("/proc/misc", "r")) == NULL) -+ return -1; -+ while (fscanf(f, " %d %64s", &minor, name) == 2) { -+ if (strcmp(name, "pktcdvd") == 0) { -+ fclose(f); -+ return minor; -+ } -+ } -+ fclose(f); -+ return -1; -+} -+ -+static const char *pkt_dev_name(const char *dev) -+{ -+ static char buf[128]; -+ snprintf(buf, sizeof(buf), "%s/%s", CTL_DIR, dev); -+ return buf; -+} -+ -+static void create_ctl_dev(void) -+{ -+ int misc_minor; -+ struct stat stat_buf; -+ int dev; -+ -+ if ((misc_minor = get_misc_minor()) < 0) { -+ system("/sbin/modprobe pktcdvd"); -+ misc_minor = get_misc_minor(); -+ } -+ if (misc_minor < 0) { -+ fprintf(stderr, "Can't find pktcdvd character device\n"); -+ return; -+ } -+ dev = MKDEV(MISC_MAJOR, misc_minor); -+ -+ if ((stat(pkt_dev_name(CTL_DEV), &stat_buf) >= 0) && -+ S_ISCHR(stat_buf.st_mode) && (stat_buf.st_rdev == dev)) -+ return; /* Already set up */ -+ -+ mkdir(CTL_DIR, 0755); -+ unlink(pkt_dev_name(CTL_DEV)); -+ mknod(pkt_dev_name(CTL_DEV), S_IFCHR | 0644, dev); -+} -+ -+static int remove_stale_dev_node(int ctl_fd, char *devname) -+{ -+ struct stat stat_buf; -+ int i, dev; -+ struct pkt_ctrl_command c; -+ -+ if (stat(pkt_dev_name(devname), &stat_buf) < 0) -+ return 0; -+ if (!S_ISBLK(stat_buf.st_mode)) -+ return 1; -+ dev = stat_buf.st_rdev; -+ memset(&c, 0, sizeof(struct pkt_ctrl_command)); -+ for (i = 0; ; i++) { -+ c.command = PKT_CTRL_CMD_STATUS; -+ c.dev_index = i; -+ if (ioctl(ctl_fd, PACKET_CTRL_CMD, &c) < 0) { -+ perror("ioctl"); -+ return 1; -+ } -+ if (i >= c.num_devices) -+ break; -+ if (c.pkt_dev == dev) -+ return 1; /* busy */ -+ } -+ unlink(pkt_dev_name(devname)); -+ return 0; -+} -+ -+static void setup_dev_chardev(char *pkt_device, char *device, int rem) -+{ -+ struct pkt_ctrl_command c; -+ struct stat stat_buf; -+ int ctl_fd, dev_fd; -+ -+ memset(&c, 0, sizeof(struct pkt_ctrl_command)); -+ -+ create_ctl_dev(); -+ if ((ctl_fd = open(pkt_dev_name(CTL_DEV), O_RDONLY)) < 0) { -+ perror("ctl open"); -+ return; -+ } -+ -+ if (!rem) { -+ if ((dev_fd = open(device, O_RDONLY | O_NONBLOCK)) == -1) { -+ perror("open cd-rom"); -+ goto out_close; -+ } -+ if (init_cdrom(dev_fd)) { -+ close(dev_fd); -+ goto out_close; -+ } -+ close(dev_fd); -+ -+ if (stat(device, &stat_buf) < 0) { -+ perror("stat cd-rom"); -+ goto out_close; -+ } -+ if (!S_ISBLK(stat_buf.st_mode)) { -+ fprintf(stderr, "Not a block device\n"); -+ goto out_close; -+ } -+ c.command = PKT_CTRL_CMD_SETUP; -+ c.dev = stat_buf.st_rdev; -+ -+ if (remove_stale_dev_node(ctl_fd, pkt_device) != 0) { -+ fprintf(stderr, "Device node '%s' already in use\n", pkt_device); -+ goto out_close; -+ } -+ if (ioctl(ctl_fd, PACKET_CTRL_CMD, &c) < 0) { -+ perror("ioctl"); -+ goto out_close; -+ } -+ mknod(pkt_dev_name(pkt_device), S_IFBLK | 0640, c.pkt_dev); -+ } else { -+ int major, minor, remove_node; -+ -+ if ((stat(pkt_dev_name(pkt_device), &stat_buf) >= 0) && -+ S_ISBLK(stat_buf.st_mode)) { -+ major = MAJOR(stat_buf.st_rdev); -+ minor = MINOR(stat_buf.st_rdev); -+ remove_node = 1; -+ } else if (sscanf(pkt_device, "%d:%d", &major, &minor) == 2) { -+ remove_node = 0; -+ } else { -+ fprintf(stderr, "Can't find major/minor numbers\n"); -+ goto out_close; -+ } -+ -+ c.command = PKT_CTRL_CMD_TEARDOWN; -+ c.pkt_dev = MKDEV(major, minor); -+ if (ioctl(ctl_fd, PACKET_CTRL_CMD, &c) < 0) { -+ perror("ioctl"); -+ goto out_close; -+ } -+ if (remove_node) -+ unlink(pkt_dev_name(pkt_device)); -+ } -+ -+out_close: -+ close(ctl_fd); -+} -+ -+static void show_mappings(void) -+{ -+ struct pkt_ctrl_command c; -+ int ctl_fd, i; -+ -+ memset(&c, 0, sizeof(struct pkt_ctrl_command)); -+ -+ create_ctl_dev(); -+ if ((ctl_fd = open(pkt_dev_name(CTL_DEV), O_RDONLY)) < 0) { -+ perror("ctl open"); -+ return; -+ } -+ -+ for (i = 0; ; i++) { -+ c.command = PKT_CTRL_CMD_STATUS; -+ c.dev_index = i; -+ if (ioctl(ctl_fd, PACKET_CTRL_CMD, &c) < 0) { -+ perror("ioctl"); -+ goto out_close; -+ } -+ if (i >= c.num_devices) -+ break; -+ if (c.dev) { -+ printf("%2d : %d:%d -> %d:%d\n", -+ i, MAJOR(c.pkt_dev), MINOR(c.pkt_dev), -+ MAJOR(c.dev), MINOR(c.dev)); -+ } -+ } -+ -+out_close: -+ close(ctl_fd); -+} -+ - int main(int argc, char **argv) - { - int rem = 0, c; -+ char *pkt_device; -+ char *device; - - if (argc == 1) - return usage(); - -- while ((c = getopt(argc, argv, "d")) != EOF) { -+ while ((c = getopt(argc, argv, "ds?")) != EOF) { - switch (c) { - case 'd': - rem = 1; - break; -+ case 's': -+ show_mappings(); -+ return 0; - default: - return usage(); - } - } -- setup_dev(argv[optind], argv[optind + 1], rem); -+ pkt_device = argv[optind]; -+ device = argv[optind + 1]; -+ if (strchr(pkt_device, '/')) -+ setup_dev(pkt_device, device, rem); -+ else -+ setup_dev_chardev(pkt_device, device, rem); - return 0; - } -_ - --- -Peter Osterlund - petero2@telia.com -http://w1.894.telia.com/~u89404340 diff --git a/udftools-warnings.patch b/udftools-warnings.patch deleted file mode 100644 index 024ac81..0000000 --- a/udftools-warnings.patch +++ /dev/null @@ -1,67 +0,0 @@ -diff -Nur udftools-1.0.0b3.orig/cdrwtool/cdrwtool.h udftools-1.0.0b3.warnings/cdrwtool/cdrwtool.h ---- udftools-1.0.0b3.orig/cdrwtool/cdrwtool.h 2002-11-26 07:18:50.000000000 +0000 -+++ udftools-1.0.0b3.warnings/cdrwtool/cdrwtool.h 2006-11-11 18:30:28.000000000 +0000 -@@ -226,6 +226,7 @@ - int read_track_info(int, track_info_t *, int); - int reserve_track(int, struct cdrw_disc *); - int close_track(int, unsigned int); -+int close_session(int, unsigned int); - int read_buffer_cap(int, struct cdrw_disc *); - int set_cd_speed(int, int); - void cdrom_close(int); -diff -Nur udftools-1.0.0b3.orig/include/udf_endian.h udftools-1.0.0b3.warnings/include/udf_endian.h ---- udftools-1.0.0b3.orig/include/udf_endian.h 2002-11-26 07:18:51.000000000 +0000 -+++ udftools-1.0.0b3.warnings/include/udf_endian.h 2006-11-11 18:30:05.000000000 +0000 -@@ -24,6 +24,7 @@ - #define __UDF_ENDIAN_H - - #include "bswap.h" -+#include - - static inline lb_addr lelb_to_cpu(lb_addr in) - { -diff -Nur udftools-1.0.0b3.orig/pktsetup/pktsetup.c udftools-1.0.0b3.warnings/pktsetup/pktsetup.c ---- udftools-1.0.0b3.orig/pktsetup/pktsetup.c 2006-11-11 18:30:05.000000000 +0000 -+++ udftools-1.0.0b3.warnings/pktsetup/pktsetup.c 2006-11-11 18:31:25.000000000 +0000 -@@ -25,6 +25,8 @@ - #include - #include - #include -+#include -+#include - - #include - -diff -Nur udftools-1.0.0b3.orig/wrudf/ide-pc.c udftools-1.0.0b3.warnings/wrudf/ide-pc.c ---- udftools-1.0.0b3.orig/wrudf/ide-pc.c 2002-11-26 07:18:51.000000000 +0000 -+++ udftools-1.0.0b3.warnings/wrudf/ide-pc.c 2006-11-11 18:30:05.000000000 +0000 -@@ -26,6 +26,7 @@ - #include - #include - #include -+#include /* exit() */ - #include - #include - #include /* for u_char etc. */ -diff -Nur udftools-1.0.0b3.orig/wrudf/wrudf-cdr.c udftools-1.0.0b3.warnings/wrudf/wrudf-cdr.c ---- udftools-1.0.0b3.orig/wrudf/wrudf-cdr.c 2002-11-26 07:18:51.000000000 +0000 -+++ udftools-1.0.0b3.warnings/wrudf/wrudf-cdr.c 2006-11-11 18:30:05.000000000 +0000 -@@ -6,6 +6,7 @@ - #include - #include - #include -+#include - #include "wrudf.h" - #include "ide-pc.h" - #include "bswap.h" -diff -Nur udftools-1.0.0b3.orig/wrudf/wrudf-cdrw.c udftools-1.0.0b3.warnings/wrudf/wrudf-cdrw.c ---- udftools-1.0.0b3.orig/wrudf/wrudf-cdrw.c 2002-11-26 07:18:51.000000000 +0000 -+++ udftools-1.0.0b3.warnings/wrudf/wrudf-cdrw.c 2006-11-11 18:30:05.000000000 +0000 -@@ -31,6 +31,7 @@ - #include - #include - #include /* for CDROM_DRIVE_STATUS */ -+#include - - #include "wrudf.h" - #include "ide-pc.h" diff --git a/udftools.spec b/udftools.spec index d18a578..7286c97 100644 --- a/udftools.spec +++ b/udftools.spec @@ -1,28 +1,19 @@ -# -# Conditional build: -%bcond_without static_libs # don't build static libraries -# Summary: UDF writing tools for CDRW recorders Summary(pl.UTF-8): Narzędzia umożliwiające zapisywanie na płytach CDRW w formacie UDF Name: udftools -Version: 1.0.0b3 -Release: 5 +Version: 1.2 +Release: 1 License: GPL Group: Applications/System -Source0: http://dl.sourceforge.net/linux-udf/%{name}-%{version}.tar.gz -# Source0-md5: 2f491ddd63f31040797236fe18db9e60 -Patch0: %{name}-cvs.patch -Patch1: %{name}-pktcdvd.patch -Patch2: %{name}-gcc4.patch -Patch3: %{name}-warnings.patch -Patch4: %{name}-install_headers.patch -Patch5: %{name}-missing-INT_MAX.patch -Patch6: %{name}-open.patch +Source0: https://github.com/pali/udftools/archive/%{version}/%{name}-%{version}.tar.gz +# Source0-md5: f5cbb7dffbb33778a90c08e76693651e URL: http://linux-udf.sourceforge.net/ BuildRequires: autoconf >= 2.53 BuildRequires: automake BuildRequires: libtool BuildRequires: readline-devel +Obsoletes: udftools-devel +Obsoletes: udftools-static BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define _sbindir /sbin @@ -38,39 +29,8 @@ Ten pakiet umożliwia nagrywanie na dyskach CDRW jak na normalnych dyskietkach. Dane można usuwać i modyfikować. Odczyt jest możliwy na systemach obsługujących system plików UDF. -%package devel -Summary: udftools - libudffs header files -Summary(pl.UTF-8): udftools - pliki nagłówkowe dla libudffs -Group: Development/Libraries -Requires: %{name} = %{version}-%{release} - -%description devel -udftools - libudffs header files. - -%description devel -l pl.UTF-8 -udftools - pliki nagłówkowe dla libudffs. - -%package static -Summary: Static libudffs library -Summary(pl.UTF-8): Statyczna biblioteka libudffs -Group: Development/Libraries -Requires: %{name}-devel = %{version}-%{release} - -%description static -Static libudffs library. - -%description static -l pl.UTF-8 -Statyczna biblioteka libudffs. - %prep %setup -q -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p0 %build %{__libtoolize} @@ -90,8 +50,6 @@ install -d $RPM_BUILD_ROOT%{_sbindir} %{__make} install \ DESTDIR=$RPM_BUILD_ROOT -ln -s %{_bindir}/mkudffs $RPM_BUILD_ROOT%{_sbindir}/mkfs.udf - %clean rm -rf $RPM_BUILD_ROOT @@ -102,25 +60,12 @@ rm -rf $RPM_BUILD_ROOT %defattr(644,root,root,755) %doc AUTHORS ChangeLog %attr(755,root,root) %{_bindir}/cdrwtool -%attr(755,root,root) %{_bindir}/mkudffs -%attr(755,root,root) %{_bindir}/pktsetup -%attr(755,root,root) %{_bindir}/udffsck -%attr(755,root,root) %{_bindir}/wrudf +%attr(755,root,root) %{_sbindir}/mkudffs +%attr(755,root,root) %{_sbindir}/pktsetup +%attr(755,root,root) %{_sbindir}/wrudf %attr(755,root,root) %{_sbindir}/mkfs.udf -%attr(755,root,root) %{_libdir}/libudffs.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libudffs.so.1 %{_mandir}/man1/cdrwtool.1* +%{_mandir}/man1/wrudf.1* %{_mandir}/man8/mkudffs.8* %{_mandir}/man8/pktsetup.8* - -%files devel -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libudffs.so -%{_libdir}/libudffs.la -%{_includedir}/udffs - -%if %{with static_libs} -%files static -%defattr(644,root,root,755) -%{_libdir}/libudffs.a -%endif +%{_mandir}/man8/mkfs.udf.8*