summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-arch/unarj/files')
-rw-r--r--app-arch/unarj/files/unarj-2.65-CAN-2004-0947.patch49
-rw-r--r--app-arch/unarj/files/unarj-2.65-Wformat-security.patch66
-rw-r--r--app-arch/unarj/files/unarj-2.65-gentoo-fbsd.patch9
-rw-r--r--app-arch/unarj/files/unarj-2.65-sanitation.patch126
4 files changed, 0 insertions, 250 deletions
diff --git a/app-arch/unarj/files/unarj-2.65-CAN-2004-0947.patch b/app-arch/unarj/files/unarj-2.65-CAN-2004-0947.patch
deleted file mode 100644
index f52af83ac2ca..000000000000
--- a/app-arch/unarj/files/unarj-2.65-CAN-2004-0947.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-Index: unarj-2.65/unarj.c
-===================================================================
---- unarj-2.65.orig/unarj.c
-+++ unarj-2.65/unarj.c
-@@ -217,7 +217,7 @@ static uchar arj_flags;
- static short method;
- static uint file_mode;
- static ulong time_stamp;
--static short entry_pos;
-+static ushort entry_pos;
- static ushort host_data;
- static uchar *get_ptr;
- static UCRC file_crc;
-@@ -608,6 +608,7 @@ char *name;
- error(M_BADHEADR, "");
-
- crc = CRC_MASK;
-+ memset(header, 0, sizeof(header));
- fread_crc(header, (int) headersize, fd);
- header_crc = fget_crc(fd);
- if ((crc ^ CRC_MASK) != header_crc)
-@@ -632,9 +633,13 @@ char *name;
-
- if (origsize < 0 || compsize < 0)
- error(M_HEADRCRC, "");
-+ if(first_hdr_size > headersize-2) /* need two \0 for file and comment */
-+ error(M_BADHEADR, "");
-
- hdr_filename = (char *)&header[first_hdr_size];
- strncopy(filename, hdr_filename, sizeof(filename));
-+ if(entry_pos >= strlen(filename))
-+ error(M_BADHEADR, "");
- if (host_os != OS)
- strparity((uchar *)filename);
- if ((arj_flags & PATHSYM_FLAG) != 0)
-@@ -733,11 +738,11 @@ extract()
-
- no_output = 0;
- if (command == 'E')
-- strcpy(name, &filename[entry_pos]);
-+ strncopy(name, &filename[entry_pos], sizeof(name));
- else
- {
- strcpy(name, DEFAULT_DIR);
-- strcat(name, filename);
-+ strncopy(name+strlen(name), filename, sizeof(name)-strlen(name));
- }
-
- if (host_os != OS)
diff --git a/app-arch/unarj/files/unarj-2.65-Wformat-security.patch b/app-arch/unarj/files/unarj-2.65-Wformat-security.patch
deleted file mode 100644
index a076dd91f13d..000000000000
--- a/app-arch/unarj/files/unarj-2.65-Wformat-security.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-Bug: https://bugs.gentoo.org/520478
-
---- a/unarj.c
-+++ b/unarj.c
-@@ -699,7 +699,7 @@
- }
- if ((arj_flags & GARBLE_FLAG) != 0)
- {
-- printf(M_ENCRYPT);
-+ puts(M_ENCRYPT);
- printf(M_SKIPPED, filename);
- skip();
- return -1;
-@@ -763,7 +763,7 @@
- }
- printf(M_EXTRACT, name);
- if (host_os != OS && file_type == BINARY_TYPE)
-- printf(M_DIFFHOST);
-+ puts(M_DIFFHOST);
- printf(" ");
-
- crc = CRC_MASK;
-@@ -779,10 +779,10 @@
- set_ftime_mode(name, time_stamp, file_mode, (uint) host_os);
-
- if ((crc ^ CRC_MASK) == file_crc)
-- printf(M_CRCOK);
-+ puts(M_CRCOK);
- else
- {
-- printf(M_CRCERROR);
-+ puts(M_CRCERROR);
- error_count++;
- }
- return 1;
-@@ -808,10 +808,10 @@
- decode_f();
-
- if ((crc ^ CRC_MASK) == file_crc)
-- printf(M_CRCOK);
-+ puts(M_CRCOK);
- else
- {
-- printf(M_CRCERROR);
-+ puts(M_CRCERROR);
- error_count++;
- }
- return 1;
-@@ -958,7 +958,7 @@
- int i;
-
- for (i = 0; M_USAGE[i] != NULL; i++)
-- printf(M_USAGE[i]);
-+ puts(M_USAGE[i]);
- }
-
- int
-@@ -973,7 +973,7 @@
- argc = ccommand(&argv);
- #endif
-
-- printf(M_VERSION);
-+ puts(M_VERSION);
-
- if (argc == 1)
- {
diff --git a/app-arch/unarj/files/unarj-2.65-gentoo-fbsd.patch b/app-arch/unarj/files/unarj-2.65-gentoo-fbsd.patch
deleted file mode 100644
index 2091f091e2d2..000000000000
--- a/app-arch/unarj/files/unarj-2.65-gentoo-fbsd.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- a/environ.c
-+++ b/environ.c
-@@ -437,7 +437,6 @@
- #endif
-
- extern struct tm *localtime();
--extern time_t time();
- extern char *strcpy();
- extern voidp *malloc(); \ No newline at end of file
diff --git a/app-arch/unarj/files/unarj-2.65-sanitation.patch b/app-arch/unarj/files/unarj-2.65-sanitation.patch
deleted file mode 100644
index f37784ed2491..000000000000
--- a/app-arch/unarj/files/unarj-2.65-sanitation.patch
+++ /dev/null
@@ -1,126 +0,0 @@
-Index: unarj-2.65/sanitize.c
-===================================================================
---- /dev/null
-+++ unarj-2.65/sanitize.c
-@@ -0,0 +1,81 @@
-+/*
-+ * Path sanitation code by Ludwig Nussel <ludwig.nussel@suse.de>. Public Domain.
-+ */
-+
-+#include "unarj.h"
-+
-+#include <string.h>
-+#include <limits.h>
-+#include <stdio.h>
-+
-+#ifndef PATH_CHAR
-+#define PATH_CHAR '/'
-+#endif
-+#ifndef MIN
-+#define MIN(x,y) ((x)<(y)?(x):(y))
-+#endif
-+
-+/* copy src into dest converting the path to a relative one inside the current
-+ * directory. dest must hold at least len bytes */
-+void copy_path_relative(char *dest, char *src, size_t len)
-+{
-+ char* o = dest;
-+ char* p = src;
-+
-+ *o = '\0';
-+
-+ while(*p && *p == PATH_CHAR) ++p;
-+ for(; len && *p;)
-+ {
-+ src = p;
-+ p = strchr(src, PATH_CHAR);
-+ if(!p) p = src+strlen(src);
-+
-+ /* . => skip */
-+ if(p-src == 1 && *src == '.' )
-+ {
-+ if(*p) src = ++p;
-+ }
-+ /* .. => pop one */
-+ else if(p-src == 2 && *src == '.' && src[1] == '.')
-+ {
-+ if(o != dest)
-+ {
-+ char* tmp;
-+ *o = '\0';
-+ tmp = strrchr(dest, PATH_CHAR);
-+ if(!tmp)
-+ {
-+ len += o-dest;
-+ o = dest;
-+ if(*p) ++p;
-+ }
-+ else
-+ {
-+ len += o-tmp;
-+ o = tmp;
-+ if(*p) ++p;
-+ }
-+ }
-+ else /* nothing to pop */
-+ if(*p) ++p;
-+ }
-+ else
-+ {
-+ size_t copy;
-+ if(o != dest)
-+ {
-+ --len;
-+ *o++ = PATH_CHAR;
-+ }
-+ copy = MIN(p-src,len);
-+ memcpy(o, src, copy);
-+ len -= copy;
-+ src += copy;
-+ o += copy;
-+ if(*p) ++p;
-+ }
-+ while(*p && *p == PATH_CHAR) ++p;
-+ }
-+ o[len?0:-1] = '\0';
-+}
-Index: unarj-2.65/unarj.c
-===================================================================
---- unarj-2.65.orig/unarj.c
-+++ unarj-2.65/unarj.c
-@@ -235,6 +235,8 @@ static UCRC crctable[UCHAR_MAX + 1];
-
- /* Functions */
-
-+void copy_path_relative(char *dest, char *src, size_t len);
-+
- static void
- make_crctable()
- {
-@@ -738,11 +740,11 @@ extract()
-
- no_output = 0;
- if (command == 'E')
-- strncopy(name, &filename[entry_pos], sizeof(name));
-+ copy_path_relative(name, &filename[entry_pos], sizeof(name));
- else
- {
- strcpy(name, DEFAULT_DIR);
-- strncopy(name+strlen(name), filename, sizeof(name)-strlen(name));
-+ copy_path_relative(name+strlen(name), filename, sizeof(name)-strlen(name));
- }
-
- if (host_os != OS)
---- unarj-2.65.orig/Makefile Mon Nov 29 16:47:24 2004
-+++ unarj-2.65/Makefile Mon Nov 29 22:46:56 2004
-@@ -9,7 +9,9 @@
-
- decode.o: decode.c unarj.h
-
--OBJS = unarj.o decode.o environ.o
-+sanitize.o: sanitize.c unarj.h
-+
-+OBJS = unarj.o decode.o environ.o sanitize.o
-
- unarj: $(OBJS)
- $(CC) $(LDFLAGS) $(OBJS) -o unarj