Lines Matching defs:resolved
39 * char *realpath(const char *path, char resolved[PATH_MAX]);
42 * components. Returns (resolved) on success, or (NULL) on failure,
43 * in which case the path which caused trouble is left in (resolved).
46 realpath(const char *path, char *resolved)
62 if (resolved == NULL) {
63 resolved = malloc(PATH_MAX);
64 if (resolved == NULL)
72 resolved[0] = '/';
73 resolved[1] = '\0';
75 return (resolved);
79 if (getcwd(resolved, PATH_MAX) == NULL) {
81 free(resolved);
83 strlcpy(resolved, ".", PATH_MAX);
86 resolved_len = strlen(resolved);
113 if (resolved[resolved_len - 1] != '/') {
118 resolved[resolved_len++] = '/';
119 resolved[resolved_len] = '\0';
131 resolved[resolved_len - 1] = '\0';
132 q = strrchr(resolved, '/') + 1;
134 resolved_len = q - resolved;
144 resolved_len = strlcat(resolved, next_token, PATH_MAX);
149 if (lstat(resolved, &sb) != 0) {
152 return (resolved);
161 slen = readlink(resolved, symlink, sizeof(symlink) - 1);
166 resolved[1] = 0;
170 resolved[resolved_len - 1] = '\0';
171 q = strrchr(resolved, '/') + 1;
173 resolved_len = q - resolved;
201 * Remove trailing slash except when the resolved pathname
204 if (resolved_len > 1 && resolved[resolved_len - 1] == '/')
205 resolved[resolved_len - 1] = '\0';
206 return (resolved);
210 free(resolved);