summaryrefslogtreecommitdiff
path: root/usr.bin
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@cvs.openbsd.org>2016-07-09 19:44:53 +0000
committerIngo Schwarze <schwarze@cvs.openbsd.org>2016-07-09 19:44:53 +0000
commit8d58ff11ef6f44f799a7ac5057b2930b768a037a (patch)
tree827158a68db2e7e2a125fbfe9b7ac845b50e98bf /usr.bin
parente36260ce601b47c7d2f2c2e753b649b4b6435cdd (diff)
Do not treat PATH_INFO as a complete path if it doesn't contain
a manpath. For example, this makes http://man.openbsd.org/mandoc work as expected. Bug reported by tb@, reminded by Svyatoslav Mishyn.
Diffstat (limited to 'usr.bin')
-rw-r--r--usr.bin/mandoc/cgi.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/usr.bin/mandoc/cgi.c b/usr.bin/mandoc/cgi.c
index 1a16b60407f..4b9e8da9690 100644
--- a/usr.bin/mandoc/cgi.c
+++ b/usr.bin/mandoc/cgi.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cgi.c,v 1.71 2016/05/28 13:40:44 schwarze Exp $ */
+/* $OpenBSD: cgi.c,v 1.72 2016/07/09 19:44:52 schwarze Exp $ */
/*
* Copyright (c) 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2014, 2015, 2016 Ingo Schwarze <schwarze@usta.de>
@@ -1024,7 +1024,7 @@ main(void)
if (*path != '\0') {
parse_path_info(&req, path);
- if (access(path, F_OK) == -1)
+ if (req.q.manpath == NULL || access(path, F_OK) == -1)
path = "";
} else if ((querystring = getenv("QUERY_STRING")) != NULL)
parse_query_string(&req, querystring);