Update to exim-3.36:

* Incorporates some patches.

* Fix pretty obscure queue handling bug.

* Update exim-4 spool file format forward-compatibility.
This commit is contained in:
Sheldon Hearn 2002-04-18 12:20:20 +00:00
parent 325c1cfbb1
commit 478dd1d8f4
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=57847
8 changed files with 6 additions and 162 deletions

View file

@ -6,13 +6,12 @@
#
PORTNAME= exim
PORTVERSION= 3.35
PORTREVISION= 1
PORTVERSION= 3.36
CATEGORIES= mail
MASTER_SITES= ftp://ftp.csx.cam.ac.uk/pub/software/email/exim/exim3/ \
http://www.exim.org/ftp/exim3/ \
ftp://ftp.is.co.za/networking/mail/transport/exim/exim3/
DISTFILES= exim-3.35.tar.bz2 exim-texinfo-3.30.tar.bz2
DISTFILES= exim-3.36.tar.bz2 exim-texinfo-3.30.tar.bz2
MAINTAINER= sheldonh@FreeBSD.org

View file

@ -1,2 +1,2 @@
MD5 (exim-3.35.tar.bz2) = dd1600dceb36e7b4295958446b209090
MD5 (exim-3.36.tar.bz2) = a18cbe15a2973714fe1aa68dffad63c4
MD5 (exim-texinfo-3.30.tar.bz2) = 6400cc7988036991b6bbe7ed9b4d9eeb

View file

@ -1,15 +0,0 @@
--- src/expand.c.orig Tue Feb 19 12:10:43 2002
+++ src/expand.c Wed Apr 3 18:11:56 2002
@@ -572,10 +572,9 @@
lseek(deliver_datafile, start_offset, SEEK_SET);
len = read(deliver_datafile, body, len);
if (len >= 0) body[len] = 0;
- while (*body != 0)
+ while (len > 0)
{
- if (*body == '\n') *body = ' ';
- body++;
+ if (body[--len] == '\n' || body[len] == 0) body[len] = ' ';
}
}
return (*ss == NULL)? "" : *ss;

View file

