Package init
This commit is contained in:
commit
9955bed435
24
CVE-2018-13410.patch
Normal file
24
CVE-2018-13410.patch
Normal file
@ -0,0 +1,24 @@
|
||||
From dd2a5c4be6a460636b415792f02e7c8ae62f524e Mon Sep 17 00:00:00 2001
|
||||
From: Hector Chen <shine751105@gmail.com>
|
||||
Date: Thu, 21 Feb 2019 09:32:33 +0800
|
||||
Subject: [PATCH] Fix CVE-2018-13410
|
||||
|
||||
---
|
||||
zip.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/zip.c b/zip.c
|
||||
index 439821f..f13e2a1 100644
|
||||
--- a/zip.c
|
||||
+++ b/zip.c
|
||||
@@ -1437,7 +1437,7 @@ local void check_zipfile(zipname, zippath)
|
||||
/* Replace first {} with archive name. If no {} append name to string. */
|
||||
here = strstr(unzip_path, "{}");
|
||||
|
||||
- if ((cmd = malloc(strlen(unzip_path) + strlen(zipname) + 3)) == NULL) {
|
||||
+ if ((cmd = malloc(strlen(unzip_path) + strlen(zipname) + 4)) == NULL) {
|
||||
ziperr(ZE_MEM, "building command string for testing archive");
|
||||
}
|
||||
|
||||
--
|
||||
2.7.4
|
||||
40
man.patch
Normal file
40
man.patch
Normal file
@ -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
|
||||
12
zip-3.0-currdir.patch
Normal file
12
zip-3.0-currdir.patch
Normal file
@ -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;
|
||||
}
|
||||
|
||||
20
zip-3.0-exec-shield.patch
Normal file
20
zip-3.0-exec-shield.patch
Normal file
@ -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
|
||||
20
zip-3.0-format-security.patch
Normal file
20
zip-3.0-format-security.patch
Normal file
@ -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 */
|
||||
11
zip-3.0-time.patch
Normal file
11
zip-3.0-time.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- 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 @@
|
||||
E =
|
||||
|
||||
# probably can change this to 'install' if you have it
|
||||
-INSTALL_PROGRAM = cp
|
||||
+INSTALL_PROGRAM = cp -p
|
||||
# probably can change this to 'install -d' if you have it
|
||||
# XXX NextStep 3.3 and Openstep 4.x don't know about -p !
|
||||
INSTALL_D = mkdir -p
|
||||
58
zip.spec
Normal file
58
zip.spec
Normal file
@ -0,0 +1,58 @@
|
||||
Name: zip
|
||||
Version: 3.0
|
||||
Release: 24
|
||||
Summary: A compression and file packaging/archive utility
|
||||
License: BSD
|
||||
URL: http://www.info-zip.org/Zip.html
|
||||
Source0: http://downloads.sourceforge.net/infozip/zip30.tar.gz
|
||||
|
||||
# Patch1 to patch6 get from fedora
|
||||
Patch1: zip-3.0-exec-shield.patch
|
||||
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
|
||||
|
||||
Patch6000: CVE-2018-13410.patch
|
||||
|
||||
BuildRequires: bzip2-devel
|
||||
Requires: unzip
|
||||
|
||||
%description
|
||||
The zip program is a compression and file packaging utility. Zip has one
|
||||
compression method and can also store files without compression.
|
||||
Zip automatically chooses the better of the two for each file. Compression
|
||||
ratios of 2:1 to 3:1 are common for text files.
|
||||
|
||||
%package help
|
||||
Summary: Documents and manuals related to zip
|
||||
BuildArch: noarch
|
||||
|
||||
%description help
|
||||
This package contains the documents and manuals related to zip.
|
||||
|
||||
%prep
|
||||
%autosetup -n zip30 -p1
|
||||
|
||||
%build
|
||||
%make_build -f unix/Makefile prefix=%{_prefix} "CFLAGS_NOOPT=-I. -DUNIX $RPM_OPT_FLAGS" generic_gcc
|
||||
|
||||
%install
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
mkdir -p %{buildroot}%{_mandir}/man1
|
||||
%make_install -f unix/Makefile prefix=%{buildroot}%{_prefix} MANDIR=%{buildroot}%{_mandir}/man1
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc README CHANGES TODO WHATSNEW WHERE README.CR
|
||||
%doc proginfo/algorith.txt
|
||||
%license LICENSE
|
||||
%{_bindir}/zip*
|
||||
|
||||
%files help
|
||||
%{_mandir}/man1/zip*
|
||||
|
||||
%changelog
|
||||
* Tue Sep 3 2019 dongjian <dongjian13@huawei.com> - 3.0-24
|
||||
- Rebuild and modify the description
|
||||
BIN
zip30.tar.gz
Normal file
BIN
zip30.tar.gz
Normal file
Binary file not shown.
13
zipnote.patch
Normal file
13
zipnote.patch
Normal file
@ -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 */
|
||||
Loading…
x
Reference in New Issue
Block a user