summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-text/dos2unix/files')
-rw-r--r--app-text/dos2unix/files/digest-dos2unix-3.1-r11
-rw-r--r--app-text/dos2unix/files/dos2unix-3.1-includes.patch11
-rw-r--r--app-text/dos2unix/files/dos2unix-3.1-manpage-update.patch180
-rw-r--r--app-text/dos2unix/files/dos2unix-3.1-preserve-file-modes.patch30
-rw-r--r--app-text/dos2unix/files/dos2unix-3.1-safeconv.patch88
-rw-r--r--app-text/dos2unix/files/dos2unix-3.1-segfault.patch8
-rw-r--r--app-text/dos2unix/files/dos2unix-3.1.patch41
7 files changed, 320 insertions, 39 deletions
diff --git a/app-text/dos2unix/files/digest-dos2unix-3.1-r1 b/app-text/dos2unix/files/digest-dos2unix-3.1-r1
new file mode 100644
index 000000000000..c27346b635d4
--- /dev/null
+++ b/app-text/dos2unix/files/digest-dos2unix-3.1-r1
@@ -0,0 +1 @@
+MD5 f90026a397cf787083ec2e4892c6dcdd dos2unix-3.1.tar.bz2 13400
diff --git a/app-text/dos2unix/files/dos2unix-3.1-includes.patch b/app-text/dos2unix/files/dos2unix-3.1-includes.patch
new file mode 100644
index 000000000000..a71c205973e7
--- /dev/null
+++ b/app-text/dos2unix/files/dos2unix-3.1-includes.patch
@@ -0,0 +1,11 @@
+--- dos2unix-3.1/dos2unix.c
++++ dos2unix-3.1/dos2unix.c
+@@ -71,6 +71,8 @@
+ #endif __MSDOS__
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <unistd.h>
++#include <fcntl.h>
+ #include <string.h>
+ #include <utime.h>
+ #include <sys/stat.h>
diff --git a/app-text/dos2unix/files/dos2unix-3.1-manpage-update.patch b/app-text/dos2unix/files/dos2unix-3.1-manpage-update.patch
new file mode 100644
index 000000000000..7e4b70591a38
--- /dev/null
+++ b/app-text/dos2unix/files/dos2unix-3.1-manpage-update.patch
@@ -0,0 +1,180 @@
+Ripped from Fedora
+
+The dos2unix man page examples are confusing.
+For instance, one piece of text mentions "c.txt", but that file
+isn't used in the following example.
+
+Patch by Bill Anderson
+https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=57507
+
+--- dos2unix-3.1/dos2unix.1
++++ dos2unix-3.1/dos2unix.1
+@@ -4,127 +4,104 @@
+ .SH NAME
+
+ dos2unix \- DOS/MAC to UNIX text file format converter
++.SH SYNOPSIS
+
+-.SH SYNOPSYS
+-
+-dos2unix [options] [-c convmode] [-o file ...] [-n infile outfile ...]
+-.PP
+-Options:
+-.PP
+-[-hkqV] [--help] [--keepdate] [--quiet] [--version]
++\fBdos2unix\fR [options] [\-c convmode] [\-o file ...] [\-n infile outfile ...]
+
++\fBdos2unix\fR [\-hkqV] [\-\-help] [\-\-keepdate] [\-\-quiet] [\-\-version]
+ .SH DESCRIPTION
+
+ .PP
+-This manual page documents dos2unix, the program that converts plain text
++This manual page documents \fBdos2unix\fR, the program that converts plain text
+ files in DOS/MAC format to UNIX format.
+-
+ .SH OPTIONS
+
+-The following options are available:
+ .TP
+-.B \-h --help
++.B \-h \-\-help
+ Print online help.
+-
+ .TP
+-.B \-k --keepdate
++.B \-k \-\-keepdate
+ Keep the date stamp of output file same as input file.
+-
+ .TP
+-.B \-q --quiet
++.B \-q \-\-quiet
+ Quiet mode. Suppress all warning and messages.
+-
+ .TP
+-.B \-V --version
++.B \-V \-\-version
+ Prints version information.
+-
+ .TP
+-.B \-c --convmode convmode
+-Sets conversion mode. Simulates dos2unix under SunOS.
+-
++.B \-c \-\-convmode convmode
++Sets conversion mode. convmode is one of:
++.B ASCII, 7bit, ISO, Mac
++with ASCII being the default. Simulates dos2unix under SunOS.
+ .TP
+-.B \-o --oldfile file ...
++.B \-o \-\-oldfile file ...
+ Old file mode. Convert the file and write output to it. The program
+ default to run in this mode. Wildcard names may be used.
+-
+ .TP
+-.B \-n --newfile infile outfile ...
++.B \-n \-\-newfile infile outfile ...
+ New file mode. Convert the infile and write output to outfile. File names
+ must be given in pairs and wildcard names should NOT be used or you WILL
+ lost your files.
+-
+ .SH EXAMPLES
+
+ .LP
+ Get input from stdin and write output to stdout.
+ .IP
+ .B dos2unix
+-
+ .LP
+ Convert and replace a.txt. Convert and replace b.txt.
+ .IP
+ .B dos2unix a.txt b.txt
+ .IP
+-.B dos2unix -o a.txt b.txt
+-
++.B dos2unix \-o a.txt b.txt
+ .LP
+ Convert and replace a.txt in ASCII conversion mode.
++.IP
++.B dos2unix a.txt \-c iso b.txt
++.LP
+ Convert and replace b.txt in ISO conversion mode.
++.IP
++.B dos2unix \-c ascii a.txt \-c iso b.txt
++.LP
+ Convert c.txt from Mac to Unix ascii format.
+ .IP
+-.B dos2unix a.txt -c iso b.txt
+-.IP
+-.B dos2unix -c ascii a.txt -c iso b.txt
+-.IP
+-.B dos2unix -c mac a.txt b.txt
+-
++.B dos2unix \-c mac c.txt b.txt
+ .LP
+ Convert and replace a.txt while keeping original date stamp.
+ .IP
+-.B dos2unix -k a.txt
++.B dos2unix \-k a.txt
+ .IP
+-.B dos2unix -k -o a.txt
+-
++.B dos2unix \-k \-o a.txt
+ .LP
+ Convert a.txt and write to e.txt.
+ .IP
+-.B dos2unix -n a.txt e.txt
+-
++.B dos2unix \-n a.txt e.txt
+ .LP
+ Convert a.txt and write to e.txt, keep date stamp of e.txt same as a.txt.
+ .IP
+-.B dos2unix -k -n a.txt e.txt
+-
++.B dos2unix \-k \-n a.txt e.txt
+ .LP
+ Convert and replace a.txt. Convert b.txt and write to e.txt.
+ .IP
+-.B dos2unix a.txt -n b.txt e.txt
++.B dos2unix a.txt \-n b.txt e.txt
+ .IP
+-.B dos2unix -o a.txt -n b.txt e.txt
+-
++.B dos2unix \-o a.txt \-n b.txt e.txt
+ .LP
+ Convert c.txt and write to e.txt. Convert and replace a.txt.
+ Convert and replace b.txt. Convert d.txt and write to f.txt.
+ .IP
+-.B dos2unix -n c.txt e.txt -o a.txt b.txt -n d.txt f.txt
+-
+-.SH DIAGNOSTICS
+-
++.B dos2unix \-n c.txt e.txt \-o a.txt b.txt \-n d.txt f.txt
+ .SH BUGS
+
+ The program does not work properly under MSDOS in stdio processing mode.
+ If you know why is that so, please tell me.
+-
+ .SH AUTHORS
+
+-Benjamin Lin -
++Benjamin Lin
+ .B <blin@socs.uts.edu.au>
+-
+-
++.br
+ Bernd Johannes Wuebben (mac2unix mode)
+ .B <wuebben@kde.org>
+-
+-
+ .SH MISCELLANY
+
+ Tested environment:
+@@ -136,7 +114,6 @@
+ MS-DOS 6.20 with Borland C++ 4.02
+ .PP
+ Suggestions and bug reports are welcome.
+-
+ .SH SEE ALSO
+-unix2dos(1) mac2unix(1)
+-
++.BR unix2dos (1),
++.BR mac2unix (1)
diff --git a/app-text/dos2unix/files/dos2unix-3.1-preserve-file-modes.patch b/app-text/dos2unix/files/dos2unix-3.1-preserve-file-modes.patch
new file mode 100644
index 000000000000..a357b0b138df
--- /dev/null
+++ b/app-text/dos2unix/files/dos2unix-3.1-preserve-file-modes.patch
@@ -0,0 +1,30 @@
+Ripped from Fedora
+
+--- dos2unix-3.1/dos2unix.c
++++ dos2unix-3.1/dos2unix.c
+@@ -345,11 +345,14 @@ int ConvertDosToUnixOldFile(char* ipInFN
+ char TempPath[16];
+ struct stat StatBuf;
+ struct utimbuf UTimeBuf;
++ mode_t mode = S_IRUSR | S_IWUSR;
+ int fd;
+
+ /* retrieve ipInFN file date stamp */
+- if ((ipFlag->KeepDate) && stat(ipInFN, &StatBuf))
++ if (stat(ipInFN, &StatBuf))
+ RetVal = -1;
++ else
++ mode = StatBuf.st_mode;
+
+ strcpy (TempPath, "./u2dtmpXXXXXX");
+ if((fd=mkstemp (TempPath))<0) {
+@@ -357,6 +360,9 @@ int ConvertDosToUnixOldFile(char* ipInFN
+ RetVal = -1;
+ }
+
++ if (!RetVal && fchmod (fd, mode) && fchmod (fd, S_IRUSR | S_IWUSR))
++ RetVal = -1;
++
+ #ifdef DEBUG
+ fprintf(stderr, "dos2unix: using %s as temp file\n", TempPath);
+ #endif DEBUG
diff --git a/app-text/dos2unix/files/dos2unix-3.1-safeconv.patch b/app-text/dos2unix/files/dos2unix-3.1-safeconv.patch
new file mode 100644
index 000000000000..11998be1fddf
--- /dev/null
+++ b/app-text/dos2unix/files/dos2unix-3.1-safeconv.patch
@@ -0,0 +1,88 @@
+* Fix http://bugzilla.redhat.com/57508 (make dos2unix not modify Mac
+ files unless in mac2unix mode)
+* Make mac2unix mode not create duplicate Unix line delimiters when
+ run on a DOS file. (mschwendt@users.sf.net)
+
+diff -Nur dos2unix-3.1-orig/dos2unix.c dos2unix-3.1/dos2unix.c
+--- dos2unix-3.1-orig/dos2unix.c 1998-11-19 13:19:25.000000000 +0100
++++ dos2unix-3.1/dos2unix.c 2004-09-26 20:57:41.606587616 +0200
+@@ -153,6 +153,24 @@
+ }
+
+
++void StripDelimiter(FILE* ipInF, FILE* ipOutF, CFlag *ipFlag, int CurChar)
++{
++ int TempNextChar;
++ /* Don't modify Mac files when in dos2unix mode. */
++ if ( (TempNextChar = getc(ipInF)) != EOF) {
++ ungetc( TempNextChar, ipInF ); /* put back peek char */
++ if ( TempNextChar != '\x0a' ) {
++ putc( CurChar, ipOutF ); /* Mac line, put back CR */
++ }
++ }
++ else if ( CurChar == '\x0d' ) { /* EOF: last Mac line delimiter (CR)? */
++ putc( CurChar, ipOutF );
++ }
++ if (ipFlag->NewLine) { /* add additional LF? */
++ putc('\n', ipOutF);
++ }
++}
++
+ /* converts stream ipInF to UNIX format text and write to stream ipOutF
+ * RetVal: 0 if success
+ * -1 otherwise
+@@ -161,6 +179,7 @@
+ {
+ int RetVal = 0;
+ int TempChar;
++ int TempNextChar;
+
+ if ( macmode )
+ ipFlag->ConvMode = 3;
+@@ -177,9 +196,7 @@
+ break;
+ }
+ } else {
+- if (ipFlag->NewLine) {
+- putc('\n', ipOutF);
+- }
++ StripDelimiter( ipInF, ipOutF, ipFlag, TempChar );
+ }
+ }
+ break;
+@@ -193,9 +210,7 @@
+ break;
+ }
+ } else {
+- if (ipFlag->NewLine) {
+- putc('\n', ipOutF);
+- }
++ StripDelimiter( ipInF, ipOutF, ipFlag, TempChar );
+ }
+ }
+ break;
+@@ -209,9 +224,7 @@
+ break;
+ }
+ } else {
+- if (ipFlag->NewLine) {
+- putc('\n', ipOutF);
+- }
++ StripDelimiter( ipInF, ipOutF, ipFlag, TempChar );
+ }
+ }
+ break;
+@@ -227,6 +240,13 @@
+ }
+ }
+ else{
++ if ( (TempNextChar = getc(ipInF)) != EOF) {
++ ungetc( TempNextChar, ipInF ); /* put back peek char */
++ /* Don't touch this delimiter if it's a CR,LF pair. */
++ if ( TempNextChar == '\x0a' ) {
++ continue;
++ }
++ }
+ if (putc('\x0a', ipOutF) == EOF)
+ {
+ RetVal = -1;
diff --git a/app-text/dos2unix/files/dos2unix-3.1-segfault.patch b/app-text/dos2unix/files/dos2unix-3.1-segfault.patch
index 7c8391bd2bdb..5ead232d51b6 100644
--- a/app-text/dos2unix/files/dos2unix-3.1-segfault.patch
+++ b/app-text/dos2unix/files/dos2unix-3.1-segfault.patch
@@ -1,5 +1,5 @@
---- dos2unix-3.1/dos2unix.c.segf Thu Jan 17 17:27:42 2002
-+++ dos2unix-3.1/dos2unix.c Thu Jan 17 17:28:07 2002
+--- dos2unix-3.1/dos2unix.c
++++ dos2unix-3.1/dos2unix.c
@@ -147,9 +147,9 @@
* RetVal: NULL if failure
* file stream otherwise
@@ -24,7 +24,7 @@
- strcpy (TempPath, "./d2utmp");
- strcat (TempPath, "XXXXXX");
-- mkstemp (TempPath);
+- mktemp (TempPath);
+ strcpy (TempPath, "./d2utmpXXXXXX");
+ if((fd=mkstemp (TempPath))<0) {
+ perror("Failed to open output temp file");
@@ -63,7 +63,7 @@
- strcpy (TempPath, "./u2dtmp");
- strcat (TempPath, "XXXXXX");
-- mkstemp (TempPath);
+- mktemp (TempPath);
+ strcpy (TempPath, "./u2dtmpXXXXXX");
+ if((fd=mkstemp (TempPath))<0) {
+ perror("Failed to open output temp file");
diff --git a/app-text/dos2unix/files/dos2unix-3.1.patch b/app-text/dos2unix/files/dos2unix-3.1.patch
index 5f823b2e7a9b..676ecc5e8d65 100644
--- a/app-text/dos2unix/files/dos2unix-3.1.patch
+++ b/app-text/dos2unix/files/dos2unix-3.1.patch
@@ -1,49 +1,20 @@
---- dos2unix-3.1/Makefile.orig Thu Nov 19 07:09:38 1998
-+++ dos2unix-3.1/Makefile Fri Nov 17 13:25:35 2000
-@@ -1,10 +1,12 @@
-+CFLAGS=
-+
- default: dos2unix
-
- all: dos2unix link install
+--- dos2unix-3.1/Makefile
++++ dos2unix-3.1/Makefile
+@@ -1,7 +1,7 @@
dos2unix:
- gcc -O dos2unix.c -o dos2unix
-+ gcc $(CFLAGS) dos2unix.c -o dos2unix
++ $(CC) -Wall $(CFLAGS) $(LDFLAGS) dos2unix.c -o dos2unix
link:
-@@ -12,11 +14,10 @@
+@@ -12,7 +14,7 @@
ln -s dos2unix.1 mac2unix.1
clean:
- rm dos2unix
-+ rm -f dos2unix mac2unix mac2unix.1 *~ *.orig core
++ $(RM) dos2unix mac2unix mac2unix.1 *~ *.orig core
install:
install -m 755 dos2unix /usr/local/bin
- install -m 644 dos2unix.1 /usr/local/man/man1
- install -m 755 mac2unix /usr/local/bin
- install -m 644 mac2unix.1 /usr/local/man/man1
--
---- dos2unix-3.1/dos2unix.c.orig Thu Nov 19 07:19:25 1998
-+++ dos2unix-3.1/dos2unix.c Fri Nov 17 13:25:25 2000
-@@ -267,7 +267,7 @@
-
- strcpy (TempPath, "./d2utmp");
- strcat (TempPath, "XXXXXX");
-- mktemp (TempPath);
-+ mkstemp (TempPath);
-
- #ifdef DEBUG
- fprintf(stderr, "dos2unix: using %s as temp file\n", TempPath);
-@@ -347,7 +347,7 @@
-
- strcpy (TempPath, "./u2dtmp");
- strcat (TempPath, "XXXXXX");
-- mktemp (TempPath);
-+ mkstemp (TempPath);
-
- #ifdef DEBUG
- fprintf(stderr, "dos2unix: using %s as temp file\n", TempPath);