summaryrefslogtreecommitdiffstats
path: root/security/cyrus-sasl
diff options
context:
space:
mode:
authorume <ume@FreeBSD.org>2004-11-15 09:50:05 +0000
committerume <ume@FreeBSD.org>2004-11-15 09:50:05 +0000
commit6250bab74055a82ecbed628f4b4968ed48724cc4 (patch)
treedcf914430de56d74fd77238951fb15b00c14a965 /security/cyrus-sasl
parenta10edf5e56aac1144b22900bc7cb5ae7ef506a76 (diff)
downloadFreeBSD-ports-6250bab74055a82ecbed628f4b4968ed48724cc4.zip
FreeBSD-ports-6250bab74055a82ecbed628f4b4968ed48724cc4.tar.gz
fix CAN-2004-0884.
Obtained from: security/cyrus-sasl2
Diffstat (limited to 'security/cyrus-sasl')
-rw-r--r--security/cyrus-sasl/Makefile2
-rw-r--r--security/cyrus-sasl/files/patch-lib::common.c19
2 files changed, 20 insertions, 1 deletions
diff --git a/security/cyrus-sasl/Makefile b/security/cyrus-sasl/Makefile
index 64512159..75ff822 100644
--- a/security/cyrus-sasl/Makefile
+++ b/security/cyrus-sasl/Makefile
@@ -7,7 +7,7 @@
PORTNAME= cyrus-sasl
PORTVERSION= 1.5.28
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= security ipv6
MAINTAINER= ports@FreeBSD.org
diff --git a/security/cyrus-sasl/files/patch-lib::common.c b/security/cyrus-sasl/files/patch-lib::common.c
new file mode 100644
index 0000000..8de08cf
--- /dev/null
+++ b/security/cyrus-sasl/files/patch-lib::common.c
@@ -0,0 +1,19 @@
+Index: lib/common.c
+diff -u lib/common.c.orig lib/common.c
+--- lib/common.c.orig Mon Nov 15 18:23:04 2004
++++ lib/common.c Mon Nov 15 18:24:43 2004
+@@ -684,7 +684,13 @@
+
+ if (! path_dest)
+ return SASL_BADPARAM;
+- path = getenv(SASL_PATH_ENV_VAR);
++
++ path = NULL;
++
++ /* Honor external variable only in a safe environment */
++ if (getuid() == geteuid() && getgid() == getegid())
++ path = getenv(SASL_PATH_ENV_VAR);
++
+ if (! path)
+ path = PLUGINDIR;
+ return _sasl_strdup(path, path_dest, NULL);
OpenPOWER on IntegriCloud