@ -1,62 +0,0 @@
--- src/filter.c.orig Tue Feb 19 12:10:43 2002
+++ src/filter.c Wed Apr 3 18:11:56 2002
@@ -2566,12 +2566,12 @@
BOOL
filter_runtest(int fd, BOOL is_system, BOOL dot_ended)
{
-int rc, body_len, action, header_size;
+int rc, body_len, body_end_len, action, header_size;
register int ch;
BOOL yield, delivered;
struct stat statbuf;
address_item *generated = NULL;
-char *body, *error, *filebuf, *s;
+char *error, *filebuf, *s;
/* Read the filter file into store as will be done by the director
in a real case. */
@@ -2653,7 +2653,7 @@
function as efficient as possible. Handling message_body_end is somewhat more
tedious. Pile it all into a circular buffer and sort out at the end. */
-message_body = body = store_malloc(message_body_visible + 1);
+message_body = store_malloc(message_body_visible + 1);
message_body_end = store_malloc(message_body_visible + 1);
s = message_body_end;
body_len = 0;
@@ -2729,24 +2729,25 @@
memcpy(temp, message_body_end, below);
memmove(message_body_end, s+1, above);
memcpy(message_body_end + above, temp, below);
- message_body_end[message_body_visible] = 0;
+ s = message_body_end + message_body_visible;
}
}
-else *s = 0;
-/* Convert newlines in the body variables to spaces */
+*s = 0;
+body_end_len = s - message_body_end;
-while (*body != 0)
+/* Convert newlines and nulls in the body variables to spaces */
+while (body_len > 0)
{
- if (*body == '\n') *body = ' ';
- body++;
+ if (message_body[--body_len] == '\n' || message_body[body_len] == 0)
+ message_body[body_len] = ' ';
}
-body = message_body_end;
-while (*body != 0)
+while (body_end_len > 0)
{
- if (*body == '\n') *body = ' ';
- body++;
+ if (message_body_end[--body_end_len] == '\n' ||
+ message_body_end[body_end_len] == 0)
+ message_body_end[body_end_len] = ' ';
}
/* Now pass the filter file to the function that interprets it. Because

View file

@ -6,13 +6,12 @@
#
PORTNAME= exim
PORTVERSION= 3.35
PORTREVISION= 1
PORTVERSION= 3.36
CATEGORIES= mail
MASTER_SITES= ftp://ftp.csx.cam.ac.uk/pub/software/email/exim/exim3/ \
http://www.exim.org/ftp/exim3/ \
ftp://ftp.is.co.za/networking/mail/transport/exim/exim3/
DISTFILES= exim-3.35.tar.bz2 exim-texinfo-3.30.tar.bz2
DISTFILES= exim-3.36.tar.bz2 exim-texinfo-3.30.tar.bz2
MAINTAINER= sheldonh@FreeBSD.org

View file

@ -1,2 +1,2 @@
MD5 (exim-3.35.tar.bz2) = dd1600dceb36e7b4295958446b209090
MD5 (exim-3.36.tar.bz2) = a18cbe15a2973714fe1aa68dffad63c4
MD5 (exim-texinfo-3.30.tar.bz2) = 6400cc7988036991b6bbe7ed9b4d9eeb

View file

@ -1,15 +0,0 @@
--- src/expand.c.orig Tue Feb 19 12:10:43 2002
+++ src/expand.c Wed Apr 3 18:11:56 2002
@@ -572,10 +572,9 @@
lseek(deliver_datafile, start_offset, SEEK_SET);
len = read(deliver_datafile, body, len);
if (len >= 0) body[len] = 0;
- while (*body != 0)
+ while (len > 0)
{
- if (*body == '\n') *body = ' ';
- body++;
+ if (body[--len] == '\n' || body[len] == 0) body[len] = ' ';
}
}
return (*ss == NULL)? "" : *ss;

View file

@ -1,62 +0,0 @@
--- src/filter.c.orig Tue Feb 19 12:10:43 2002
+++ src/filter.c Wed Apr 3 18:11:56 2002
@@ -2566,12 +2566,12 @@
BOOL
filter_runtest(int fd, BOOL is_system, BOOL dot_ended)
{
-int rc, body_len, action, header_size;
+int rc, body_len, body_end_len, action, header_size;
register int ch;
BOOL yield, delivered;
struct stat statbuf;
address_item *generated = NULL;
-char *body, *error, *filebuf, *s;
+char *error, *filebuf, *s;
/* Read the filter file into store as will be done by the director
in a real case. */
@@ -2653,7 +2653,7 @@
function as efficient as possible. Handling message_body_end is somewhat more
tedious. Pile it all into a circular buffer and sort out at the end. */
-message_body = body = store_malloc(message_body_visible + 1);
+message_body = store_malloc(message_body_visible + 1);
message_body_end = store_malloc(message_body_visible + 1);
s = message_body_end;
body_len = 0;
@@ -2729,24 +2729,25 @@
memcpy(temp, message_body_end, below);
memmove(message_body_end, s+1, above);
memcpy(message_body_end + above, temp, below);
- message_body_end[message_body_visible] = 0;
+ s = message_body_end + message_body_visible;
}
}
-else *s = 0;
-/* Convert newlines in the body variables to spaces */
+*s = 0;
+body_end_len = s - message_body_end;
-while (*body != 0)
+/* Convert newlines and nulls in the body variables to spaces */
+while (body_len > 0)
{
- if (*body == '\n') *body = ' ';
- body++;
+ if (message_body[--body_len] == '\n' || message_body[body_len] == 0)
+ message_body[body_len] = ' ';
}
-body = message_body_end;
-while (*body != 0)
+while (body_end_len > 0)
{
- if (*body == '\n') *body = ' ';
- body++;
+ if (message_body_end[--body_end_len] == '\n' ||
+ message_body_end[body_end_len] == 0)
+ message_body_end[body_end_len] = ' ';
}
/* Now pass the filter file to the function that interprets it. Because