Lines Matching refs:pglob

209     glob_t *pglob)  in _glob_ext()  argument
220 pglob->gl_pathc = 0; in _glob_ext()
221 pglob->gl_pathn = 0; in _glob_ext()
222 pglob->gl_pathv = NULL; in _glob_ext()
224 pglob->gl_statv = NULL; in _glob_ext()
226 pglob->gl_offs = 0; in _glob_ext()
228 pglob->gl_flags = flags & ~GLOB_MAGCHAR; in _glob_ext()
229 pglob->gl_matchc = 0; in _glob_ext()
234 if (pglob->gl_offs >= INT_MAX || pglob->gl_pathc >= INT_MAX || in _glob_ext()
235 pglob->gl_pathc >= INT_MAX - pglob->gl_offs - 1) in _glob_ext()
287 return (globexp1(patbuf, pglob, &limit, errfunc)); in _glob_ext()
289 return (glob0(patbuf, pglob, &limit, errfunc)); in _glob_ext()
298 globexp1(const wcat_t *pattern, glob_t *pglob, struct glob_lim *limitp, in globexp1() argument
306 return (glob0(pattern, pglob, limitp, errfunc)); in globexp1()
309 return (globexp2(ptr, pattern, pglob, limitp, errfunc)); in globexp1()
311 return (glob0(pattern, pglob, limitp, errfunc)); in globexp1()
321 globexp2(const wcat_t *ptr, const wcat_t *pattern, glob_t *pglob, in globexp2() argument
360 return (glob0(patbuf, pglob, limitp, errfunc)); in globexp2()
405 rv = globexp1(patbuf, pglob, limitp, errfunc); in globexp2()
428 glob_t *pglob) in globtilde() argument
438 if (pattern->w_wc != TILDE || !(pglob->gl_flags & GLOB_TILDE)) in globtilde()
555 glob0(const wcat_t *pattern, glob_t *pglob, struct glob_lim *limitp, in glob0() argument
564 qpatnext = globtilde(pattern, patbuf, PATH_MAX, pglob); in glob0()
565 oldpathc = pglob->gl_pathc; in glob0()
613 !(pglob->gl_flags & GLOB_NOCHECK)) in glob0()
636 pglob->gl_flags |= GLOB_MAGCHAR; in glob0()
646 pglob->gl_flags |= GLOB_MAGCHAR; in glob0()
656 pglob->gl_flags |= GLOB_MAGCHAR; in glob0()
677 if ((err = glob1(patbuf, patbuf+PATH_MAX-1, pglob, limitp, errfunc)) in glob0()
687 if (pglob->gl_pathc == oldpathc) { in glob0()
688 if ((pglob->gl_flags & GLOB_NOCHECK) || in glob0()
689 ((pglob->gl_flags & GLOB_NOMAGIC) && in glob0()
690 !(pglob->gl_flags & GLOB_MAGCHAR))) in glob0()
691 return (globextend(pattern, pglob, limitp, NULL)); in glob0()
695 if (!(pglob->gl_flags & GLOB_NOSORT)) { in glob0()
696 if ((pglob->gl_flags & GLOB_KEEPSTAT)) { in glob0()
700 int n = pglob->gl_pathc - oldpathc; in glob0()
701 int o = pglob->gl_offs + oldpathc; in glob0()
707 path_stat[i].gps_path = pglob->gl_pathv[o + i]; in glob0()
708 path_stat[i].gps_stat = pglob->gl_statv[o + i]; in glob0()
712 pglob->gl_pathv[o + i] = path_stat[i].gps_path; in glob0()
713 pglob->gl_statv[o + i] = path_stat[i].gps_stat; in glob0()
717 qsort(pglob->gl_pathv + pglob->gl_offs + oldpathc, in glob0()
718 pglob->gl_pathc - oldpathc, sizeof (char *), in glob0()
741 glob1(wcat_t *pattern, wcat_t *pattern_last, glob_t *pglob, in glob1() argument
751 pattern, pattern_last, pglob, limitp, errfunc)); in glob1()
762 glob_t *pglob, struct glob_lim *limitp, int (*errfunc)(const char *, int)) in glob2() argument
777 if ((pglob->gl_flags & GLOB_LIMIT) && in glob2()
786 if (g_lstat(pathbuf, &sb, pglob)) in glob2()
789 if (((pglob->gl_flags & GLOB_MARK) && in glob2()
794 (g_stat(pathbuf, &sb, pglob) == 0) && in glob2()
803 ++pglob->gl_matchc; in glob2()
804 return (globextend(pathbuf, pglob, limitp, &sb)); in glob2()
830 pglob, limitp, errfunc)); in glob2()
839 wcat_t *restpattern_last, glob_t *pglob, struct glob_lim *limitp, in glob3() argument
861 if ((dirp = g_opendir(pathbuf, pglob)) == NULL) { in glob3()
867 pglob->gl_flags & GLOB_ERR) in glob3()
876 if (pglob->gl_flags & GLOB_ALTDIRFUNC) in glob3()
877 readdirfunc = pglob->gl_readdir; in glob3()
887 if ((pglob->gl_flags & GLOB_LIMIT) && in glob3()
937 restpattern, restpattern_last, pglob, limitp, in glob3()
943 if (pglob->gl_flags & GLOB_ALTDIRFUNC) in glob3()
944 (*pglob->gl_closedir)(dirp); in glob3()
964 globextend(const wcat_t *path, glob_t *pglob, struct glob_lim *limitp, in globextend() argument
976 allocn = pglob->gl_pathn; in globextend()
977 newn = 2 + pglob->gl_pathc + pglob->gl_offs; in globextend()
980 pathv = pglob->gl_pathv; in globextend()
981 if ((pglob->gl_flags & GLOB_KEEPSTAT) != 0) in globextend()
982 statv = pglob->gl_statv; in globextend()
985 allocn = pglob->gl_offs + INITIAL; in globextend()
987 if (pglob->gl_offs >= INT_MAX || in globextend()
988 pglob->gl_pathc >= INT_MAX || in globextend()
993 for (i = pglob->gl_offs; i < (ssize_t)(newn - 2); in globextend()
995 if (pglob->gl_pathv && pglob->gl_pathv[i]) in globextend()
996 free(pglob->gl_pathv[i]); in globextend()
997 if ((pglob->gl_flags & GLOB_KEEPSTAT) != 0 && in globextend()
998 pglob->gl_statv && pglob->gl_statv[i]) in globextend()
999 free(pglob->gl_statv[i]); in globextend()
1001 free(pglob->gl_pathv); in globextend()
1002 pglob->gl_pathv = NULL; in globextend()
1003 if ((pglob->gl_flags & GLOB_KEEPSTAT) != 0) { in globextend()
1004 free(pglob->gl_statv); in globextend()
1005 pglob->gl_statv = NULL; in globextend()
1010 pathv = reallocarray(pglob->gl_pathv, allocn, sizeof (*pathv)); in globextend()
1013 if ((pglob->gl_flags & GLOB_KEEPSTAT) != 0) { in globextend()
1015 statv = reallocarray(pglob->gl_statv, allocn, in globextend()
1021 pglob->gl_pathn = allocn; in globextend()
1023 if (pglob->gl_pathv == NULL && pglob->gl_offs > 0) { in globextend()
1025 pathv += pglob->gl_offs; in globextend()
1026 for (i = pglob->gl_offs; --i >= 0; ) in globextend()
1029 pglob->gl_pathv = pathv; in globextend()
1031 if ((pglob->gl_flags & GLOB_KEEPSTAT) != 0) { in globextend()
1032 if (pglob->gl_statv == NULL && pglob->gl_offs > 0) { in globextend()
1034 statv += pglob->gl_offs; in globextend()
1035 for (i = pglob->gl_offs; --i >= 0; ) in globextend()
1038 pglob->gl_statv = statv; in globextend()
1040 statv[pglob->gl_offs + pglob->gl_pathc] = NULL; in globextend()
1043 if ((statv[pglob->gl_offs + pglob->gl_pathc] = in globextend()
1046 (void) memcpy(statv[pglob->gl_offs + pglob->gl_pathc], in globextend()
1049 statv[pglob->gl_offs + pglob->gl_pathc + 1] = NULL; in globextend()
1068 pathv[pglob->gl_offs + pglob->gl_pathc++] = copy; in globextend()
1070 pathv[pglob->gl_offs + pglob->gl_pathc] = NULL; in globextend()
1072 if ((pglob->gl_flags & GLOB_LIMIT) && in globextend()
1192 _globfree_ext(glob_t *pglob) in _globfree_ext() argument
1197 if (pglob->gl_pathv != NULL) { in _globfree_ext()
1198 pp = pglob->gl_pathv + pglob->gl_offs; in _globfree_ext()
1199 for (i = pglob->gl_pathc; i--; ++pp) in _globfree_ext()
1201 free(pglob->gl_pathv); in _globfree_ext()
1202 pglob->gl_pathv = NULL; in _globfree_ext()
1204 if ((pglob->gl_flags & GLOB_KEEPSTAT) != 0 && in _globfree_ext()
1205 pglob->gl_statv != NULL) { in _globfree_ext()
1206 for (i = 0; i < pglob->gl_pathc; i++) { in _globfree_ext()
1207 free(pglob->gl_statv[i]); in _globfree_ext()
1209 free(pglob->gl_statv); in _globfree_ext()
1210 pglob->gl_statv = NULL; in _globfree_ext()
1215 g_opendir(wcat_t *str, glob_t *pglob) in g_opendir() argument
1226 if (pglob->gl_flags & GLOB_ALTDIRFUNC) in g_opendir()
1227 return ((*pglob->gl_opendir)(buf)); in g_opendir()
1233 g_lstat(wcat_t *fn, struct stat *sb, glob_t *pglob) in g_lstat() argument
1239 if (pglob->gl_flags & GLOB_ALTDIRFUNC) in g_lstat()
1240 return ((*pglob->gl_lstat)(buf, sb)); in g_lstat()
1245 g_stat(wcat_t *fn, struct stat *sb, glob_t *pglob) in g_stat() argument
1251 if (pglob->gl_flags & GLOB_ALTDIRFUNC) in g_stat()
1252 return ((*pglob->gl_stat)(buf, sb)); in g_stat()
1291 old_glob_t *pglob) in old_glob() argument
1306 gl.gl_pathc = pglob->gl_pathc; in old_glob()
1307 gl.gl_pathv = pglob->gl_pathv; in old_glob()
1308 gl.gl_offs = pglob->gl_offs; in old_glob()
1309 gl.gl_pathp = pglob->gl_pathp; in old_glob()
1310 gl.gl_pathn = pglob->gl_pathn; in old_glob()
1318 pglob->gl_pathc = gl.gl_pathc; in old_glob()
1319 pglob->gl_pathv = gl.gl_pathv; in old_glob()
1320 pglob->gl_offs = gl.gl_offs; in old_glob()
1321 pglob->gl_pathp = gl.gl_pathp; in old_glob()
1322 pglob->gl_pathn = gl.gl_pathn; in old_glob()
1329 old_globfree(old_glob_t *pglob) in old_globfree() argument
1340 gl.gl_pathc = pglob->gl_pathc; in old_globfree()
1341 gl.gl_pathv = pglob->gl_pathv; in old_globfree()
1342 gl.gl_offs = pglob->gl_offs; in old_globfree()
1343 gl.gl_pathp = pglob->gl_pathp; in old_globfree()
1344 gl.gl_pathn = pglob->gl_pathn; in old_globfree()
1352 pglob->gl_pathc = gl.gl_pathc; in old_globfree()
1353 pglob->gl_pathv = gl.gl_pathv; in old_globfree()
1354 pglob->gl_offs = gl.gl_offs; in old_globfree()
1355 pglob->gl_pathp = gl.gl_pathp; in old_globfree()
1356 pglob->gl_pathn = gl.gl_pathn; in old_globfree()