diff options
author | marcus <marcus@FreeBSD.org> | 2005-01-25 01:09:31 +0000 |
---|---|---|
committer | marcus <marcus@FreeBSD.org> | 2005-01-25 01:09:31 +0000 |
commit | dbabc9e32ffc2bd9c2105a7218819f7b0b4d198f (patch) | |
tree | b28204440f5897fed9bd5f81e940b00220056673 /mail | |
parent | 26005b659c9ca3a071bdf4cc64ca677ffacc1f69 (diff) | |
download | FreeBSD-ports-dbabc9e32ffc2bd9c2105a7218819f7b0b4d198f.zip FreeBSD-ports-dbabc9e32ffc2bd9c2105a7218819f7b0b4d198f.tar.gz |
Patch the Evolution integer overflow described at:
http://www.vuxml.org/freebsd/b8943e61-6e68-11d9-a9e7-0001020eed82.html
Obtained from: Evolution CVS
Diffstat (limited to 'mail')
-rw-r--r-- | mail/evolution/Makefile | 1 | ||||
-rw-r--r-- | mail/evolution/files/patch-camel_camel-lock-helper.c | 19 |
2 files changed, 20 insertions, 0 deletions
diff --git a/mail/evolution/Makefile b/mail/evolution/Makefile index 236d1a9..780dedf 100644 --- a/mail/evolution/Makefile +++ b/mail/evolution/Makefile @@ -7,6 +7,7 @@ PORTNAME= evolution PORTVERSION= 2.0.3 +PORTREVISION= 1 CATEGORIES= mail gnome MASTER_SITES= ${MASTER_SITE_GNOME} MASTER_SITE_SUBDIR= sources/${PORTNAME}/2.0 diff --git a/mail/evolution/files/patch-camel_camel-lock-helper.c b/mail/evolution/files/patch-camel_camel-lock-helper.c new file mode 100644 index 0000000..17bae50 --- /dev/null +++ b/mail/evolution/files/patch-camel_camel-lock-helper.c @@ -0,0 +1,19 @@ +=================================================================== +RCS file: /cvs/gnome/evolution/camel/Attic/camel-lock-helper.c,v +retrieving revision 1.5 +retrieving revision 1.5.74.1 +diff -u -r1.5 -r1.5.74.1 +--- camel/camel-lock-helper.c 2001/10/27 16:59:27 1.5 ++++ camel/camel-lock-helper.c 2005/01/20 07:28:44 1.5.74.1 +@@ -360,8 +360,9 @@ + switch(msg.id) { + case CAMEL_LOCK_HELPER_LOCK: + res = CAMEL_LOCK_HELPER_STATUS_NOMEM; +- path = malloc(msg.data+1); +- if (path != NULL) { ++ if (msg.data > 0xffff) { ++ res = CAMEL_LOCK_HELPER_STATUS_PROTOCOL; ++ } else if ((path = malloc(msg.data+1)) != NULL) { + res = CAMEL_LOCK_HELPER_STATUS_PROTOCOL; + len = read_n(STDIN_FILENO, path, msg.data); + if (len == msg.data) { |