Issue 167: Accept connections in subfolders
o According to the poster, the desired feature it supporting arbitrary paths in the request URL s.t. proxying doesn't break SIAB. o Rewrote poster's patch to void pointer arithmetic. Use of rindex() may prove hazardous to portability.
This commit is contained in:
parent
38fcacd6c7
commit
1139b09b62
1 changed files with 8 additions and 10 deletions
|
@ -613,17 +613,15 @@ static int shellInABoxHttpHandler(HttpConnection *http, void *arg,
|
|||
const HashMap *headers = httpGetHeaders(http);
|
||||
const char *contentType = getFromHashMap(headers, "content-type");
|
||||
|
||||
// Normalize the path info
|
||||
// Normalize the path info, present the final path element
|
||||
const char *pathInfo = urlGetPathInfo(url);
|
||||
while (*pathInfo == '/') {
|
||||
pathInfo++;
|
||||
}
|
||||
const char *endPathInfo;
|
||||
for (endPathInfo = pathInfo;
|
||||
*endPathInfo && *endPathInfo != '/';
|
||||
endPathInfo++) {
|
||||
}
|
||||
int pathInfoLength = endPathInfo - pathInfo;
|
||||
int pathInfoLength = 0;
|
||||
pathInfo = rindex (pathInfo, '/');
|
||||
if (pathInfo)
|
||||
++pathInfo;
|
||||
else
|
||||
pathInfo = ""; /* Cheap way to get an empty string */
|
||||
pathInfoLength = strlen (pathInfo);
|
||||
|
||||
if (!pathInfoLength ||
|
||||
(pathInfoLength == 5 && !memcmp(pathInfo, "plain", 5)) ||
|
||||
|
|
Loading…
Reference in a new issue