Date: Mon, 30 Apr 2001 23:44:42 -0400 (EDT) From: Mike Heffner <mheffner@vt.edu> To: FreeBSD-audit <FreeBSD-audit@freebsd.org> Subject: Small patch to allow mail to read Eudora mailboxes Message-ID: <XFMail.20010430234442.mheffner@vt.edu>
next in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
Found this in the OpenBSD tree, I'd like to commit it to our mail(1). Any
objections to this?
Index: fio.c
===================================================================
RCS file: /home/ncvs/src/usr.bin/mail/fio.c,v
retrieving revision 1.4
diff -u -r1.4 fio.c
--- fio.c 2001/03/25 04:57:04 1.4
+++ fio.c 2001/05/01 03:41:37
@@ -94,6 +94,14 @@
return;
}
count = strlen(linebuf);
+ /*
+ * Transforms lines ending in <CR><LF> to just <LF>.
+ * This allows mail to be able to read Eudora mailboxes.
+ */
+ if (count >= 2 && linebuf[count-1] == '\n' &&
+ linebuf[count - 2] == '\r')
+ linebuf[count - 2] = linebuf[--count];
+
(void) fwrite(linebuf, sizeof *linebuf, count, otf);
if (ferror(otf))
errx(1, "/tmp");
@@ -160,7 +168,7 @@
/*
* Read up a line from the specified input into the line
* buffer. Return the number of characters read. Do not
- * include the newline at the end.
+ * include the newline (or carriage return) at the end.
*/
int
readline(ibuf, linebuf, linesize)
@@ -175,6 +183,8 @@
return -1;
n = strlen(linebuf);
if (n > 0 && linebuf[n - 1] == '\n')
+ linebuf[--n] = '\0';
+ if (n > 0 && linebuf[n - 1] == '\r')
linebuf[--n] = '\0';
return n;
}
Mike
--
Mike Heffner <mheffner@vt.edu>
Blacksburg, VA <mikeh@FreeBSD.org>
http://filebox.vt.edu/users/mheffner
[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.4 (FreeBSD)
Comment: For info see http://www.gnupg.org
iD8DBQE67jEqFokZQs3sv5kRAh4bAJ49rsKOyR6nZt9AFhatCTgEu520iQCfYtPm
oAWr89t5haKCYnBVfaK9mjE=
=2yuk
-----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.20010430234442.mheffner>
