ii

git clone https://orangeshoelaces.net/git/ii.git

18580a159febc9c9658d82d73b90b53895c1ec00

Author: Nico Golde on 09/02/2016

Committer: Nico Golde on 09/02/2016

add OpenBSD pledge support - thanks Gleydson Soares

Stats

config.mk | 3 +++
ii.c      | 8 ++++++++
2 files changed, 11 insertions(+)

Patch

diff --git a/config.mk b/config.mk
index afc28d5..2cf103e 100644
--- a/config.mk
+++ b/config.mk
@@ -25,3 +25,6 @@ LIBS        = -L${LIBDIR} -L/usr/lib -lc
 CC          = cc
 CFLAGS      = -g -O0 -W -Wall ${INCLUDES} -DVERSION=\"${VERSION}\"
 LDFLAGS     = ${LIBS}
+
+# OpenBSD pledge(2) support
+# CFLAGS+= -DUSE_PLEDGE
diff --git a/ii.c b/ii.c
index 745e29a..19f1b4c 100644
--- a/ii.c
+++ b/ii.c
@@ -490,6 +490,14 @@ int main(int argc, char *argv[]) {
 		}
 	}
 	irc = tcpopen(port);
+	
+	#ifdef USE_PLEDGE	/* OpenBSD pledge(2) support */
+		if (pledge("stdio rpath wpath cpath dpath", NULL) == -1) {
+			fputs("ii: pledge\\n", stderr);
+			exit(EXIT_FAILURE);
+		}
+	#endif
+
 	if(!snprintf(path, sizeof(path), "%s/%s", prefix, host)) {
 		fputs("ii: path to irc directory too long\n", stderr);
 		exit(EXIT_FAILURE);