Lines Matching refs:path
79 chdir(const char *path) in chdir() argument
94 len = strlen(path); in chdir()
95 if (path[0] == '/') { in chdir()
97 bcopy(path, base, len + 1); in chdir()
99 while (len && path[len-1] == '/') in chdir()
104 bcopy(path, base + dlen, len); in chdir()
154 rel_open(const char *path, char **abspathp, int flags) in rel_open() argument
162 if (path[0] != '/') { in rel_open()
163 ptr = malloc(strlen(DirBase) + strlen(path) + 1); in rel_open()
164 sprintf(ptr, "%s%s", DirBase, path); in rel_open()
175 fd = open(path, flags); in rel_open()
177 *abspathp = strdup(path); in rel_open()
186 rel_stat(const char *path, struct stat *st) in rel_stat() argument
194 if (path[0] != '/') { in rel_stat()
195 ptr = malloc(strlen(DirBase) + strlen(path) + 1); in rel_stat()
196 sprintf(ptr, "%s%s", DirBase, path); in rel_stat()
200 res = stat(path, st); in rel_stat()
211 rel_rootpath(const char *path) in rel_rootpath() argument
218 if (strncmp(path, "/boot/", sizeof("/boot/")-1) == 0) { in rel_rootpath()
219 rootpath = strdup(path); in rel_rootpath()
220 } else if (path[0] == '/') { in rel_rootpath()
221 rootpath = malloc(strlen(path) + sizeof("/boot")); in rel_rootpath()
222 sprintf(rootpath, "/boot%s", path); in rel_rootpath()
224 rootpath = malloc(strlen(DirBase) + strlen(path) + in rel_rootpath()
226 sprintf(rootpath, "/boot%s%s", DirBase, path); in rel_rootpath()