summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-arch/fastjar')
-rw-r--r--app-arch/fastjar/Manifest1
-rw-r--r--app-arch/fastjar/fastjar-0.98-r3.ebuild22
-rw-r--r--app-arch/fastjar/files/0.98-traversal.patch112
-rw-r--r--app-arch/fastjar/metadata.xml13
4 files changed, 0 insertions, 148 deletions
diff --git a/app-arch/fastjar/Manifest b/app-arch/fastjar/Manifest
deleted file mode 100644
index 0d9d1f53842e..000000000000
--- a/app-arch/fastjar/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST fastjar-0.98.tar.gz 717984 BLAKE2B 1715f1917076799fc58c6c6cea8fb53fc3261a694fa2392c0dc6e30101a7d42de0c5c55cd593627b4d2d0ffa45e3d44ef220c9579caec669721c6b1b9996e43c SHA512 c0f9fca7b58d6acd00b90a5184dbde9ba3ffc5bf4d69512743e450649a272baf1f6af98b15d79d2b53990eaf84ef402c986035e6b615a19e35ed424348143903
diff --git a/app-arch/fastjar/fastjar-0.98-r3.ebuild b/app-arch/fastjar/fastjar-0.98-r3.ebuild
deleted file mode 100644
index 77a5df7acc1a..000000000000
--- a/app-arch/fastjar/fastjar-0.98-r3.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="A jar program written in C"
-HOMEPAGE="https://savannah.nongnu.org/projects/fastjar"
-SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ppc ppc64 x86 ~amd64-linux ~x86-linux ~sparc-solaris"
-
-DEPEND="sys-libs/zlib"
-RDEPEND="
- ${DEPEND}
- !<=dev-java/kaffe-1.1.7-r5" # bug 188542
-
-PATCHES=(
- # bug 325557
- "${FILESDIR}"/0.98-traversal.patch
-)
diff --git a/app-arch/fastjar/files/0.98-traversal.patch b/app-arch/fastjar/files/0.98-traversal.patch
deleted file mode 100644
index 511f4c6cd838..000000000000
--- a/app-arch/fastjar/files/0.98-traversal.patch
+++ /dev/null
@@ -1,112 +0,0 @@
---- fastjar-0.98.orig/jartool.c
-+++ fastjar-0.98/jartool.c
-@@ -790,6 +790,7 @@
- progname, jarfile);
- return 1;
- }
-+ ze->filename[len] = '\0';
- len = UNPACK_UB4(header, CEN_EFLEN);
- len += UNPACK_UB4(header, CEN_COMLEN);
- if (lseek (fd, len, SEEK_CUR) == -1)
-@@ -1257,7 +1258,7 @@
- exit_on_error("write");
-
- /* write the file name to the zip file */
-- if (1 == write(jfd, fname, file_name_length))
-+ if (-1 == write(jfd, fname, file_name_length))
- exit_on_error("write");
-
- if(verbose){
-@@ -1730,7 +1731,17 @@
- struct stat sbuf;
- int depth = 0;
-
-- tmp_buff = malloc(sizeof(char) * strlen((const char *)filename));
-+ if(*filename == '/'){
-+ fprintf(stderr, "Absolute path names are not allowed.\n");
-+ exit(EXIT_FAILURE);
-+ }
-+
-+ tmp_buff = malloc(strlen((const char *)filename));
-+
-+ if(tmp_buff == NULL) {
-+ fprintf(stderr, "Out of memory.\n");
-+ exit(EXIT_FAILURE);
-+ }
-
- for(;;){
- const ub1 *idx = (const unsigned char *)strchr((const char *)start, '/');
-@@ -1738,25 +1749,28 @@
- if(idx == NULL)
- break;
- else if(idx == start){
-+ tmp_buff[idx - filename] = '/';
- start++;
- continue;
- }
-- start = idx + 1;
-
-- strncpy(tmp_buff, (const char *)filename, (idx - filename));
-- tmp_buff[(idx - filename)] = '\0';
-+ memcpy(tmp_buff + (start - filename), (const char *)start, (idx - start));
-+ tmp_buff[idx - filename] = '\0';
-
- #ifdef DEBUG
- printf("checking the existance of %s\n", tmp_buff);
- #endif
-- if(strcmp(tmp_buff, "..") == 0){
-+ if(idx - start == 2 && memcmp(start, "..", 2) == 0){
- --depth;
- if (depth < 0){
- fprintf(stderr, "Traversal to parent directories during unpacking!\n");
- exit(EXIT_FAILURE);
- }
-- } else if (strcmp(tmp_buff, ".") != 0)
-+ } else if (idx - start != 1 || *start != '.')
- ++depth;
-+
-+ start = idx + 1;
-+
- if(stat(tmp_buff, &sbuf) < 0){
- if(errno != ENOENT)
- exit_on_error("stat");
-@@ -1765,6 +1779,7 @@
- #ifdef DEBUG
- printf("Directory exists\n");
- #endif
-+ tmp_buff[idx - filename] = '/';
- continue;
- }else {
- fprintf(stderr, "Hmmm.. %s exists but isn't a directory!\n",
-@@ -1781,10 +1796,11 @@
- if(verbose && handle)
- printf("%10s: %s/\n", "created", tmp_buff);
-
-+ tmp_buff[idx - filename] = '/';
- }
-
- /* only a directory */
-- if(strlen((const char *)start) == 0)
-+ if(*start == '\0')
- dir = TRUE;
-
- #ifdef DEBUG
-@@ -1792,7 +1808,7 @@
- #endif
-
- /* If the entry was just a directory, don't write to file, etc */
-- if(strlen((const char *)start) == 0)
-+ if(*start == '\0')
- f_fd = -1;
-
- free(tmp_buff);
-@@ -1876,7 +1892,8 @@
- exit(EXIT_FAILURE);
- }
-
-- close(f_fd);
-+ if (f_fd != -1)
-+ close(f_fd);
-
- if(verbose && dir == FALSE && handle)
- printf("%10s: %s\n",
diff --git a/app-arch/fastjar/metadata.xml b/app-arch/fastjar/metadata.xml
deleted file mode 100644
index 0d201b2da538..000000000000
--- a/app-arch/fastjar/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription lang="en">
- Fastjar is a version of Sun's 'jar' utility, written entirely in C,
- and therefore quite a bit faster. Fastjar can be up to 100x faster
- than the stock 'jar' program running without a JIT.
- </longdescription>
-</pkgmetadata>