From f890a254f53cef00396caf59f96e8120af754cd6 Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Wed, 25 Feb 2009 18:41:47 +0000 Subject: [PATCH 01/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index cc991ee..96f3d23 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 2.31 -Release: 6%{?dist} +Release: 7%{?dist} License: BSD Group: Applications/Archiving Source: http://ftp.info-zip.org/pub/infozip/src/zip231.tar.gz @@ -72,6 +72,9 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/zip.1* %changelog +* Wed Feb 25 2009 Fedora Release Engineering - 2.31-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + * Wed Feb 20 2008 Fedora Release Engineering - 2.31-6 - Autorebuild for GCC 4.3 From c2f4be329b9579f4e8bb48ec646871c46df4cafa Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Mon, 27 Jul 2009 09:03:18 +0000 Subject: [PATCH 02/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 96f3d23..c5b921c 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 2.31 -Release: 7%{?dist} +Release: 8%{?dist} License: BSD Group: Applications/Archiving Source: http://ftp.info-zip.org/pub/infozip/src/zip231.tar.gz @@ -72,6 +72,9 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/zip.1* %changelog +* Mon Jul 27 2009 Fedora Release Engineering - 2.31-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + * Wed Feb 25 2009 Fedora Release Engineering - 2.31-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild From 43dbc9a7b4931ea0406138acbe59146b59bf74cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Kl=C3=AD=C4=8D?= Date: Mon, 16 Nov 2009 12:26:10 +0000 Subject: [PATCH 03/56] Update to 3.0 --- .cvsignore | 3 +- exec-shield.patch | 19 -- sources | 3 +- zip-2.3-currdir.patch | 11 - zip-2.3-sf.patch | 11 - zip-2.31-configure.patch | 213 ---------------- zip-2.31-install.patch | 11 - zip-2.31-near-4GB.patch | 293 ---------------------- zip-2.31-umask_mode.patch | 12 - zip-3.0-currdir.patch | 12 + zip-3.0-exec-shield.patch | 20 ++ zip-2.31-time.patch => zip-3.0-time.patch | 2 +- zip.spec | 66 ++--- zip23-umask.patch | 23 -- zip23.patch | 93 ------- 15 files changed, 68 insertions(+), 724 deletions(-) delete mode 100644 exec-shield.patch delete mode 100644 zip-2.3-currdir.patch delete mode 100644 zip-2.3-sf.patch delete mode 100644 zip-2.31-configure.patch delete mode 100644 zip-2.31-install.patch delete mode 100644 zip-2.31-near-4GB.patch delete mode 100644 zip-2.31-umask_mode.patch create mode 100644 zip-3.0-currdir.patch create mode 100644 zip-3.0-exec-shield.patch rename zip-2.31-time.patch => zip-3.0-time.patch (98%) delete mode 100644 zip23-umask.patch delete mode 100644 zip23.patch diff --git a/.cvsignore b/.cvsignore index 3c76570..fc341fe 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1 @@ -zcrypt29.tar.gz -zip231.tar.gz +zip30.tar.gz diff --git a/exec-shield.patch b/exec-shield.patch deleted file mode 100644 index 3d2a1eb..0000000 --- a/exec-shield.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff -ur zip-2.3/crc_i386.S zip-2.3-lhh/crc_i386.S ---- zip-2.3/crc_i386.S 1999-10-09 16:10:26.000000000 -0400 -+++ zip-2.3-lhh/crc_i386.S 2003-10-24 16:15:52.000000000 -0400 -@@ -230,3 +230,6 @@ - #endif /* i386 || _i386 || _I386 || __i386 */ - - #endif /* !USE_ZLIB */ -+ -+.section .note.GNU-stack, "", @progbits -+.previous -diff -ur zip-2.3/match.S zip-2.3-lhh/match.S ---- zip-2.3/match.S 1999-07-27 17:18:14.000000000 -0400 -+++ zip-2.3-lhh/match.S 2003-10-24 16:15:38.000000000 -0400 -@@ -405,3 +405,5 @@ - #endif /* i386 || _I386 || _i386 || __i386 */ - - #endif /* !USE_ZLIB */ -+.section .note.GNU-stack, "", @progbits -+.previous diff --git a/sources b/sources index 6d5a622..225e991 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -922f7f38f8e50ec353fd5b3102e4d4d6 zcrypt29.tar.gz -6bfc076664416251d7624ab3538d1cb9 zip231.tar.gz +7b74551e63f8ee6aab6fbc86676c0d37 zip30.tar.gz diff --git a/zip-2.3-currdir.patch b/zip-2.3-currdir.patch deleted file mode 100644 index 1ff00f6..0000000 --- a/zip-2.3-currdir.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- zip-2.3/util.c.pom 1999-11-07 11:29:38.000000000 +0100 -+++ zip-2.3/util.c 2005-01-17 13:46:26.165396792 +0100 -@@ -190,6 +190,8 @@ - /* Compare the sh pattern p with the string s and return true if they match, - false if they don't or if there is a syntax error in the pattern. */ - { -+ while (s[0] == '.' && s[1] == '/') -+ s += 2; /* strip redundant leading "./" sections */ - return recmatch((ZCONST uch *) p, (ZCONST uch *) s, cs) == 1; - } - diff --git a/zip-2.3-sf.patch b/zip-2.3-sf.patch deleted file mode 100644 index db785a2..0000000 --- a/zip-2.3-sf.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- zip-2.3/unix/unix.c.pom 2006-10-09 16:24:47.000000000 +0200 -+++ zip-2.3/unix/unix.c 2006-10-09 17:14:18.000000000 +0200 -@@ -208,7 +208,7 @@ - doesn't collide with error values. 2^32 - 8193 should be plenty until - info-zip supports zip64. */ - if (s.st_size > MAX_ZIP_SIZE) { -- zipwarn("file too large: ", a); -+ zipwarn("file too large: ", n); - return ZE_MISS; - } - diff --git a/zip-2.31-configure.patch b/zip-2.31-configure.patch deleted file mode 100644 index 00b09d1..0000000 --- a/zip-2.31-configure.patch +++ /dev/null @@ -1,213 +0,0 @@ ---- zip-2.31/unix/configure.lhh 2005-11-10 13:25:26.000000000 +0100 -+++ zip-2.31/unix/configure 2005-11-10 13:40:44.311641648 +0100 -@@ -76,14 +76,20 @@ - done - fi - --echo Check for prototypes -+echo -n Check for prototypes... - echo "int main(int argc, char *argv[]) { return 0; }" > conftest.c - $CC $CFLAGS -c conftest.c > /dev/null 2>/dev/null --[ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_PROTO" -+if [ $? -ne 0 ]; then -+ echo no -+ CFLAGS="${CFLAGS} -DNO_PROTO" -+else -+ echo yes -+fi -+ - - # const check currently handles mips cc and non ANSI compilers. - # does it need more ? --echo Check the handling of const -+echo -n Check the handling of const... - cat > conftest.c << _EOF_ - typedef int charset[2]; - int main() -@@ -94,9 +100,15 @@ - } - _EOF_ - $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null --[ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_CONST" -+if [ $? -ne 0 ]; then -+ echo no -+ CFLAGS="${CFLAGS} -DNO_CONST" -+else -+ echo yes -+fi -+ - --echo Check for time_t -+echo -n Check for time_t... - cat > conftest.c << _EOF_ - #include - #include -@@ -107,9 +119,15 @@ - } - _EOF_ - $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null --[ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_TIME_T" -+if [ $? -ne 0 ]; then -+ echo no -+ CFLAGS="${CFLAGS} -DNO_TIME_T" -+else -+ echo yes -+fi -+ - --echo Check for size_t -+echo -n Check for size_t... - cat > conftest.c << _EOF_ - #include - int main() -@@ -119,7 +137,13 @@ - } - _EOF_ - $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null --[ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_SIZE_T" -+if [ $? -ne 0 ]; then -+ echo no -+ CFLAGS="${CFLAGS} -DNO_SIZE_T" -+else -+ echo yes -+fi -+ - - echo Check for gcc no-builtin flag - # -fno-builtin since version 2 -@@ -140,18 +164,29 @@ - # add NO_'function_name' to flags if missing - for func in rmdir strchr strrchr rename mktemp mktime mkstemp - do -- echo Check for $func -- echo "int main(){ $func(); return 0; }" > conftest.c -+ echo -n Check for $func... -+ echo "char $func(void); int main(){ $func(); return 0; }" > conftest.c - $CC $BFLAG -o conftest conftest.c >/dev/null 2>/dev/null -- [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_`echo $func | tr '[a-z]' '[A-Z]'`" -+ if [ $? -ne 0 ]; then -+ echo no -+ CFLAGS="${CFLAGS} -DNO_`echo $func | tr '[a-z]' '[A-Z]'`" -+ else -+ echo yes -+ fi - done - --echo Check for memset -+echo -n Check for memset... - echo "int main(){ char k; memset(&k,0,0); return 0; }" > conftest.c - $CC -o conftest conftest.c >/dev/null 2>/dev/null --[ $? -ne 0 ] && CFLAGS="${CFLAGS} -DZMEM" -+if [ $? -ne 0 ]; then -+ echo no -+ CFLAGS="${CFLAGS} -DZMEM" -+else -+ echo yes -+fi -+ - --echo Check for errno declaration -+echo -n Check for errno declaration... - cat > conftest.c << _EOF_ - #include - main() -@@ -161,9 +196,14 @@ - } - _EOF_ - $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null --[ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_ERRNO" -+if [ $? -ne 0 ]; then -+ echo no -+ CFLAGS="${CFLAGS} -DNO_ERRNO" -+else -+ echo yes -+fi - --echo Check for directory libraries -+echo -n Check for directory libraries... - cat > conftest.c << _EOF_ - int main() { return closedir(opendir(".")); } - _EOF_ -@@ -178,21 +218,30 @@ - done - if [ ${OPT} ]; then - LFLAGS2="${LFLAGS2} ${OPT}" -+ echo yes, ${OPT} - else - CFLAGS="${CFLAGS} -DNO_DIR" -+ echo no - fi - fi - - # Dynix/ptx 1.3 needed this --echo Check for readlink -+echo -n Check for readlink... - echo "int main(){ return readlink(); }" > conftest.c - $CC -o conftest conftest.c >/dev/null 2>/dev/null - if [ $? -ne 0 ]; then - $CC -o conftest conftest.c -lseq >/dev/null 2>/dev/null -- [ $? -eq 0 ] && LFLAGS2="${LFLAGS2} -lseq" -+ if [ $? -eq 0 ]; then -+ LFLAGS2="${LFLAGS2} -lseq" -+ echo yes, -lseq -+ else -+ echo no -+ fi -+else -+ echo yes - fi - --echo Check for directory include file -+echo -n Check for directory include file... - OPT="" - for inc in dirent.h sys/ndir.h ndir.h sys/dir.h - do -@@ -200,17 +249,19 @@ - $CPP conftest.c > /dev/null 2>/dev/null - [ $? -eq 0 ] && OPT="-DHAVE_`echo $inc | tr '[a-z]./' '[A-Z]__'`" && break - done -+echo "${OPT}" - CFLAGS="${CFLAGS} ${OPT}" - --echo Check for non existent include files -+echo -n Check for non existent include files... - for inc in stdlib.h stddef.h unistd.h fcntl.h string.h - do - echo "#include <$inc>" > conftest.c - $CPP conftest.c >/dev/null 2>/dev/null - [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_`echo $inc | tr '[a-z]./' '[A-Z]__'`" - done -+echo ok - --echo Check for terminal I/O include file -+echo -n Check for terminal I/O include file... - OPT="" - for inc in termios.h termio.h sgtty.h - do -@@ -219,9 +270,10 @@ - [ $? -eq 0 ] && OPT="-DHAVE_`echo $inc | tr '[a-z]./' '[A-Z]__'`" && break - done - CFLAGS="${CFLAGS} ${OPT}" -+echo $OPT - - # needed for AIX (and others ?) when mmap is used --echo Check for valloc -+echo -n Check for valloc... - cat > conftest.c << _EOF_ - main() - { -@@ -231,7 +283,13 @@ - } - _EOF_ - $CC ${CFLAGS} conftest.c > /dev/null 2>/dev/null --[ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_VALLOC" -+if [ $? -ne 0 ]; then -+ echo no -+ CFLAGS="${CFLAGS} -DNO_VALLOC" -+else -+ echo yes -+fi -+ - - echo Check for 64bit fseek - for func in fseeko fseek64 diff --git a/zip-2.31-install.patch b/zip-2.31-install.patch deleted file mode 100644 index 7a1f69f..0000000 --- a/zip-2.31-install.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- zip-2.31/unix/Makefile.install 2005-02-28 08:33:50.000000000 +0100 -+++ zip-2.31/unix/Makefile 2005-11-10 12:58:33.221425848 +0100 -@@ -129,7 +129,7 @@ - $(INSTALL_PROGRAM) $(ZIPS) $(BINDIR) - -cd $(BINDIR); $(CHMOD) $(BINFLAGS) $(ZIPS) - -$(INSTALL_D) $(MANDIR) -- $(INSTALL) man/zip.1 $(MANDIR)/zip.$(manext) -+ $(INSTALL_PROGRAM) man/zip.1 $(MANDIR)/zip.$(manext) - $(CHMOD) $(MANFLAGS) $(MANDIR)/zip.$(manext) - - uninstall: diff --git a/zip-2.31-near-4GB.patch b/zip-2.31-near-4GB.patch deleted file mode 100644 index 210b183..0000000 --- a/zip-2.31-near-4GB.patch +++ /dev/null @@ -1,293 +0,0 @@ ---- zip-2.31/unix/zipup.h.4GB 2005-01-29 07:47:58.000000000 +0100 -+++ zip-2.31/unix/zipup.h 2005-11-10 13:18:02.990593904 +0100 -@@ -6,13 +6,19 @@ - If, for some reason, both of these files are missing, the Info-ZIP license - also may be found at: ftp://ftp.info-zip.org/pub/infozip/license.html - */ -+#include -+#include - #ifndef O_RDONLY - # define O_RDONLY 0 - #endif - #ifndef O_BINARY - # define O_BINARY 0 - #endif --#define fhow (O_RDONLY|O_BINARY) -+#ifdef _LARGEFILE64_SOURCE -+#define fhow (O_RDONLY | O_LARGEFILE) -+#else -+#define fhow O_RDONLY -+#endif - #define fbad (-1) - typedef int ftype; - #define zopen(n,p) open(n,p) ---- zip-2.31/unix/unix.c.4GB 2005-02-11 03:35:02.000000000 +0100 -+++ zip-2.31/unix/unix.c 2005-11-10 13:24:19.573344624 +0100 -@@ -113,7 +113,11 @@ - char *e; /* pointer to name from readd() */ - int m; /* matched flag */ - char *p; /* path for recursion */ -+#ifdef _LARGEFILE64_SOURCE -+ struct stat64 s; /* result of stat() */ -+#else - struct stat s; /* result of stat() */ -+#endif - struct zlist far *z; /* steps through zfiles list */ - - if (strcmp(n, "-") == 0) /* if compressing stdin */ -@@ -202,6 +206,15 @@ - } /* (s.st_mode & S_IFDIR) */ - else - zipwarn("ignoring special file: ", n); -+ -+ /* Zip uses negative error codes (IIRC, to -3). Make sure file size -+ doesn't collide with error values. 2^32 - 8193 should be plenty until -+ info-zip supports zip64. */ -+ if (s.st_size > MAX_ZIP_SIZE) { -+ zipwarn("file too large: ", a); -+ return ZE_MISS; -+ } -+ - return ZE_OK; - } - -@@ -321,7 +334,12 @@ - If f is "-", use standard input as the file. If f is a device, return - a file size of -1 */ - { -- struct stat s; /* results of stat() */ -+#ifdef _LARGEFILE64_SOURCE -+ struct stat64 s; /* results of stat() */ -+#else -+ struct stat s; -+#endif -+ - /* converted to pointer from using FNMAX - 11/8/04 EG */ - char *name; - int len = strlen(f); -@@ -343,7 +361,11 @@ - name[len - 1] = '\0'; - /* not all systems allow stat'ing a file with / appended */ - if (strcmp(f, "-") == 0) { -+#ifdef _LARGEFILE64_SOURCE -+ if (fstat64(fileno(stdin), &s) != 0) { -+#else - if (fstat(fileno(stdin), &s) != 0) { -+#endif - free(name); - error("fstat(stdin)"); - } -@@ -422,7 +444,11 @@ - /* store full data in local header but just modification time stamp info - in central header */ - { -+#ifdef _LARGEFILE64_SOURCE -+ struct stat64 s; -+#else - struct stat s; -+#endif - char *name; - int len = strlen(z->name); - ---- zip-2.31/unix/configure.4GB 2004-12-05 09:51:18.000000000 +0100 -+++ zip-2.31/unix/configure 2005-11-10 13:12:47.010630160 +0100 -@@ -12,7 +12,7 @@ - trap "rm -f conftest* core a.out; exit 1" 1 2 3 15 - - CC=${1-cc} --CFLAGS=${2-"-O2 -I. -DUNIX"} -+CFLAGS=${2-"-O2 -I. -DUNIX -g -D_LARGEFILE64_SOURCE"} - LFLAGS1="" - LN="ln -s" - ---- zip-2.31/fileio.c.4GB 2005-11-10 12:59:43.000000000 +0100 -+++ zip-2.31/fileio.c 2005-11-10 13:07:13.190378552 +0100 -@@ -599,7 +599,11 @@ - this will be done by setfileattr() later. - */ - { -+#ifdef _LARGEFILE64_SOURCE -+ struct stat64 t; /* results of stat64() */ -+#else - struct stat t; /* results of stat() */ -+#endif - #if defined(CMS_MVS) - /* cmsmvs.h defines FOPW_TEMP as memory(hiperspace). Since memory is - * lost at end of run, always do copy instead of rename. -@@ -698,8 +702,11 @@ - - return _dos_files(&buf, f, 0xff) < 0 ? 0x20 : buf.atr; - #else -+#ifdef _LARGEFILE64_SOURCE -+ struct stat64 s; -+#else - struct stat s; -- -+#endif - return SSTAT(f, &s) == 0 ? (int) s.st_mode : 0; - #endif - } -@@ -920,3 +927,108 @@ - } - - #endif /* NO_RENAME */ -+ -+/* -+ Wrapper functions for fopen/fseek/ftell for >2GB files. -+ -+ So, what we do here is add support for 4GB seeks. More appropriately, -+ 2^32 - 8193 bytes. This is tailored to the way zip uses fseek; it never -+ seeks backwards more than 8192 bytes. -+ */ -+#ifdef _LARGEFILE64_SOURCE -+FILE * -+lfopen(const char *path, const char *mode) -+{ -+ int fd; -+ FILE *f; -+ int flags; -+ int x; -+ char prev; -+ -+ if (!path || !mode | !strlen(mode)) -+ return NULL; -+ -+ for (x = 0; x < strlen(mode); x++) { -+ switch (mode[x]) { -+ case 'r': -+ flags = O_RDONLY | O_LARGEFILE; -+ break; -+ case 'w': -+ flags = O_WRONLY | O_LARGEFILE | O_CREAT | O_TRUNC; -+ break; -+ case 'a': -+ flags = O_RDWR | O_LARGEFILE; -+ break; -+ case 'b': /* b has no effect */ -+ continue; -+ case '+': -+ if (prev == 'r') { -+ flags = O_RDWR | O_LARGEFILE; -+ } else if (prev == 'w') { -+ flags = O_RDWR | O_LARGEFILE | O_CREAT | -+ O_TRUNC; -+ } else if (prev == 'a') { -+ flags = O_RDWR | O_LARGEFILE | O_CREAT; -+ } else -+ return NULL; -+ break; -+ } -+ prev = mode[x]; -+ } -+ -+ fd = open(path, flags, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH); -+ if (fd == -1) -+ return NULL; -+ -+ f = fdopen(fd, mode); -+ return f; -+} -+ -+int -+lfseek(FILE *f, ulg pos, int whence) -+{ -+ struct stat64 sb; -+ ulg o, delta; -+ int ret; -+ -+ /* Hurts performance */ -+ fflush(f); -+ -+ if (pos <= MAX_ZIP_SIZE) { -+ return (lseek64(fileno(f), pos, whence) == (off64_t)-1); -+ } -+ -+ delta = ~((off64_t)pos - 1); -+ if (whence == SEEK_CUR) { -+ o = lseek64(fileno(f), 0, SEEK_CUR); -+ if (o < delta) -+ return -1; -+ -+ o -= delta; -+ return (lseek64(fileno(f), o, SEEK_SET) == (off64_t)-1); -+ } -+ -+ if (whence == SEEK_END) { -+ fstat64(fileno(f), &sb); -+ -+ if ((ulg)sb.st_size < delta) -+ return -1; -+ -+ o = (off64_t)((sb.st_size) - delta); -+ return (lseek64(fileno(f), o, SEEK_SET) == (off64_t)-1); -+ } -+ -+ return -1; -+} -+ -+ -+ulg -+lftell(FILE *f) -+{ -+ /* Hurts performance */ -+ fflush(f); -+ return (ulg)lseek64(fileno(f), 0, SEEK_CUR); -+} -+ -+#endif /* _LARGEFILE64_SOURCE */ -+ ---- zip-2.31/zip.h.4GB 2005-11-10 12:59:43.000000000 +0100 -+++ zip-2.31/zip.h 2005-11-10 13:18:57.653283912 +0100 -@@ -236,6 +236,7 @@ - #define DOSTIME_MINIMUM ((ulg)0x00210000L) - #define DOSTIME_2038_01_18 ((ulg)0x74320000L) - -+#define MAX_ZIP_SIZE 0xffffdffe /* Max archive / archive member size */ - - /* Public globals */ - extern uch upper[256]; /* Country dependent case map table */ -@@ -411,6 +412,11 @@ - int putcentral OF((struct zlist far *, FILE *)); - int putend OF((int, ulg, ulg, extent, char *, FILE *)); - int zipcopy OF((struct zlist far *, FILE *, FILE *)); -+#ifdef _LARGEFILE64_SOURCE -+int lfseek OF((FILE *, ulg, int)); -+ulg lftell OF((FILE *)); -+FILE *lfopen OF((const char *, const char *)); -+#endif /* LF64 */ - - /* in fileio.c */ - #ifndef UTIL ---- zip-2.31/tailor.h.4GB 2005-03-04 08:45:26.000000000 +0100 -+++ zip-2.31/tailor.h 2005-11-10 13:11:18.909023640 +0100 -@@ -368,12 +368,27 @@ - # define DYN_ALLOC - #endif - -+#ifdef _LARGEFILE64_SOURCE -+#define fopen lfopen -+#define fseek lfseek -+#define ftell lftell -+#endif /* LF64 */ -+ - #ifndef SSTAT --# define SSTAT stat -+# ifdef _LARGEFILE64_SOURCE -+# define SSTAT stat64 -+# else -+# define SSTAT stat -+# endif /* LF64 */ - #endif - #ifdef S_IFLNK --# define LSTAT lstat --# define LSSTAT(n, s) (linkput ? lstat((n), (s)) : SSTAT((n), (s))) -+# ifdef _LARGEFILE64_SOURCE -+# define LSTAT lstat64 -+# define LSSTAT(n, s) (linkput ? lstat64((n), (s)) : SSTAT((n), (s))) -+# else -+# define LSTAT lstat64 -+# define LSSTAT(n, s) (linkput ? lstat64((n), (s)) : SSTAT((n), (s))) -+# endif /* LF64 */ - #else - # define LSTAT SSTAT - # define LSSTAT SSTAT diff --git a/zip-2.31-umask_mode.patch b/zip-2.31-umask_mode.patch deleted file mode 100644 index ca78af6..0000000 --- a/zip-2.31-umask_mode.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up zip-2.31/fileio.c.pom zip-2.31/fileio.c ---- zip-2.31/fileio.c.pom 2007-11-05 14:02:41.000000000 +0100 -+++ zip-2.31/fileio.c 2007-11-05 14:03:09.000000000 +0100 -@@ -976,7 +976,7 @@ lfopen(const char *path, const char *mod - prev = mode[x]; - } - -- fd = open(path, flags, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH); -+ fd = open(path, flags, S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH); - if (fd == -1) - return NULL; - diff --git a/zip-3.0-currdir.patch b/zip-3.0-currdir.patch new file mode 100644 index 0000000..40da32e --- /dev/null +++ b/zip-3.0-currdir.patch @@ -0,0 +1,12 @@ +diff -up zip30/util.c.currdir zip30/util.c +--- zip30/util.c.currdir 2009-11-16 12:42:17.783961701 +0100 ++++ zip30/util.c 2009-11-16 12:42:58.185960707 +0100 +@@ -493,6 +493,8 @@ int cs; /* force case-se + /* Compare the sh pattern p with the string s and return true if they match, + false if they don't or if there is a syntax error in the pattern. */ + { ++ while (s[0] == '.' && s[1] == '/') ++ s += 2; /* strip redundant leading "./" sections */ + return recmatch(p, s, cs) == 1; + } + diff --git a/zip-3.0-exec-shield.patch b/zip-3.0-exec-shield.patch new file mode 100644 index 0000000..05c1a6c --- /dev/null +++ b/zip-3.0-exec-shield.patch @@ -0,0 +1,20 @@ +diff -up zip30/crc_i386.S.exec_shield zip30/crc_i386.S +--- zip30/crc_i386.S.exec_shield 2009-11-13 18:37:45.000000000 +0100 ++++ zip30/crc_i386.S 2009-11-13 18:39:54.435390166 +0100 +@@ -302,3 +302,6 @@ _crc32: /* ulg c + #endif /* i386 || _i386 || _I386 || __i386 */ + + #endif /* !USE_ZLIB && !CRC_TABLE_ONLY */ ++ ++.section .note.GNU-stack, "", @progbits ++.previous +diff -up zip30/match.S.exec_shield zip30/match.S +--- zip30/match.S.exec_shield 2005-01-28 10:40:14.000000000 +0100 ++++ zip30/match.S 2009-11-13 18:39:48.570389058 +0100 +@@ -405,3 +405,6 @@ L__return: + #endif /* i386 || _I386 || _i386 || __i386 */ + + #endif /* !USE_ZLIB */ ++ ++.section .note.GNU-stack, "", @progbits ++.previous diff --git a/zip-2.31-time.patch b/zip-3.0-time.patch similarity index 98% rename from zip-2.31-time.patch rename to zip-3.0-time.patch index 3f272fa..f72fd16 100644 --- a/zip-2.31-time.patch +++ b/zip-3.0-time.patch @@ -1,7 +1,7 @@ --- zip-2.31/unix/Makefile.time 2007-02-07 09:36:30.000000000 +0100 +++ zip-2.31/unix/Makefile 2007-02-07 09:38:42.000000000 +0100 @@ -24,7 +24,7 @@ - EXE = + E = # probably can change this to 'install' if you have it -INSTALL_PROGRAM = cp diff --git a/zip.spec b/zip.spec index c5b921c..0688793 100644 --- a/zip.spec +++ b/zip.spec @@ -1,22 +1,18 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip -Version: 2.31 -Release: 8%{?dist} +Version: 3.0 +Release: 1%{?dist} License: BSD Group: Applications/Archiving -Source: http://ftp.info-zip.org/pub/infozip/src/zip231.tar.gz -Source1: ftp://ftp.freesoftware.com/pub/infozip/src/zcrypt29.tar.gz -URL: http://www.info-zip.org/pub/infozip/Zip.html -Patch0: zip23.patch -Patch1: exec-shield.patch -Patch2: zip23-umask.patch -Patch5: zip-2.3-currdir.patch -Patch6: zip-2.31-install.patch -Patch7: zip-2.31-near-4GB.patch -Patch8: zip-2.31-configure.patch -Patch9: zip-2.31-time.patch -Patch10: zip-2.3-sf.patch -Patch11: zip-2.31-umask_mode.patch +Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz +URL: http://www.info-zip.org/Zip.html +# This patch will probably be merged to zip 3.1 +# http://www.info-zip.org/board/board.pl?m-1249408491/ +Patch1: zip-3.0-exec-shield.patch +# Not upstreamed. +Patch2: zip-3.0-currdir.patch +# Not upstreamed. +Patch3: zip-3.0-time.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %description @@ -29,20 +25,13 @@ Install the zip package if you need to compress files using the zip program. %prep -%setup -q -a 1 -%patch0 -p1 -b .zip -%patch1 -p1 -b .zip -%patch2 -p1 -b .umask -%patch5 -p1 -b .currdir -%patch6 -p1 -b .install -%patch7 -p1 -b .4gb -%patch8 -p1 -b .lhh -%patch9 -p1 -b .time -%patch10 -p1 -b .out -%patch11 -p1 -b .um +%setup -q -n zip30 +%patch1 -p1 -b .exec-shield +%patch2 -p1 -b .currdir +%patch3 -p1 -b .time %build -make -f unix/Makefile prefix=%{_prefix} "CFLAGS=$RPM_OPT_FLAGS -I. -DUNIX -D_LARGEFILE64_SOURCE" generic_gcc %{?_smp_mflags} +make -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" generic_gcc %{?_smp_mflags} %install rm -rf $RPM_BUILD_ROOT @@ -52,12 +41,6 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ MANDIR=$RPM_BUILD_ROOT%{_mandir}/man1 install -pushd $RPM_BUILD_ROOT -for n in zipnote zipsplit zip zipcloak ; do - chmod 755 .%{_bindir}/$n -done -popd - %clean rm -rf $RPM_BUILD_ROOT @@ -70,8 +53,25 @@ rm -rf $RPM_BUILD_ROOT %{_bindir}/zip %{_bindir}/zipcloak %{_mandir}/man1/zip.1* +%{_mandir}/man1/zipcloak.1* +%{_mandir}/man1/zipnote.1* +%{_mandir}/man1/zipsplit.1* %changelog +* Fri Nov 13 2009 Karel Klic - 3.0-1 +- New upstream version +- Removed zip23.patch, because ZMEM is not used anyway +- Removed zip-2.31-install.patch, problem solved in upstream +- Removed zip23-umask.patch, upstream uses mkstemp which solves the problem +- Removed zip-2.31-near-4GB.patch, because upstream version + handles large files well +- Removed zip-2.31-configure.patch, configure is better in the current version +- Removed zip-2.3-sf.patch, the error message doesn't exist in upstream anymore +- Removed zip-2.31-umask_mode.patch, which fixes also removed near-4GB patch +- Updated zip-2.31-time.patch for zip 3.0 +- Updated exec-shield.patch for zip 3.0 +- Updated zip-2.3-currdir.patch for zip 3.0 + * Mon Jul 27 2009 Fedora Release Engineering - 2.31-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild diff --git a/zip23-umask.patch b/zip23-umask.patch deleted file mode 100644 index 7ab6005..0000000 --- a/zip23-umask.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -ur zip-2.3/zip.c zip-2.3-lhh/zip.c ---- zip-2.3/zip.c 1999-11-16 15:08:10.000000000 -0500 -+++ zip-2.3-lhh/zip.c 2003-12-22 09:32:56.000000000 -0500 -@@ -849,6 +849,7 @@ - /* Add, update, freshen, or delete zip entries in a zip file. See the - command help in help() above. */ - { -+ mode_t old_umask; /* umask prior to temp file creation */ - int a; /* attributes of zip file */ - ulg c; /* start of central directory */ - int d; /* true if just adding to a zip file */ -@@ -1830,9 +1831,11 @@ - if ((tempzip = tempname(zipfile)) == NULL) { - ZIPERR(ZE_MEM, "allocating temp filename"); - } -+ old_umask = umask(0066); - if ((tempzf = y = fopen(tempzip, FOPW_TMP)) == NULL) { - ZIPERR(ZE_TEMP, tempzip); - } -+ umask(old_umask); - } - - #if (!defined(VMS) && !defined(CMS_MVS)) diff --git a/zip23.patch b/zip23.patch deleted file mode 100644 index 690630c..0000000 --- a/zip23.patch +++ /dev/null @@ -1,93 +0,0 @@ ---- zip-2.3/zip.h.zip Mon Nov 8 14:36:51 1999 -+++ zip-2.3/zip.h Tue Jan 11 11:46:06 2000 -@@ -60,6 +60,7 @@ - - /* Set up portability */ - #include "tailor.h" -+#include - - #ifdef USE_ZLIB - # include "zlib.h" -@@ -433,12 +434,6 @@ - int setfileattr OF((char *, int)); - char *tempname OF((char *)); - int fcopy OF((FILE *, FILE *, ulg)); -- --#ifdef ZMEM -- char *memset OF((char *, int, unsigned int)); -- char *memcpy OF((char *, char *, unsigned int)); -- int memcmp OF((char *, char *, unsigned int)); --#endif /* ZMEM */ - - /* in system dependent fileio code (.c) */ - #ifndef UTIL ---- zip-2.3/fileio.c.zip Sun Nov 7 05:29:03 1999 -+++ zip-2.3/fileio.c Tue Jan 11 11:46:43 2000 -@@ -918,67 +918,3 @@ - } - - #endif /* NO_RENAME */ -- -- --#ifdef ZMEM -- --/************************/ --/* Function memset() */ --/************************/ -- --/* -- * memset - for systems without it -- * bill davidsen - March 1990 -- */ -- --char * --memset(buf, init, len) --register char *buf; /* buffer loc */ --register int init; /* initializer */ --register unsigned int len; /* length of the buffer */ --{ -- char *start; -- -- start = buf; -- while (len--) *(buf++) = init; -- return(start); --} -- -- --/************************/ --/* Function memcpy() */ --/************************/ -- --char * --memcpy(dst,src,len) /* v2.0f */ --register char *dst, *src; --register unsigned int len; --{ -- char *start; -- -- start = dst; -- while (len--) -- *dst++ = *src++; -- return(start); --} -- -- --/************************/ --/* Function memcmp() */ --/************************/ -- --int --memcmp(b1,b2,len) /* jpd@usl.edu -- 11/16/90 */ --register char *b1, *b2; --register unsigned int len; --{ -- -- if (len) do { /* examine each byte (if any) */ -- if (*b1++ != *b2++) -- return (*((uch *)b1-1) - *((uch *)b2-1)); /* exit when miscompare */ -- } while (--len); -- -- return(0); /* no miscompares, yield 0 result */ --} -- --#endif /* ZMEM */ From 9161d85090b6459732b7e256ed26b1fd29447c57 Mon Sep 17 00:00:00 2001 From: Bill Nottingham Date: Wed, 25 Nov 2009 22:39:20 +0000 Subject: [PATCH 04/56] Fix typo that causes a failure to update the common directory. (releng #2781) --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 5b0cdb1..b9dcd13 100644 --- a/Makefile +++ b/Makefile @@ -1,10 +1,10 @@ # Makefile for source rpm: zip -# $Id: Makefile,v 1.1 2004/09/09 15:14:41 cvsdist Exp $ +# $Id: Makefile,v 1.2 2007/10/15 19:38:55 notting Exp $ NAME := zip SPECFILE = $(firstword $(wildcard *.spec)) define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done +for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done endef MAKEFILE_COMMON := $(shell $(find-makefile-common)) From ab0085207ab83217268b382448078ea1e0110845 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Kl=C3=AD=C4=8D?= Date: Mon, 24 May 2010 08:27:54 +0000 Subject: [PATCH 05/56] spec file cleanup --- zip.spec | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/zip.spec b/zip.spec index 0688793..9cb3fb8 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 1%{?dist} +Release: 2%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -13,7 +13,6 @@ Patch1: zip-3.0-exec-shield.patch Patch2: zip-3.0-currdir.patch # Not upstreamed. Patch3: zip-3.0-time.patch -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %description The zip program is a compression and file packaging utility. Zip is @@ -35,15 +34,12 @@ make -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" %install rm -rf $RPM_BUILD_ROOT -mkdir -p $RPM_BUILD_ROOT%{_bindir} +mkdir -p $RPM_BUILD_ROOT%{_bindir} mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ MANDIR=$RPM_BUILD_ROOT%{_mandir}/man1 install -%clean -rm -rf $RPM_BUILD_ROOT - %files %defattr(-,root,root,-) %doc README CHANGES TODO WHATSNEW WHERE LICENSE README.CR @@ -58,12 +54,17 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/zipsplit.1* %changelog +* Mon May 24 2010 Karel Klic - 3.0-2 +- Removed BuildRoot tag +- Removed %%clean section +- Removed trailing whitespaces in the spec file + * Fri Nov 13 2009 Karel Klic - 3.0-1 - New upstream version - Removed zip23.patch, because ZMEM is not used anyway - Removed zip-2.31-install.patch, problem solved in upstream - Removed zip23-umask.patch, upstream uses mkstemp which solves the problem -- Removed zip-2.31-near-4GB.patch, because upstream version +- Removed zip-2.31-near-4GB.patch, because upstream version handles large files well - Removed zip-2.31-configure.patch, configure is better in the current version - Removed zip-2.3-sf.patch, the error message doesn't exist in upstream anymore @@ -93,7 +94,7 @@ rm -rf $RPM_BUILD_ROOT - incorporate the next peckage review comment * Tue Feb 6 2007 Ivana Varekova - 2.31-2 -- incorporate the package review +- incorporate the package review * Wed Jul 12 2006 Jesse Keating - 2.31-1.2.2 - rebuild From 923d973a6ef9ced99a9bd8fb3b43197deda5d695 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 29 Jul 2010 16:31:30 +0000 Subject: [PATCH 06/56] dist-git conversion --- .cvsignore => .gitignore | 0 Makefile | 21 --------------------- 2 files changed, 21 deletions(-) rename .cvsignore => .gitignore (100%) delete mode 100644 Makefile diff --git a/.cvsignore b/.gitignore similarity index 100% rename from .cvsignore rename to .gitignore diff --git a/Makefile b/Makefile deleted file mode 100644 index b9dcd13..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: zip -# $Id: Makefile,v 1.2 2007/10/15 19:38:55 notting Exp $ -NAME := zip -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attempt a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) From a9e17d31e3b7167e7ab343bfa42d46656e807569 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Tue, 8 Feb 2011 03:04:40 -0600 Subject: [PATCH 07/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 9cb3fb8..82c09af 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 2%{?dist} +Release: 3%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -54,6 +54,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Tue Feb 08 2011 Fedora Release Engineering - 3.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + * Mon May 24 2010 Karel Klic - 3.0-2 - Removed BuildRoot tag - Removed %%clean section From 37537766b738b88f166e9b0fef9650fbcabd3a08 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sat, 14 Jan 2012 03:38:02 -0600 Subject: [PATCH 08/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 82c09af..723af36 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 3%{?dist} +Release: 4%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -54,6 +54,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Sat Jan 14 2012 Fedora Release Engineering - 3.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + * Tue Feb 08 2011 Fedora Release Engineering - 3.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild From 959d535b84866c5c2177e0c8247649b151b32206 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sun, 22 Jul 2012 03:22:45 -0500 Subject: [PATCH 09/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 723af36..11031ec 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 4%{?dist} +Release: 5%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -54,6 +54,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Sun Jul 22 2012 Fedora Release Engineering - 3.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + * Sat Jan 14 2012 Fedora Release Engineering - 3.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild From 1570398e0107018ea909b7fe126b34a376cb75f3 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Thu, 14 Feb 2013 22:21:43 -0600 Subject: [PATCH 10/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 11031ec..01106cd 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 5%{?dist} +Release: 6%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -54,6 +54,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Fri Feb 15 2013 Fedora Release Engineering - 3.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + * Sun Jul 22 2012 Fedora Release Engineering - 3.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild From 8de2a94c4b97ccbb6da16ad0709db8431d22527b Mon Sep 17 00:00:00 2001 From: Michal Luscon Date: Mon, 25 Feb 2013 14:45:10 +0100 Subject: [PATCH 11/56] - enable bzip-2 support - fix bogus date in changelog section --- zip.spec | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/zip.spec b/zip.spec index 01106cd..879c83c 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 6%{?dist} +Release: 7%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -13,6 +13,7 @@ Patch1: zip-3.0-exec-shield.patch Patch2: zip-3.0-currdir.patch # Not upstreamed. Patch3: zip-3.0-time.patch +BuildRequires: bzip2-devel %description The zip program is a compression and file packaging utility. Zip is @@ -54,6 +55,10 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Sat Feb 23 2013 Ville Skyttä - 3.0-7 +- Enable bzip2 support. +- Fix bogus date in %%changelog. + * Fri Feb 15 2013 Fedora Release Engineering - 3.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild @@ -175,7 +180,7 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ * Sun Jun 24 2001 Elliot Lee - Bump release + rebuild. -* Thu Aug 25 2000 Bill Nottingham +* Fri Aug 25 2000 Bill Nottingham - add encryption code (#16878) * Thu Jul 13 2000 Prospector From 5434225b6c7680fcd723d4e35598fdca64477f5a Mon Sep 17 00:00:00 2001 From: Michal Luscon Date: Thu, 9 May 2013 19:22:23 +0200 Subject: [PATCH 12/56] - missing -q option in zipsplit and zipnote man pages --- man.patch | 40 ++++++++++++++++++++++++++++++++++++++++ zip.spec | 7 ++++++- 2 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 man.patch diff --git a/man.patch b/man.patch new file mode 100644 index 0000000..9ba44c8 --- /dev/null +++ b/man.patch @@ -0,0 +1,40 @@ +--- ./man/zipsplit.1 2008-05-08 10:17:48.000000000 +0200 ++++ ./man/zipsplit.1 2013-04-26 18:33:12.492008280 +0200 +@@ -12,6 +12,7 @@ + .RB [ \-r\ room ] + .RB [ \-b\ path ] + .RB [ \-h ] ++.RB [ \-q ] + .RB [ \-v ] + .RB [ \-L ] + zipfile +@@ -47,6 +48,9 @@ + .BI \-h + Show a short help. + .TP ++.BI \-q ++Suppress some informational messages. ++.TP + .BI \-v + Show version information. + .TP +--- ./man/zipnote.1 2013-04-26 18:40:32.145018756 +0200 ++++ ./man/zipnote.1 2013-04-26 18:40:18.943018442 +0200 +@@ -7,6 +7,7 @@ + .RB [ \-w ] + .RB [ \-b\ path ] + .RB [ \-h ] ++.RB [ \-q ] + .RB [ \-v ] + .RB [ \-L ] + zipfile +@@ -27,6 +28,9 @@ + .BI \-h + Show a short help. + .TP ++.BI \-q ++Suppress some informational messages. ++.TP + .BI \-v + Show version information. + .TP diff --git a/zip.spec b/zip.spec index 879c83c..a8080b1 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 7%{?dist} +Release: 8%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -13,6 +13,7 @@ Patch1: zip-3.0-exec-shield.patch Patch2: zip-3.0-currdir.patch # Not upstreamed. Patch3: zip-3.0-time.patch +Patch4: man.patch BuildRequires: bzip2-devel %description @@ -29,6 +30,7 @@ program. %patch1 -p1 -b .exec-shield %patch2 -p1 -b .currdir %patch3 -p1 -b .time +%patch4 -p1 -b .man %build make -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" generic_gcc %{?_smp_mflags} @@ -55,6 +57,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Fri Apr 26 2013 Michal Luscon - 3.0-8 +- Fix missing -q option in zipsplit and zipnote man pages + * Sat Feb 23 2013 Ville Skyttä - 3.0-7 - Enable bzip2 support. - Fix bogus date in %%changelog. From fd731d80bb5e94c02a89cda8b4d3d8f7ce4ee140 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sun, 4 Aug 2013 04:54:43 -0500 Subject: [PATCH 13/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index a8080b1..18c9569 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 8%{?dist} +Release: 9%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -57,6 +57,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Sun Aug 04 2013 Fedora Release Engineering - 3.0-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + * Fri Apr 26 2013 Michal Luscon - 3.0-8 - Fix missing -q option in zipsplit and zipnote man pages From 249fe1aa0769e2fa1be9355fb83aaf0deb063117 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Tue, 1 Apr 2014 07:42:36 +0100 Subject: [PATCH 14/56] Add patch to fix format-security FTBFS (RHBZ 1037412) --- zip-3.0-format-security.patch | 20 ++++++++++++++++++++ zip.spec | 10 +++++++--- 2 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 zip-3.0-format-security.patch diff --git a/zip-3.0-format-security.patch b/zip-3.0-format-security.patch new file mode 100644 index 0000000..54ce2e6 --- /dev/null +++ b/zip-3.0-format-security.patch @@ -0,0 +1,20 @@ +--- a/zip.c ++++ a/zip.c +@@ -1028,7 +1028,7 @@ local void help_extended() + + for (i = 0; i < sizeof(text)/sizeof(char *); i++) + { +- printf(text[i]); ++ printf("%s", text[i]); + putchar('\n'); + } + #ifdef DOS +@@ -1225,7 +1225,7 @@ local void version_info() + CR_MAJORVER, CR_MINORVER, CR_BETA_VER, CR_VERSION_DATE); + for (i = 0; i < sizeof(cryptnote)/sizeof(char *); i++) + { +- printf(cryptnote[i]); ++ printf("%s", cryptnote[i]); + putchar('\n'); + } + ++i; /* crypt support means there IS at least one compilation option */ diff --git a/zip.spec b/zip.spec index 18c9569..7c9e00d 100644 --- a/zip.spec +++ b/zip.spec @@ -1,11 +1,12 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 9%{?dist} +Release: 10%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html + # This patch will probably be merged to zip 3.1 # http://www.info-zip.org/board/board.pl?m-1249408491/ Patch1: zip-3.0-exec-shield.patch @@ -14,6 +15,7 @@ Patch2: zip-3.0-currdir.patch # Not upstreamed. Patch3: zip-3.0-time.patch Patch4: man.patch +Patch5: zip-3.0-format-security.patch BuildRequires: bzip2-devel %description @@ -31,12 +33,12 @@ program. %patch2 -p1 -b .currdir %patch3 -p1 -b .time %patch4 -p1 -b .man +%patch5 -p1 -b .format-security %build make -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" generic_gcc %{?_smp_mflags} %install -rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{_bindir} mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 @@ -44,7 +46,6 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ MANDIR=$RPM_BUILD_ROOT%{_mandir}/man1 install %files -%defattr(-,root,root,-) %doc README CHANGES TODO WHATSNEW WHERE LICENSE README.CR %doc proginfo/algorith.txt %{_bindir}/zipnote @@ -57,6 +58,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Tue Apr 1 2014 Peter Robinson 3.0-10 +- Add patch to fix format-security FTBFS (RHBZ 1037412) + * Sun Aug 04 2013 Fedora Release Engineering - 3.0-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild From bc37ebb96a82bfa71c9bfbb937a0d4294206bc53 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sat, 7 Jun 2014 13:11:57 -0500 Subject: [PATCH 15/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 7c9e00d..5e62dff 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 10%{?dist} +Release: 11%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -58,6 +58,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Sat Jun 07 2014 Fedora Release Engineering - 3.0-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + * Tue Apr 1 2014 Peter Robinson 3.0-10 - Add patch to fix format-security FTBFS (RHBZ 1037412) From 734c4f21a9fc5ad63fc60891dc1266fcd2bde2c6 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Mon, 18 Aug 2014 11:41:44 +0000 Subject: [PATCH 16/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 5e62dff..fdd2ecc 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 11%{?dist} +Release: 12%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -58,6 +58,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Mon Aug 18 2014 Fedora Release Engineering - 3.0-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + * Sat Jun 07 2014 Fedora Release Engineering - 3.0-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild From 99fef8bcfc3cc9639e8257adc5c7f426b7c3f037 Mon Sep 17 00:00:00 2001 From: Petr Stodulka Date: Wed, 28 Jan 2015 16:33:43 +0100 Subject: [PATCH 17/56] fix chrashing zipnote when edit .zip files (#1179420) --- zip.spec | 7 ++++++- zipnote.patch | 13 +++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 zipnote.patch diff --git a/zip.spec b/zip.spec index fdd2ecc..fd91384 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 12%{?dist} +Release: 13%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -16,6 +16,7 @@ Patch2: zip-3.0-currdir.patch Patch3: zip-3.0-time.patch Patch4: man.patch Patch5: zip-3.0-format-security.patch +Patch6: zipnote.patch BuildRequires: bzip2-devel %description @@ -34,6 +35,7 @@ program. %patch3 -p1 -b .time %patch4 -p1 -b .man %patch5 -p1 -b .format-security +%patch6 -p1 -b .zipnote %build make -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" generic_gcc %{?_smp_mflags} @@ -58,6 +60,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Wed Jan 28 2015 Petr Stodulka - 3.0-13 +- fix crashing zipnote when editing .zip files (#1179420) + * Mon Aug 18 2014 Fedora Release Engineering - 3.0-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild diff --git a/zipnote.patch b/zipnote.patch new file mode 100644 index 0000000..4177a7d --- /dev/null +++ b/zipnote.patch @@ -0,0 +1,13 @@ +diff --git a/zipnote.c b/zipnote.c +index 5e02cb6..996f012 100644 +--- a/zipnote.c ++++ b/zipnote.c +@@ -661,7 +661,7 @@ char **argv; /* command line tokens */ + if ((r = zipcopy(z)) != ZE_OK) + ziperr(r, "was copying an entry"); + } +- fclose(x); ++ fclose(in_file); + + /* Write central directory and end of central directory with new comments */ + if ((c = zftello(y)) == (zoff_t)-1) /* get start of central */ From fa5dc1efa05f5cb94bb4b4c44134061bfcb0da49 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Fri, 19 Jun 2015 04:48:02 +0000 Subject: [PATCH 18/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index fd91384..78c026c 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 13%{?dist} +Release: 14%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -60,6 +60,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Fri Jun 19 2015 Fedora Release Engineering - 3.0-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + * Wed Jan 28 2015 Petr Stodulka - 3.0-13 - fix crashing zipnote when editing .zip files (#1179420) From 68dbbfe9a762f88ead2b1df6b8d0e882b1cd3b93 Mon Sep 17 00:00:00 2001 From: Petr Stodulka Date: Fri, 26 Jun 2015 10:12:07 +0200 Subject: [PATCH 19/56] Added requirement for unzip (#1235956) --- zip.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/zip.spec b/zip.spec index 78c026c..8b07d48 100644 --- a/zip.spec +++ b/zip.spec @@ -18,6 +18,7 @@ Patch4: man.patch Patch5: zip-3.0-format-security.patch Patch6: zipnote.patch BuildRequires: bzip2-devel +Requires: unzip %description The zip program is a compression and file packaging utility. Zip is @@ -60,6 +61,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Fri Jun 26 2015 Petr Stodulka - 3.0-15 +- Added requirement for unzip (#1235956) + * Fri Jun 19 2015 Fedora Release Engineering - 3.0-14 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild From 7ceacb5c7550c92e91f56a92bb058e36e00afbc2 Mon Sep 17 00:00:00 2001 From: Petr Stodulka Date: Fri, 26 Jun 2015 10:13:04 +0200 Subject: [PATCH 20/56] bump release --- zip.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 8b07d48..8bcc65f 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 14%{?dist} +Release: 15%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz From 5566eb5c53bb6fbbf2739dba497efe92b27d028e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 5 Feb 2016 04:07:03 +0000 Subject: [PATCH 21/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 8bcc65f..0d1921e 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 15%{?dist} +Release: 16%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -61,6 +61,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Fri Feb 05 2016 Fedora Release Engineering - 3.0-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + * Fri Jun 26 2015 Petr Stodulka - 3.0-15 - Added requirement for unzip (#1235956) From ecb0fe07ada23ea4387a2bbff3b88301ce44d708 Mon Sep 17 00:00:00 2001 From: Stephen Gallagher Date: Wed, 1 Feb 2017 21:04:56 -0500 Subject: [PATCH 22/56] Add missing %license macro --- zip.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/zip.spec b/zip.spec index 0d1921e..cd73af7 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 16%{?dist} +Release: 17%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -49,7 +49,8 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ MANDIR=$RPM_BUILD_ROOT%{_mandir}/man1 install %files -%doc README CHANGES TODO WHATSNEW WHERE LICENSE README.CR +%license LICENSE +%doc README CHANGES TODO WHATSNEW WHERE README.CR %doc proginfo/algorith.txt %{_bindir}/zipnote %{_bindir}/zipsplit @@ -61,6 +62,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Wed Feb 01 2017 Stephen Gallagher - 3.0-17 +- Add missing %%license macro + * Fri Feb 05 2016 Fedora Release Engineering - 3.0-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild From 11ae231a18e54790f3f41ead4efaa56dfd9fb2f1 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 11 Feb 2017 18:24:59 +0000 Subject: [PATCH 23/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index cd73af7..4fceb85 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 17%{?dist} +Release: 18%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -62,6 +62,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Sat Feb 11 2017 Fedora Release Engineering - 3.0-18 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + * Wed Feb 01 2017 Stephen Gallagher - 3.0-17 - Add missing %%license macro From 328bd152353c0e2596092c98dfcbf74a538adcc4 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 27 Jul 2017 22:43:33 +0000 Subject: [PATCH 24/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 4fceb85..9704f95 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 18%{?dist} +Release: 19%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -62,6 +62,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Thu Jul 27 2017 Fedora Release Engineering - 3.0-19 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + * Sat Feb 11 2017 Fedora Release Engineering - 3.0-18 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild From ed9621449947b0c7c3630f34bb79994b4d9bc7cf Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 3 Aug 2017 11:11:40 +0000 Subject: [PATCH 25/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 9704f95..e6dcea4 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 19%{?dist} +Release: 20%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -62,6 +62,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Thu Aug 03 2017 Fedora Release Engineering - 3.0-20 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + * Thu Jul 27 2017 Fedora Release Engineering - 3.0-19 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild From aa3f4dccc7ff8daac8e79ee1bd7f5b75cbde2c49 Mon Sep 17 00:00:00 2001 From: esakaiev Date: Thu, 8 Feb 2018 18:08:44 +0200 Subject: [PATCH 26/56] Porting tests for zip package to dist-git --- tests/tests.yml | 65 ++++++++ tests/tests/__init__.py | 154 ++++++++++++++++++ tests/tests/test_4GBsegfault.py | 89 ++++++++++ tests/tests/test_big_file_in_archive.py | 128 +++++++++++++++ tests/tests/test_long_path_in_archive.py | 140 ++++++++++++++++ tests/tests/test_many_files_in_archive.py | 140 ++++++++++++++++ tests/tests/test_umask.py | 106 ++++++++++++ tests/tests/test_umask_when_creating.py | 105 ++++++++++++ ...est_zipnote_fails_to_update_the_archive.py | 105 ++++++++++++ 9 files changed, 1032 insertions(+) create mode 100644 tests/tests.yml create mode 100755 tests/tests/__init__.py create mode 100755 tests/tests/test_4GBsegfault.py create mode 100755 tests/tests/test_big_file_in_archive.py create mode 100755 tests/tests/test_long_path_in_archive.py create mode 100755 tests/tests/test_many_files_in_archive.py create mode 100755 tests/tests/test_umask.py create mode 100755 tests/tests/test_umask_when_creating.py create mode 100755 tests/tests/test_zipnote_fails_to_update_the_archive.py diff --git a/tests/tests.yml b/tests/tests.yml new file mode 100644 index 0000000..201349f --- /dev/null +++ b/tests/tests.yml @@ -0,0 +1,65 @@ +--- +- hosts: localhost + tags: + - classic + + vars: + - artifacts: "{{ lookup('env', 'TEST_ARTIFACTS')|default('./artifacts', true) }}" + + tasks: + - name: Define remote_artifacts if it is not already defined + set_fact: + remote_artifacts: /home/${USER}/artifacts + when: remote_artifacts is not defined + + - name: Copy tests to target + synchronize: + src: "{{ playbook_dir }}/" + dest: /home/${USER}/bin/ + ssh_args: "-o UserKnownHostsFile=/dev/null" + + - name: Make artifacts directory + file: path={{ remote_artifacts }} state=directory recurse=yes + + - block: + - name: Execute tests + shell: | + logfile={{ remote_artifacts }}/test.{{ item }}.log + exec 2>>$logfile 1>>$logfile + cd tests + #make script executable + chmod 0775 {{ item }} + #execute the test + python2 {{ item }}.py + if [ $? -eq 0 ]; then + echo "PASS {{ item }}" >> {{ remote_artifacts }}/test.log + else + echo "FAIL {{ item }}" >> {{ remote_artifacts }}/test.log + fi + with_items: + - "test_4GBsegfault" + - "test_big_file_in_archive" + - "test_long_path_in_archive" + - "test_many_files_in_archive" + - "test_umask" + - "test_umask_when_creating" + - "test_zipnote_fails_to_update_the_archive" + + + - name: Pull out the logs + synchronize: + dest: "{{ artifacts }}/" + src: "{{ remote_artifacts }}/" + mode: pull + ssh_args: "-o UserKnownHostsFile=/dev/null" + when: artifacts|default("") != "" + + # Can't go in block. See + # https://github.com/ansible/ansible/issues/20736 + - name: Check the results + shell: grep "^FAIL" {{ remote_artifacts }}/test.log + register: test_fails + failed_when: test_fails.stdout or test_fails.stderr + + + diff --git a/tests/tests/__init__.py b/tests/tests/__init__.py new file mode 100755 index 0000000..471b567 --- /dev/null +++ b/tests/tests/__init__.py @@ -0,0 +1,154 @@ +''' + author = esakaiev@redhat.com +''' +import logging +import sys +import subprocess +import os +import shutil + + +def decorated_message(message): + """ + This decorator is used for providing logging header for different sections in the scripts + :param message: (`STRING`) + :return: decorated_function + """ + + def decorated_function(func): + """ + + :param func: + :return: + """ + + def wrapper(self): + """ + + :param self: + :return: + """ + print " " + print ("::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::") + print (":: {0}".format(message)) + print ("::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::") + + func(self) + + return wrapper + + return decorated_function + + +class BaseZipTests(object): + """ + This is a Base class for zip tests + """ + + def __init__(self): + self._set_logger() + self._purpose = "" + self.print_test_purpose() + + def _set_logger(self): + """ + This method is used for instantiating of logger + :return: + - None + """ + self.logger = logging.getLogger() + self.logger.setLevel(logging.DEBUG) + + self.handler = logging.StreamHandler(sys.stdout) + self.handler.setLevel(logging.DEBUG) + formatter = logging.Formatter('[ %(asctime)s ] :: [ %(message)s ]') + self.handler.setFormatter(formatter) + self.logger.addHandler(self.handler) + + @decorated_message("PURPOSE") + def print_test_purpose(self): + """ + + :return: + """ + print self._purpose + + def run_cmd(self, cmd, exp_err_code, message, cwd=None): + """ + This method is used for executing cmd, check output error code and + add result in the logger + :param cmd: ('STRING') - some command to execute + :param exp_err_code: ('INTEGER') - expected error code + :param message: ('STRING') - command description + :param cwd: ('STRING') - path to directory, where need to execute cmd + :return: + - errcode ('INTEGER') + """ + try: + errcode = subprocess.call(cmd, shell=True, cwd=cwd, stdout=sys.stderr.fileno()) + if errcode != exp_err_code: + self.logger.debug("FAIL :: {0}".format(message)) + else: + self.logger.debug("PASS ] :: [ {0}".format(message)) + return errcode + except subprocess.CalledProcessError as exp: + self.logger.error("Could not execute command {0}, e: {1}".format(cmd, exp)) + + def check_package(self): + """ + This method is used for checking, if zip package is installed + :return: None + """ + assert self.run_cmd("dnf list installed zip", 0, "Dnf package should be installed") == 0 + + def check_output(self, cmd, exp_output, message, cwd=None): + """ + This method is used for executing cmd and compare output result with expected message + :param cmd: (`STRING`) - some command to execute + :param exp_err_code: (`INTEGER`) - expected error code + :param message: (`STRING`) - command description + :param cwd: (`STRING`) - path to directory, where need to execute cmd + :return: + - output message (`STRING`) + """ + try: + output = self.execute_cmd(cmd, cwd) + if output != exp_output: + self.logger.debug("FAIL ]:: [ {}".format(message)) + else: + self.logger.debug("PASS ] :: [ {}".format(message)) + return output + except subprocess.CalledProcessError as exp: + self.logger.error(r'FAIL ] :: [ Could not execute command: "{0}",\ + ex: {1}'.format(cmd, exp)) + + def execute_cmd(self, cmd, cwd=None): + """ + This method is used for executing cmd and return output message + :param cmd: (`STRING`) - some command to execute + :param cwd: (`STRING`) - path to directory, where need to execute cmd + :return: + - output message (`STRING`) + """ + try: + output = subprocess.check_output(cmd, shell=True, cwd=cwd) + return output + except subprocess.CalledProcessError as exp: + self.logger.error(r'FAIL ] :: [ Could not execute command: "{0}",\ + ex: {1}'.format(cmd, exp)) + + def remove_file(self, file_path, is_directory=False): + """ + This method is used for removing files or directories after execution of test cases + :param file_path:(`STRING`) - path to file/folder + :param is_directory: (`BOOLEAN`) - True for directories + :return: None + """ + try: + if is_directory: + shutil.rmtree(file_path) + else: + os.remove(file_path) + self.logger.debug("File {0} has been successfully removed".format(file_path)) + except OSError, exp: + self.logger.debug("File {0} doesn't exists, e: {1}".format(file_path, exp)) diff --git a/tests/tests/test_4GBsegfault.py b/tests/tests/test_4GBsegfault.py new file mode 100755 index 0000000..f11b99d --- /dev/null +++ b/tests/tests/test_4GBsegfault.py @@ -0,0 +1,89 @@ +# Copyright (c) 2018 Red Hat, Inc. All rights reserved. This copyrighted material +# is made available to anyone wishing to use, modify, copy, or +# redistribute it subject to the terms and conditions of the GNU General +# Public License v.2. +# +# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# Author: Eduard Sakaiev + +import sys +import uuid + +sys.path.append("..") + +from tests import BaseZipTests +from tests import decorated_message + +PURPOSE = '''zip mustn't segfault when packing files larger than 4 GB. + +Note: this test can't run on RHEL 2.1 since the utilities used here +in the test don't work there as expected. This test can't run on +RHEL 5 either, but in this case, the reason is reworked zip which +can't work with files larger than 4 GB at all.''' + + +class Test4GBsegfault(BaseZipTests): + """ + This class is used for providing functionality + for Test4GBsegfault test case + """ + + def __init__(self): + """ + + """ + self._purpose = PURPOSE + super(Test4GBsegfault, self).__init__() + + self._tmpdir = "/tmp/{}".format(uuid.uuid4()) + + @decorated_message("SETUP") + def prepare_setup(self): + """ + + :return: + """ + self.check_package() + + self.run_cmd("mkdir {}".format(self._tmpdir), 0, + "Creating tmp directory {}".format(self._tmpdir)) + + @decorated_message("TEST") + def start_test(self): + """ + + :return: + """ + self.run_cmd("dd if=/dev/zero of=testfile bs=1M count=4097", 0, + "Creating of 4Gb file", self._tmpdir + "/") + self.run_cmd("zip testfile.zip testfile", 0, + "Archiving file with zip", self._tmpdir + "/") + + @decorated_message("CLEANUP") + def cleanup(self): + """ + + :return: + """ + self.run_cmd("rm -r {}".format(self._tmpdir), 0, + "Removing tmp directory") + + +if __name__ == "__main__": + test_4gb = Test4GBsegfault() + try: + test_4gb.prepare_setup() + test_4gb.start_test() + except AssertionError, exp: + test_4gb.logger.debug("FAIL ] :: [ Assertion occurred {0}".format(exp)) + except Exception, exp: + test_4gb.logger.debug("FAIL ] :: [ Exception occurred {0}".format(exp)) + finally: + test_4gb.cleanup() diff --git a/tests/tests/test_big_file_in_archive.py b/tests/tests/test_big_file_in_archive.py new file mode 100755 index 0000000..c758674 --- /dev/null +++ b/tests/tests/test_big_file_in_archive.py @@ -0,0 +1,128 @@ +# python2 test_big_file_in_archive.py +# Author: Josef Zila +# Location: CoreOS/zip/Functionality/stress-tests/big-file-in-archive/runtest.sh +# Description: zip - tests handling large files (2GB,3MB,4GB) + +# Copyright (c) 2008 Red Hat, Inc. All rights reserved. This copyrighted material +# is made available to anyone wishing to use, modify, copy, or +# redistribute it subject to the terms and conditions of the GNU General +# Public License v.2. +# +# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +# Include rhts and rhtslib environment +# rpm -q --quiet rhtslib || rpm -Uvh http://nest.test.redhat.com/mnt/qa/scratch/pmuller/rhtslib/rhtslib.rpm + +import sys +import uuid +import platform + +sys.path.append("..") + +from tests import BaseZipTests +from tests import decorated_message + +PURPOSE = ''' +Test Name: Big file in archive +Author: Josef Zila +Location: CoreOS/zip/Functionality/stress-tests/big-file-in-archive/PURPOSE + +Short Description: +Tests handling large files (2GB,3GB,4GB) + +Long Description: +Test creates three files (2GB, 3GB and 4GB large) and attempts to archive each of them using zip. Then original files are deleted +and archives are unpacked, to check size of unpacked files. Current version of zip on all archs and distros in time of +writing(2.31-1) passes test. Note: 4GB file is too large for zip to handle, so it is not supposed to be successfully archived +or unpacked, test just checks for correct return codes. + + +how to run it: +python2 test_big_file_in_archive.py + +TEST UPDATED (esakaiev) +------------------------ +After rebase to zip-3.0-1 there is no 4GB limit. Patching the test accordingly. +''' + + +class TestBigFileInArchive(BaseZipTests): + """ + This class is used for providing functionality + for TestBigFileInArchive test case + """ + def __init__(self): + """ + + """ + self._purpose = PURPOSE + super(TestBigFileInArchive, self).__init__() + + self._files = ['/tmp/tmp.{}'.format(uuid.uuid4()) for x in xrange(3)] + self._files_sizes = [2048, 3056, 4096] + self._os_distribution = platform.linux_distribution() + + @decorated_message("Preparing Setup") + def prepare_setup(self): + """ + + :return: + """ + self.check_package() + for i, file_name in enumerate(self._files): + size = self._files_sizes[i] + assert self.run_cmd("dd if=/dev/zero of={0} bs=1M count={1}".format(file_name, size), 0, + "Creating {0} GB file".format(size / 1000), cwd="/tmp/") == 0 + + @decorated_message("Starting Test") + def start_test(self): + """ + + :return: + """ + for i, file_name in enumerate(self._files): + error_code = 0 + + self.remove_file(file_name + ".zip") # #remove archive temp files, we just need unused temp names + size = self._files_sizes[i] + + self.run_cmd("zip {0} {1}".format(file_name + ".zip", file_name), error_code, + "Archiving {} Gb file".format(size / 1000), cwd="/tmp/") + + self.remove_file(file_name) # Removing original files + + self.run_cmd("unzip {0} -d /".format(file_name + ".zip"), error_code, + "Unpacking {} Gb file".format(size / 1000), cwd="/tmp/") + + # Checking new 2GB file size + self.check_output("stat -c %s {0}".format(self._files[0]), "2147483648\n", "Checking new 2GB file size") + + @decorated_message("Cleaning up") + def cleanup(self): + """ + + :return: + """ + for file_name in self._files: + self.remove_file(file_name) + self.remove_file(file_name + ".zip") + + +if __name__ == "__main__": + test = TestBigFileInArchive() + try: + test.prepare_setup() + test.start_test() + except AssertionError, exp: + test.logger.debug("FAIL ] :: [ Assertion occurred {0}".format(exp)) + except Exception, exp: + test.logger.debug("FAIL ] :: [ Exception occurred {0}".format(exp)) + finally: + test.cleanup() diff --git a/tests/tests/test_long_path_in_archive.py b/tests/tests/test_long_path_in_archive.py new file mode 100755 index 0000000..4f4d8ce --- /dev/null +++ b/tests/tests/test_long_path_in_archive.py @@ -0,0 +1,140 @@ +# Author: Josef Zila +# Location: CoreOS/zip/Functionality/stress-tests/long-path-in-archive/runtest.sh +# Description: zip - tests handling very long paths within archive (15*256 characters long path) + +# Copyright (c) 2008 Red Hat, Inc. All rights reserved. This copyrighted material +# is made available to anyone wishing to use, modify, copy, or +# redistribute it subject to the terms and conditions of the GNU General +# Public License v.2. +# +# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +import sys +import uuid +import os +from shutil import copyfile + +sys.path.append("..") + +from tests import BaseZipTests +from tests import decorated_message + +PURPOSE = ''' +Test Name: +Author: Josef Zila +Location: CoreOS/zip/Functionality/stress-tests/long-path-in-archive/PURPOSE + +Short Description: +Tests handling very long paths within archive (15*256 characters long path) + +Long Description: +This test creates file with very long path of 15 directories, each 255 characters. This whole directory structure is then zipped and unzipped +to determine if zip program handles paths this long correctly. Current version of zip on all archs and distros in time of writing(2.31-1) passes test. + + +how to run it: +choose arch and distro + + +TEST UPDATED (esakaiev) +''' + + +class TestLongPathInArchive(BaseZipTests): + """ + This class is used for providing functionality + for TestLongPathInArchive test case + """ + def __init__(self): + self._purpose = PURPOSE + super(TestLongPathInArchive, self).__init__() + + self._tmpdir = "/tmp/{}".format(uuid.uuid4()) + self._file_under_test = "/proc/version" + + self._long_name = "".join(["aaaaa" for i in xrange(51)]) + self._long_path = "/".join([self._long_name for x in xrange(15)]) + self._test_file_path = self._tmpdir + "/" + self._long_path + "/" + "testfile" + self._package_ver = "" + self._package_release = "" + + @decorated_message("Prepare setup") + def prepare_setup(self): + """ + + :return: + """ + self.check_package() + + self.run_cmd("mkdir {}".format(self._tmpdir), 0, "Creating tmp directory {}".format(self._tmpdir)) + self._package_ver = self.execute_cmd("rpm -q zip --queryformat %{version}") + self._package_release = self.execute_cmd("rpm -q zip --queryformat %{version}") + + self.logger.debug("Running zip.{0}.{1} package".format(self._package_ver, self._package_release)) + # creating folders structure: + try: + + os.makedirs(self._tmpdir + "/" + self._long_path) + self.logger.debug("PASS ] :: [ Test directory with long path has been successfully created") + except OSError, exp: + self.logger.debug("FAIL ] :: [ Could not create directories by path, e: {}".format(exp)) + raise + + copyfile(self._file_under_test, self._test_file_path) + + @decorated_message("Starting Test cases") + def start_test(self): + """ + + :return: + """ + + self.run_cmd("zip -r test {0} -q".format(self._long_name), 0, + "Zipping test file", + cwd=self._tmpdir) + + self.remove_file(self._tmpdir + "/" + self._long_name, True) + self.run_cmd("unzip -qq test.zip", 0, + "Unzipping test file", + cwd=self._tmpdir) + + content_init = None + with open(self._file_under_test) as fp_init: + content_init = fp_init.read().replace('\n', '') + + content_fut = None + with open(self._test_file_path) as fp_fut: + content_fut = fp_fut.read().replace('\n', '') + + if content_init == content_fut: + self.logger.debug("PASS ] :: [ {}".format("Content of the initial file and file under test was matched")) + else: + self.logger.debug("FAIL ] :: [ {}".format("Content of the initial file and file under test wasn't matched")) + + @decorated_message("Cleaning up") + def cleanup(self): + """ + + :return: + """ + self.remove_file(self._tmpdir, True) + + +if __name__ == "__main__": + test = TestLongPathInArchive() + try: + test.prepare_setup() + test.start_test() + except AssertionError, exp: + test.logger.debug("FAIL ] :: [ Assertion occurred {0}".format(exp)) + except Exception, exp: + test.logger.debug("FAIL ] :: [ Exception occurred {0}".format(exp)) + finally: + test.cleanup() diff --git a/tests/tests/test_many_files_in_archive.py b/tests/tests/test_many_files_in_archive.py new file mode 100755 index 0000000..9382675 --- /dev/null +++ b/tests/tests/test_many_files_in_archive.py @@ -0,0 +1,140 @@ +# Author: Josef Zila +# Location: CoreOS/zip/Functionality/stress-tests/many-files-in-archive/runtest.sh +# Description: zip - Tests behaviour with many files in archive (1048578 files) + +# Copyright (c) 2008 Red Hat, Inc. All rights reserved. This copyrighted material +# is made available to anyone wishing to use, modify, copy, or +# redistribute it subject to the terms and conditions of the GNU General +# Public License v.2. +# +# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +import sys +import uuid + +sys.path.append("..") + +from tests import BaseZipTests +from tests import decorated_message + +PURPOSE = ''' +Test Name: +Author: Josef Zila +Location: CoreOS/zip/Functionality/stress-tests/many-files-in-archive/PURPOSE + +Short Description: +Tests behaviour with many files in archive (1048577 files) + +Long Description: +This test creates 1048576 empty files and one non-empty file. Then zips and unzips directory containing all those files and tests content of +non-empty file and count of unzipped files. This test is very time-consuming. Current version of zip on all archs and distros in time of writing +(2.31-1) passes test. + + +how to run it: +choose arch and distro + + +TEST UPDATED (esakaiev) +''' + + +class TestManyFilesInArchive(BaseZipTests): + """ + This class is used for providing functionality + for TestManyFilesInArchive test case + """ + + def __init__(self): + self._purpose = PURPOSE + super(TestManyFilesInArchive, self).__init__() + + self._tmpdir = "/tmp/{}".format(uuid.uuid4()) + self._files_number = 1048576 + self._package_ver = "" + self._package_release = "" + + @decorated_message("Prepare setup") + def prepare_setup(self): + """ + + :return: + """ + self.check_package() + + self.run_cmd("mkdir {}".format(self._tmpdir), 0, + "Creating tmp directory {}".format(self._tmpdir)) + self._package_ver = self.execute_cmd("rpm -q zip --queryformat %{version}") + self._package_release = self.execute_cmd("rpm -q zip --queryformat %{version}") + + self.logger.debug("Running zip.{0}.{1} package".format(self._package_ver, self._package_release)) + self.logger.debug("Creating {0} files".format(self._files_number)) + + [open("{0}/{1}".format(self._tmpdir, i), "w").close() for i in xrange(self._files_number)] + self.logger.debug("Creating test file") + with open("{0}/test.txt".format(self._tmpdir), "w") as fp: + fp.write("12345") + + @decorated_message("Starting Test cases") + def start_test(self): + """ + + :return: + """ + + self.run_cmd("zip -r test {0} -q".format(self._tmpdir.split('/')[-1]), 0, + "Zipping test files", + cwd='/tmp') + + self.remove_file(self._tmpdir, True) + self.run_cmd("unzip -qq test.zip", 0, + "Unzipping test files", + cwd='/tmp') + + test_file_content = None + with open("{0}/test.txt".format(self._tmpdir)) as fp: + test_file_content = fp.read().replace('/n', '') + + if test_file_content == "12345": + self.logger.debug("PASS ] :: [ {}".format("Unpacked content matches original")) + else: + self.logger.debug("FAIL ] :: [ {}".format("Unpacked content does not match original!")) + + files_count = self.execute_cmd("ls {0} | wc -l".format(self._tmpdir)).replace("\n", "") + + if files_count == str(self._files_number + 1): + self.logger.debug( + "PASS ] :: [ {}".format("All {0} files present after unpacking".format(self._files_number + 1))) + else: + self.logger.debug(r"FAIL ] :: [ File count changed after unpacking! \ + Before zipping there was {0} files. \ + After unzip there is {1} files.".format(self._files_number + 1, files_count)) + + @decorated_message("Cleaning up") + def cleanup(self): + """ + + :return: + """ + self.remove_file(self._tmpdir, True) + self.remove_file("/tmp/test.zip") + + +if __name__ == "__main__": + test = TestManyFilesInArchive() + try: + test.prepare_setup() + test.start_test() + except AssertionError, exp: + test.logger.debug("FAIL ] :: [ Assertion occurred {0}".format(exp)) + except Exception, exp: + test.logger.debug("FAIL ] :: [ Exception occurred {0}".format(exp)) + finally: + test.cleanup() diff --git a/tests/tests/test_umask.py b/tests/tests/test_umask.py new file mode 100755 index 0000000..f4df00e --- /dev/null +++ b/tests/tests/test_umask.py @@ -0,0 +1,106 @@ +# Copyright (c) 2006 Red Hat, Inc. All rights reserved. This copyrighted material +# is made available to anyone wishing to use, modify, copy, or +# redistribute it subject to the terms and conditions of the GNU General +# Public License v.2. +# +# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# Author: Radek Biba + +import sys +import uuid + +UMASK = "Running umask" + +sys.path.append("..") + +from tests import BaseZipTests +from tests import decorated_message + +PURPOSE = ''' +zip is supposed to honor umask settings when creating archives. +This test case just checks if it really does + +TEST UPDATED (esakaiev) +''' + + +class TestUmask(BaseZipTests): + """ + This class is used for providing functionality + for TestUmask test case + """ + def __init__(self): + self._purpose = PURPOSE + super(TestUmask, self).__init__() + + self._tmpdir = "/tmp/{}".format(uuid.uuid4()) + self._mask_list = ["0", "2", "20", "22", "200", "202", "220", "222", "6", "60"] + self._package_ver = "" + self._package_release = "" + + @decorated_message("Prepare setup") + def prepare_setup(self): + """ + + :return: + """ + self.check_package() + + self.run_cmd("mkdir {}".format(self._tmpdir), 0, "Creating tmp directory {}".format(self._tmpdir)) + self._package_ver = self.execute_cmd("rpm -q zip --queryformat %{version}") + self._package_release = self.execute_cmd("rpm -q zip --queryformat %{version}") + + self.logger.debug("Running zip.{0}.{1} package".format(self._package_ver, self._package_release)) + + # Trying to verify that zip honors umask. Trying with various combinations + # of 'w's and 'r's for User, Group, and Others. + @decorated_message("Starting Test cases") + def start_test(self): + """ + + :return: + """ + for mask in self._mask_list: + self.logger.debug("Running umask and zipping file {0}".format(mask)) + self.execute_cmd("umask {0}; touch {0}; zip -q {0}.zip {0}".format(mask), cwd=self._tmpdir) + + stat_test_zip = self.execute_cmd("stat -c %a {0}.zip".format(mask), cwd=self._tmpdir).replace("\n", "") + stat_test = self.execute_cmd("stat -c %a {0}".format(mask), cwd=self._tmpdir).replace("\n", "") + + print stat_test_zip, stat_test + if stat_test_zip == stat_test: + self.logger.debug( + "PASS ] :: [ permissions for {0}.zip match to {0}, {1} == {2}".format(mask, stat_test_zip, + stat_test)) + else: + self.logger.debug( + "FAIL ] :: [ permissions for {0}.zip doesn't match to {0}, {1} != {2}".format(mask, stat_test_zip, + stat_test)) + + @decorated_message("Cleaning up") + def cleanup(self): + """ + + :return: + """ + self.remove_file(self._tmpdir, True) + + +if __name__ == "__main__": + test = TestUmask() + try: + test.prepare_setup() + test.start_test() + except AssertionError, exp: + test.logger.debug("FAIL ] :: [ Assertion occurred {0}".format(exp)) + except Exception, exp: + test.logger.debug("FAIL ] :: [ Exception occurred {0}".format(exp)) + finally: + test.cleanup() diff --git a/tests/tests/test_umask_when_creating.py b/tests/tests/test_umask_when_creating.py new file mode 100755 index 0000000..a59a573 --- /dev/null +++ b/tests/tests/test_umask_when_creating.py @@ -0,0 +1,105 @@ +# Author: Josef Zila + +# Description: Zip did not honor umask setting when creating archives. + +# Copyright (c) 2008 Red Hat, Inc. All rights reserved. This copyrighted material +# is made available to anyone wishing to use, modify, copy, or +# redistribute it subject to the terms and conditions of the GNU General +# Public License v.2. +# +# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +import sys +import uuid + +UMASK = "Running umask" + +sys.path.append("..") + +from tests import BaseZipTests +from tests import decorated_message + +PURPOSE = ''' +Test Name: umask-when-creating +Author: Josef Zila + +Short Description: +zip does not honor umaks setting when creating archive + +Long Description: + +zip appears to have a built-in umask of 0022 regardless of the global umask. +With umask set to 0000, zip-2.3-27 creates zip files with permissions of +0644 instead of 0666. Previous versions created files with correct permissions. + + +TEST UPDATED (esakaiev) +''' + + +class TestUmaskWhenCreating(BaseZipTests): + """ + This class is used for providing functionality + for TestUmaskWhenCreating test case + """ + def __init__(self): + self._purpose = PURPOSE + super(TestUmaskWhenCreating, self).__init__() + + self._tmpdir = "/tmp/{}".format(uuid.uuid4()) + self._mask_list = ["777", "000", "027"] + self._expected_results = ["----------", "-rw-rw-rw-", "-rw-r-----"] + self._package_ver = "" + self._package_release = "" + + @decorated_message("Prepare setup") + def prepare_setup(self): + self.check_package() + + self.run_cmd("mkdir {}".format(self._tmpdir), 0, "Creating tmp directory {}".format(self._tmpdir)) + self._package_ver = self.execute_cmd("rpm -q zip --queryformat %{version}") + self._package_release = self.execute_cmd("rpm -q zip --queryformat %{version}") + + self.logger.debug("Running zip.{0}.{1} package".format(self._package_ver, self._package_release)) + + @decorated_message("Starting Test cases") + def start_test(self): + for i, mask in enumerate(self._mask_list): + self.logger.debug("Running umask and zipping file {0}".format(mask)) + self.execute_cmd("umask -S {0} >> /dev/null; zip test /etc/services >> /dev/null".format(mask), + cwd=self._tmpdir) + + result = self.execute_cmd("ls -l test.zip | cut -b 1-10", cwd=self._tmpdir).replace("\n", "") + + if result == self._expected_results[i]: + self.logger.debug( + "PASS ] :: [ file permissions match to {0}".format(self._expected_results[i])) + else: + self.logger.debug( + "FAIL ] :: [ file permissions don't match to {0}".format(self._expected_results[i])) + + self.remove_file(self._tmpdir + "/" + "test.zip") + + @decorated_message("Cleaning up") + def cleanup(self): + self.remove_file(self._tmpdir, True) + + +if __name__ == "__main__": + test = TestUmaskWhenCreating() + try: + test.prepare_setup() + test.start_test() + except AssertionError, exp: + test.logger.debug("FAIL ] :: [ Assertion occurred {0}".format(exp)) + except Exception, exp: + test.logger.debug("FAIL ] :: [ Exception occurred {0}".format(exp)) + finally: + test.cleanup() diff --git a/tests/tests/test_zipnote_fails_to_update_the_archive.py b/tests/tests/test_zipnote_fails_to_update_the_archive.py new file mode 100755 index 0000000..747cf40 --- /dev/null +++ b/tests/tests/test_zipnote_fails_to_update_the_archive.py @@ -0,0 +1,105 @@ +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Description: zipnote fails to update the archive +# Author: Karel Volny +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2015 Red Hat, Inc. +# +# This copyrighted material is made available to anyone wishing +# to use, modify, copy, or redistribute it subject to the terms +# and conditions of the GNU General Public License version 2. +# +# 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., 51 Franklin Street, Fifth Floor, +# Boston, MA 02110-1301, USA. +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +import sys +import uuid + +sys.path.append("..") + +from tests import BaseZipTests +from tests import decorated_message + +PURPOSE = ''' +PURPOSE of zipnote-fails-to-update-the-archive +Description: zipnote fails to update the archive +Author: Karel Volny + + +TEST UPDATED (esakaiev) +''' + + +class TestZipnoteFailsToUpdateTheArchive(BaseZipTests): + """ + This class is used for providing functionality + for TestZipnoteFailsToUpdateTheArchive test case + """ + def __init__(self): + self._purpose = PURPOSE + super(TestZipnoteFailsToUpdateTheArchive, self).__init__() + + self._tmpdir = '/tmp/tmp.{}'.format(uuid.uuid4()) + + @decorated_message("Preparing setup") + def prepare_setup(self): + """ + + :return: + """ + self.check_package() + self.run_cmd("mkdir {}".format(self._tmpdir), 0, "Creating tmp directory {}".format(self._tmpdir)) + + @decorated_message("Starting Test") + def start_test(self): + """ + + :return: + """ + self.run_cmd("touch file", 0, "Creating the Demo file", cwd=self._tmpdir) + self.run_cmd("zip archive.zip file", 0, "Creating the archive including the file", cwd=self._tmpdir) + self.run_cmd("zipnote archive.zip > info.txt", 0, "Reading the archive comments", cwd=self._tmpdir) + ## bad - e.g. zip-3.0-1.el6.i686: + # zipnote error: Interrupted (aborting) + # Segmentation fault + ## good: no output + self.run_cmd("zipnote -w archive.zip < info.txt > output_file.txt 2>&1", 0, "Writing comments to the archive", + cwd=self._tmpdir) + + if 'error' in open(self._tmpdir + '/output_file.txt').read(): + self.logger.debug("FAIL ] :: [ File shouldn't contain an error pattern") + else: + self.logger.debug("PASS ] :: [ File doesn't contain an error pattern") + + @decorated_message("Cleaning up") + def cleanup(self): + """ + + :return: + """ + self.run_cmd("rm -r {}".format(self._tmpdir), 0, + "Removing tmp directory") + + +if __name__ == "__main__": + test = TestZipnoteFailsToUpdateTheArchive() + try: + test.prepare_setup() + test.start_test() + except AssertionError, exp: + test.logger.debug("FAIL ] :: [ Assertion occurred {0}".format(exp)) + except Exception, exp: + test.logger.debug("FAIL ] :: [ Exception occurred {0}".format(exp)) + finally: + test.cleanup() From 5bfd267546c8daa2b0dfa2d0d9d919bc150ec7b6 Mon Sep 17 00:00:00 2001 From: "esakaiev@redhat.com" Date: Fri, 9 Feb 2018 18:05:33 +0200 Subject: [PATCH 27/56] Fixes for zip tests --- tests/tests.yml | 32 +++++++------------------------- 1 file changed, 7 insertions(+), 25 deletions(-) diff --git a/tests/tests.yml b/tests/tests.yml index 201349f..930837a 100644 --- a/tests/tests.yml +++ b/tests/tests.yml @@ -3,28 +3,19 @@ tags: - classic - vars: - - artifacts: "{{ lookup('env', 'TEST_ARTIFACTS')|default('./artifacts', true) }}" - tasks: - name: Define remote_artifacts if it is not already defined set_fact: - remote_artifacts: /home/${USER}/artifacts - when: remote_artifacts is not defined - - - name: Copy tests to target - synchronize: - src: "{{ playbook_dir }}/" - dest: /home/${USER}/bin/ - ssh_args: "-o UserKnownHostsFile=/dev/null" + artifacts: ${HOME}/artifacts + when: artifacts is not defined - name: Make artifacts directory - file: path={{ remote_artifacts }} state=directory recurse=yes + file: path={{ artifacts }} state=directory recurse=yes - block: - name: Execute tests shell: | - logfile={{ remote_artifacts }}/test.{{ item }}.log + logfile={{ artifacts }}/test.{{ item }}.log exec 2>>$logfile 1>>$logfile cd tests #make script executable @@ -32,9 +23,9 @@ #execute the test python2 {{ item }}.py if [ $? -eq 0 ]; then - echo "PASS {{ item }}" >> {{ remote_artifacts }}/test.log + echo "PASS {{ item }}" >> {{ artifacts }}/test.log else - echo "FAIL {{ item }}" >> {{ remote_artifacts }}/test.log + echo "FAIL {{ item }}" >> {{ artifacts }}/test.log fi with_items: - "test_4GBsegfault" @@ -45,19 +36,10 @@ - "test_umask_when_creating" - "test_zipnote_fails_to_update_the_archive" - - - name: Pull out the logs - synchronize: - dest: "{{ artifacts }}/" - src: "{{ remote_artifacts }}/" - mode: pull - ssh_args: "-o UserKnownHostsFile=/dev/null" - when: artifacts|default("") != "" - # Can't go in block. See # https://github.com/ansible/ansible/issues/20736 - name: Check the results - shell: grep "^FAIL" {{ remote_artifacts }}/test.log + shell: grep "^FAIL" {{ artifacts }}/test.log register: test_fails failed_when: test_fails.stdout or test_fails.stderr From 97885930b2a9a9ee39bc22a90ee474f426a81401 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 9 Feb 2018 22:28:39 +0000 Subject: [PATCH 28/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index e6dcea4..08d3d0d 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 20%{?dist} +Release: 21%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -62,6 +62,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Fri Feb 09 2018 Fedora Release Engineering - 3.0-21 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + * Thu Aug 03 2017 Fedora Release Engineering - 3.0-20 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild From 6d2c780558bdb1a9e4250ccf5bab7f4e08aa4edf Mon Sep 17 00:00:00 2001 From: Jakub Martisko Date: Thu, 1 Mar 2018 11:12:40 +0100 Subject: [PATCH 29/56] zip.spec: add gcc to buildrequires --- zip.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/zip.spec b/zip.spec index 08d3d0d..974a0ab 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 21%{?dist} +Release: 22%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -17,7 +17,7 @@ Patch3: zip-3.0-time.patch Patch4: man.patch Patch5: zip-3.0-format-security.patch Patch6: zipnote.patch -BuildRequires: bzip2-devel +BuildRequires: bzip2-devel, gcc Requires: unzip %description @@ -62,6 +62,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Thu Mar 01 2018 Jakub Martisko - 3.0-22 +- Add gcc to buildrequires + * Fri Feb 09 2018 Fedora Release Engineering - 3.0-21 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild From 39819218ac89ba290712e9f848a31da526017df8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 14 Jul 2018 09:50:49 +0000 Subject: [PATCH 30/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 974a0ab..7a4e0d6 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 22%{?dist} +Release: 23%{?dist} License: BSD Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz @@ -62,6 +62,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Sat Jul 14 2018 Fedora Release Engineering - 3.0-23 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Thu Mar 01 2018 Jakub Martisko - 3.0-22 - Add gcc to buildrequires From 1cac73c467fa5b3485196401fff6edfb5d9b0756 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mon, 28 Jan 2019 20:18:32 +0100 Subject: [PATCH 31/56] Remove obsolete Group tag References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag --- zip.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/zip.spec b/zip.spec index 7a4e0d6..6860ba4 100644 --- a/zip.spec +++ b/zip.spec @@ -3,7 +3,6 @@ Name: zip Version: 3.0 Release: 23%{?dist} License: BSD -Group: Applications/Archiving Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html From 3aa1b995beea6ff2aafa3d5d4e0c02746683f163 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 3 Feb 2019 13:11:44 +0000 Subject: [PATCH 32/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 6860ba4..ab94ee3 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 23%{?dist} +Release: 24%{?dist} License: BSD Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -61,6 +61,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Sun Feb 03 2019 Fedora Release Engineering - 3.0-24 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Sat Jul 14 2018 Fedora Release Engineering - 3.0-23 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild From ef2e772ce724695235b335d6f9d7849b7a02a9e1 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 27 Jul 2019 05:01:16 +0000 Subject: [PATCH 33/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index ab94ee3..fd8cdde 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 24%{?dist} +Release: 25%{?dist} License: BSD Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -61,6 +61,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Sat Jul 27 2019 Fedora Release Engineering - 3.0-25 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Sun Feb 03 2019 Fedora Release Engineering - 3.0-24 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild From 537855f1094df5f98340b7b00695e4af9cc443d9 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 31 Jan 2020 05:19:59 +0000 Subject: [PATCH 34/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index fd8cdde..8380a54 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 25%{?dist} +Release: 26%{?dist} License: BSD Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -61,6 +61,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Fri Jan 31 2020 Fedora Release Engineering - 3.0-26 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Sat Jul 27 2019 Fedora Release Engineering - 3.0-25 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From 18b8781d257e4c480133dce701b6cac3614e25b3 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 29 Jul 2020 15:23:50 +0000 Subject: [PATCH 35/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 8380a54..a20f37c 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 26%{?dist} +Release: 27%{?dist} License: BSD Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -61,6 +61,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Wed Jul 29 2020 Fedora Release Engineering - 3.0-27 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Fri Jan 31 2020 Fedora Release Engineering - 3.0-26 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From dea2f3587c8155bf3dbf54180dbb02ca0f783b84 Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Sat, 9 Jan 2021 01:53:28 +0000 Subject: [PATCH 36/56] Add BuildRequires: make https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot --- zip.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/zip.spec b/zip.spec index a20f37c..3ecfd93 100644 --- a/zip.spec +++ b/zip.spec @@ -16,6 +16,7 @@ Patch3: zip-3.0-time.patch Patch4: man.patch Patch5: zip-3.0-format-security.patch Patch6: zipnote.patch +BuildRequires: make BuildRequires: bzip2-devel, gcc Requires: unzip From 26ddc6ced91340abbea4736459f46f0fcbd8ea53 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 28 Jan 2021 00:42:40 +0000 Subject: [PATCH 37/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 3ecfd93..fb0c43a 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 27%{?dist} +Release: 28%{?dist} License: BSD Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -62,6 +62,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Thu Jan 28 2021 Fedora Release Engineering - 3.0-28 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Wed Jul 29 2020 Fedora Release Engineering - 3.0-27 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From eaea924793331eabd1b2ff93186d94612e5971fa Mon Sep 17 00:00:00 2001 From: Jakub Martisko Date: Fri, 5 Mar 2021 13:27:50 +0100 Subject: [PATCH 38/56] Use build macros --- zip.spec | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/zip.spec b/zip.spec index fb0c43a..24f9d01 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 28%{?dist} +Release: 29%{?dist} License: BSD Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -39,14 +39,14 @@ program. %patch6 -p1 -b .zipnote %build -make -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" generic_gcc %{?_smp_mflags} +%{make_build} -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" generic_gcc %install mkdir -p $RPM_BUILD_ROOT%{_bindir} mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 -make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ - MANDIR=$RPM_BUILD_ROOT%{_mandir}/man1 install +%{make_install} -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ + MANDIR=$RPM_BUILD_ROOT%{_mandir}/man1 %files %license LICENSE @@ -62,6 +62,9 @@ make -f unix/Makefile prefix=$RPM_BUILD_ROOT%{_prefix} \ %{_mandir}/man1/zipsplit.1* %changelog +* Fri Mar 05 2021 Jakub Martisko - 3.0-29 +- Use build macros + * Thu Jan 28 2021 Fedora Release Engineering - 3.0-28 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From 0a4a3aefb6e76cf1b46fd62733d431842af59723 Mon Sep 17 00:00:00 2001 From: Jakub Martisko Date: Fri, 5 Mar 2021 13:48:55 +0100 Subject: [PATCH 39/56] Use the generic build target instead of generic_gcc --- zip.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/zip.spec b/zip.spec index 24f9d01..fc4d19e 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 29%{?dist} +Release: 30%{?dist} License: BSD Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -39,7 +39,7 @@ program. %patch6 -p1 -b .zipnote %build -%{make_build} -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" generic_gcc +%{make_build} -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" generic %install mkdir -p $RPM_BUILD_ROOT%{_bindir} @@ -62,6 +62,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Fri Mar 05 2021 Jakub Martisko - 3.0-30 +- Use generic build instead of generic_gcc + * Fri Mar 05 2021 Jakub Martisko - 3.0-29 - Use build macros From 58c0889b70669053afddab8475214447529f5328 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 23 Jul 2021 22:18:40 +0000 Subject: [PATCH 40/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index fc4d19e..fb9643d 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 30%{?dist} +Release: 31%{?dist} License: BSD Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -62,6 +62,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Fri Jul 23 2021 Fedora Release Engineering - 3.0-31 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Fri Mar 05 2021 Jakub Martisko - 3.0-30 - Use generic build instead of generic_gcc From aa70fe9dea69b99c60d4d1eb2ee43ff17465925c Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 22 Jan 2022 05:52:18 +0000 Subject: [PATCH 41/56] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index fb9643d..eabf56b 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 31%{?dist} +Release: 32%{?dist} License: BSD Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -62,6 +62,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Sat Jan 22 2022 Fedora Release Engineering - 3.0-32 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Fri Jul 23 2021 Fedora Release Engineering - 3.0-31 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From 359c42d3bf6881c7e715d3696a5af18662ea0bef Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 23 Jul 2022 13:56:04 +0000 Subject: [PATCH 42/56] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index eabf56b..f268133 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 32%{?dist} +Release: 33%{?dist} License: BSD Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -62,6 +62,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Sat Jul 23 2022 Fedora Release Engineering - 3.0-33 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Sat Jan 22 2022 Fedora Release Engineering - 3.0-32 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From 9006220708f96494df264df5b4f3f01fedbc888c Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Thu, 17 Nov 2022 09:54:36 +0100 Subject: [PATCH 43/56] Build with -std=gnu89 (#2143565) --- zip.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/zip.spec b/zip.spec index f268133..58f5621 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 33%{?dist} +Release: 34%{?dist} License: BSD Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -39,7 +39,7 @@ program. %patch6 -p1 -b .zipnote %build -%{make_build} -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" generic +%{make_build} -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX -std=gnu89 $RPM_OPT_FLAGS" generic %install mkdir -p $RPM_BUILD_ROOT%{_bindir} @@ -62,6 +62,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Thu Nov 17 2022 Florian Weimer - 3.0-34 +- Build with -std=gnu89 (#2143565) + * Sat Jul 23 2022 Fedora Release Engineering - 3.0-33 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From 98b40e35ca9c6183ddd875018ca70f88154e8d82 Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Fri, 18 Nov 2022 08:06:30 +0100 Subject: [PATCH 44/56] Really build with -std=gnu89 (#2143565) --- zip-gnu89-build.patch | 15 +++++++++++++++ zip.spec | 9 +++++++-- 2 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 zip-gnu89-build.patch diff --git a/zip-gnu89-build.patch b/zip-gnu89-build.patch new file mode 100644 index 0000000..65ee7a7 --- /dev/null +++ b/zip-gnu89-build.patch @@ -0,0 +1,15 @@ +zip uses C89-only features, so it needs to be built in C89 mode. + +diff --git a/unix/Makefile b/unix/Makefile +index 86cf54bf0f56cea9..244390893eab5fc6 100644 +--- a/unix/Makefile ++++ b/unix/Makefile +@@ -202,7 +202,7 @@ generic: flags + eval $(MAKE) $(MAKEF) zips `cat flags` + + generic_gcc: +- $(MAKE) $(MAKEF) generic CC=gcc CPP="gcc -E" ++ $(MAKE) $(MAKEF) generic CC="gcc -std=gnu89" CPP="gcc -E" + + # AT&T 6300 PLUS (don't know yet how to allocate 64K bytes): + att6300nodir: diff --git a/zip.spec b/zip.spec index 58f5621..e63430e 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 34%{?dist} +Release: 35%{?dist} License: BSD Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -16,6 +16,7 @@ Patch3: zip-3.0-time.patch Patch4: man.patch Patch5: zip-3.0-format-security.patch Patch6: zipnote.patch +Patch7: zip-gnu89-build.patch BuildRequires: make BuildRequires: bzip2-devel, gcc Requires: unzip @@ -37,9 +38,10 @@ program. %patch4 -p1 -b .man %patch5 -p1 -b .format-security %patch6 -p1 -b .zipnote +%patch7 -p1 -b .gnu89-build %build -%{make_build} -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX -std=gnu89 $RPM_OPT_FLAGS" generic +%{make_build} -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" generic_gcc %install mkdir -p $RPM_BUILD_ROOT%{_bindir} @@ -62,6 +64,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Fri Nov 18 2022 Florian Weimer - 3.0-35 +- Really build with -std=gnu89 (#2143565) + * Thu Nov 17 2022 Florian Weimer - 3.0-34 - Build with -std=gnu89 (#2143565) From a52777446f6da7b8085c91d8e23cd8321d5df0b1 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 21 Jan 2023 08:16:41 +0000 Subject: [PATCH 45/56] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index e63430e..74966ec 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 35%{?dist} +Release: 36%{?dist} License: BSD Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -64,6 +64,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Sat Jan 21 2023 Fedora Release Engineering - 3.0-36 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Fri Nov 18 2022 Florian Weimer - 3.0-35 - Really build with -std=gnu89 (#2143565) From f0aa624a475347ca018da6736d5152fcf60e5505 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Zaoral?= Date: Thu, 13 Apr 2023 14:47:41 +0200 Subject: [PATCH 46/56] migrate to SPDX license format --- zip.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/zip.spec b/zip.spec index 74966ec..23165e5 100644 --- a/zip.spec +++ b/zip.spec @@ -1,8 +1,8 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 36%{?dist} -License: BSD +Release: 37%{?dist} +License: Info-ZIP Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -64,6 +64,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Thu Apr 13 2023 Lukáš Zaoral - 3.0-37 +- migrate to SPDX license format + * Sat Jan 21 2023 Fedora Release Engineering - 3.0-36 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 2105f009916ce9217b6eea8f9c259bb98caa871c Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 22 Jul 2023 19:42:58 +0000 Subject: [PATCH 47/56] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 23165e5..c135645 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 37%{?dist} +Release: 38%{?dist} License: Info-ZIP Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -64,6 +64,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Sat Jul 22 2023 Fedora Release Engineering - 3.0-38 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Thu Apr 13 2023 Lukáš Zaoral - 3.0-37 - migrate to SPDX license format From a2433a485914ddea1637097e381daf41bc943870 Mon Sep 17 00:00:00 2001 From: Jakub Martisko Date: Mon, 18 Sep 2023 13:04:00 +0200 Subject: [PATCH 48/56] Fix: buffer overflow with unicode file names Resolves: rhbz#2165653 --- buffer_overflow.patch | 12 ++++++++++++ zip.spec | 8 +++++++- 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 buffer_overflow.patch diff --git a/buffer_overflow.patch b/buffer_overflow.patch new file mode 100644 index 0000000..2ee3fff --- /dev/null +++ b/buffer_overflow.patch @@ -0,0 +1,12 @@ +diff -urp zip30/fileio.c zip30/fileio.c +--- zip30/fileio.c 2008-05-29 03:13:24.000000000 +0300 ++++ zip30/fileio.c 2023-05-02 12:19:50.488314853 +0300 +@@ -3502,7 +3502,7 @@ zwchar *local_to_wide_string(local_strin + if ((wc_string = (wchar_t *)malloc((wsize + 1) * sizeof(wchar_t))) == NULL) { + ZIPERR(ZE_MEM, "local_to_wide_string"); + } +- wsize = mbstowcs(wc_string, local_string, strlen(local_string) + 1); ++ wsize = mbstowcs(wc_string, local_string, wsize + 1); + wc_string[wsize] = (wchar_t) 0; + + /* in case wchar_t is not zwchar */ diff --git a/zip.spec b/zip.spec index c135645..ad88b39 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 38%{?dist} +Release: 39%{?dist} License: Info-ZIP Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -17,6 +17,7 @@ Patch4: man.patch Patch5: zip-3.0-format-security.patch Patch6: zipnote.patch Patch7: zip-gnu89-build.patch +Patch8: buffer_overflow.patch BuildRequires: make BuildRequires: bzip2-devel, gcc Requires: unzip @@ -39,6 +40,7 @@ program. %patch5 -p1 -b .format-security %patch6 -p1 -b .zipnote %patch7 -p1 -b .gnu89-build +%patch8 -p1 %build %{make_build} -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" generic_gcc @@ -64,6 +66,10 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Mon Sep 18 2023 Jakub Martisko - 3.0-39 +- Fixc buffer overflow in unicode file names +Resolves: rhbz#2165653 + * Sat Jul 22 2023 Fedora Release Engineering - 3.0-38 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 5843ce319d15cc995771544f67e353ac1d78143b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 27 Jan 2024 11:08:19 +0000 Subject: [PATCH 49/56] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index ad88b39..f6d5e05 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 39%{?dist} +Release: 40%{?dist} License: Info-ZIP Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -66,6 +66,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Sat Jan 27 2024 Fedora Release Engineering - 3.0-40 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Mon Sep 18 2023 Jakub Martisko - 3.0-39 - Fixc buffer overflow in unicode file names Resolves: rhbz#2165653 From 22bf29651c674e013f783b0c418e4098ee4e20ae Mon Sep 17 00:00:00 2001 From: Software Management Team Date: Thu, 30 May 2024 12:46:50 +0200 Subject: [PATCH 50/56] Eliminate use of obsolete %patchN syntax (#2283636) --- zip.spec | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/zip.spec b/zip.spec index f6d5e05..bc32f03 100644 --- a/zip.spec +++ b/zip.spec @@ -33,14 +33,14 @@ program. %prep %setup -q -n zip30 -%patch1 -p1 -b .exec-shield -%patch2 -p1 -b .currdir -%patch3 -p1 -b .time -%patch4 -p1 -b .man -%patch5 -p1 -b .format-security -%patch6 -p1 -b .zipnote -%patch7 -p1 -b .gnu89-build -%patch8 -p1 +%patch -P1 -p1 -b .exec-shield +%patch -P2 -p1 -b .currdir +%patch -P3 -p1 -b .time +%patch -P4 -p1 -b .man +%patch -P5 -p1 -b .format-security +%patch -P6 -p1 -b .zipnote +%patch -P7 -p1 -b .gnu89-build +%patch -P8 -p1 %build %{make_build} -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" generic_gcc From fabe9e5d1d71424b126e014f3e80611f3b2c1601 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 20 Jul 2024 10:53:10 +0000 Subject: [PATCH 51/56] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index bc32f03..e8f8334 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 40%{?dist} +Release: 41%{?dist} License: Info-ZIP Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -66,6 +66,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Sat Jul 20 2024 Fedora Release Engineering - 3.0-41 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Sat Jan 27 2024 Fedora Release Engineering - 3.0-40 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 965d5021a90efceade8964771257b385036c84de Mon Sep 17 00:00:00 2001 From: Jakub Martisko Date: Wed, 11 Dec 2024 11:58:26 +0100 Subject: [PATCH 52/56] Manpages: --no-extra option is actually called --strip-extra --- zip-3.0-man-strip-extra.patch | 11 +++++++++++ zip.spec | 7 ++++++- 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 zip-3.0-man-strip-extra.patch diff --git a/zip-3.0-man-strip-extra.patch b/zip-3.0-man-strip-extra.patch new file mode 100644 index 0000000..abb9f7c --- /dev/null +++ b/zip-3.0-man-strip-extra.patch @@ -0,0 +1,11 @@ +--- ./man/zip.1.old 2024-12-11 10:51:22.837845520 +0100 ++++ ./man/zip.1 2024-12-11 10:51:34.458142392 +0100 +@@ -2297,7 +2297,7 @@ + .B \-X + .TP + .PD +-.B \-\-no\-extra ++.B \-\-strip\-extra + Do not save extra file attributes (Extended Attributes on OS/2, uid/gid + and file times on Unix). The zip format uses extra fields to include + additional information for each entry. Some extra fields are specific diff --git a/zip.spec b/zip.spec index e8f8334..2a22eb1 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 41%{?dist} +Release: 42%{?dist} License: Info-ZIP Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -18,6 +18,7 @@ Patch5: zip-3.0-format-security.patch Patch6: zipnote.patch Patch7: zip-gnu89-build.patch Patch8: buffer_overflow.patch +Patch9: zip-3.0-man-strip-extra.patch BuildRequires: make BuildRequires: bzip2-devel, gcc Requires: unzip @@ -41,6 +42,7 @@ program. %patch -P6 -p1 -b .zipnote %patch -P7 -p1 -b .gnu89-build %patch -P8 -p1 +%patch -P9 -p1 %build %{make_build} -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" generic_gcc @@ -66,6 +68,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Wed Dec 11 2024 Jakub Martisko - 3.0-42 +- Fix teh manpage: --no-extra option is actually called --strip-extra + * Sat Jul 20 2024 Fedora Release Engineering - 3.0-41 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 8acab478a5db907f8568d2593308a9bf64b08693 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 19 Jan 2025 16:47:24 +0000 Subject: [PATCH 53/56] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 2a22eb1..9c8bbd2 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 42%{?dist} +Release: 43%{?dist} License: Info-ZIP Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -68,6 +68,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Sun Jan 19 2025 Fedora Release Engineering - 3.0-43 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Wed Dec 11 2024 Jakub Martisko - 3.0-42 - Fix teh manpage: --no-extra option is actually called --strip-extra From 6375da78ffeaa94516e9e220aa4c3bd81a9a8ed9 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 21:18:51 +0000 Subject: [PATCH 54/56] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index 9c8bbd2..c1b23e3 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 43%{?dist} +Release: 44%{?dist} License: Info-ZIP Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -68,6 +68,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Fri Jul 25 2025 Fedora Release Engineering - 3.0-44 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Sun Jan 19 2025 Fedora Release Engineering - 3.0-43 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 249d2942a96a1ef840e0316ed2dd6d8c06b18c40 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 17 Jan 2026 21:08:47 +0000 Subject: [PATCH 55/56] Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index c1b23e3..b9a90c7 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 44%{?dist} +Release: 45%{?dist} License: Info-ZIP Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -68,6 +68,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Sat Jan 17 2026 Fedora Release Engineering - 3.0-45 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + * Fri Jul 25 2025 Fedora Release Engineering - 3.0-44 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 4046c210d122112880062571f20bb5d127fdabca Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 17 Jul 2026 09:41:10 +0000 Subject: [PATCH 56/56] Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild --- zip.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zip.spec b/zip.spec index b9a90c7..d06aaf5 100644 --- a/zip.spec +++ b/zip.spec @@ -1,7 +1,7 @@ Summary: A file compression and packaging utility compatible with PKZIP Name: zip Version: 3.0 -Release: 45%{?dist} +Release: 46%{?dist} License: Info-ZIP Source: http://downloads.sourceforge.net/infozip/zip30.tar.gz URL: http://www.info-zip.org/Zip.html @@ -68,6 +68,9 @@ mkdir -p $RPM_BULD_ROOT%{_mandir}/man1 %{_mandir}/man1/zipsplit.1* %changelog +* Fri Jul 17 2026 Fedora Release Engineering - 3.0-46 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + * Sat Jan 17 2026 Fedora Release Engineering - 3.0-45 - Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild