aboutsummaryrefslogtreecommitdiffstats
path: root/editors/joe2
diff options
context:
space:
mode:
Diffstat (limited to 'editors/joe2')
-rw-r--r--editors/joe2/Makefile4
-rw-r--r--editors/joe2/files/patch-ad6
2 files changed, 4 insertions, 6 deletions
diff --git a/editors/joe2/Makefile b/editors/joe2/Makefile
index 617c590fea45..bda5ba0dfd74 100644
--- a/editors/joe2/Makefile
+++ b/editors/joe2/Makefile
@@ -7,7 +7,7 @@
PORTNAME= joe
PORTVERSION= 2.8
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= editors
MASTER_SITES= ftp://ftp.std.com/src/editors/
DISTNAME= ${PORTNAME}${PORTVERSION}
@@ -15,8 +15,6 @@ EXTRACT_SUFX= .tar.Z
MAINTAINER= toasty@dragondata.com
-FORBIDDEN= "follows hard link (not symlink) to DEADJOE--see http://www.securityfocus.com/archive/1/145305"
-
WRKSRC= ${WRKDIR}/joe
ALL_TARGET= joe
MAN1= joe.1
diff --git a/editors/joe2/files/patch-ad b/editors/joe2/files/patch-ad
index 47b1bb2131a0..38113e698cfc 100644
--- a/editors/joe2/files/patch-ad
+++ b/editors/joe2/files/patch-ad
@@ -1,5 +1,5 @@
---- b.c.orig Fri Jan 20 13:38:25 1995
-+++ b.c Fri Nov 24 00:24:52 2000
+--- b.c.orig Fri Jan 20 00:38:25 1995
++++ b.c Sun Dec 3 09:58:21 2000
@@ -21,6 +21,9 @@
#include <pwd.h>
#endif
@@ -83,7 +83,7 @@
- FILE *f=fopen("DEADJOE","a");
+ FILE *f;
+ struct stat sb;
-+ if ((lstat("DEADJOE", &sb) == 0) && (sb.st_mode & S_IFLNK) && (sb.st_uid != getuid()))
++ if ((lstat("DEADJOE", &sb) == 0) && (((sb.st_mode & S_IFLNK) && (sb.st_uid != getuid())) || (sb.st_nlink > 1)))
+ {
+ printf("*** JOE was aborted ");
+ if (sig) printf("by signal %d, cannot save DEADJOE due to unsafe symlink\n",sig);