diff --git a/apps/s_server.c b/apps/s_server.c index 2e61799fd..97e477bde 100644 --- a/apps/s_server.c +++ b/apps/s_server.c @@ -1361,9 +1361,6 @@ static int www_body(char *hostname, int s, unsigned char *context) switch (dot) { - case 0: - dot = (e[0] == '/') ? 1 : 0; - break; case 1: dot = (e[0] == '.') ? 2 : 0; break; @@ -1374,6 +1371,8 @@ static int www_body(char *hostname, int s, unsigned char *context) dot = (e[0] == '/') ? -1 : 0; break; } + if (dot == 0) + dot = (e[0] == '/') ? 1 : 0; } dot = (dot == 3) || (dot == -1); /* filename contains ".." component */