aboutsummaryrefslogtreecommitdiff
path: root/serverutils.d
blob: d5b9836588e649dbac9bd9053873241ce1ebbfb6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
bool inRoot(char[] path) {
  auto level = 0;
  if (path[0] == '/') return false; 
  while (path.length > 0) {
    if (path[0] == '/') {
      level++;
      path = path[1..$];
    } else if (path[0] == '.' && path[1] == '.' && path[2] == '/') {
      level--;
      path = path[3..$];
    } else {
      path = path[1..$];
    }
    if (level < 0) return false;
  }
  return true;
}