Lines Matching refs:tsp
145 traverse_state_t *tsp, struct fst_node *pnp,
185 traverse_state_t *tsp; in new_tsp() local
186 tsp = ndmp_malloc(sizeof (traverse_state_t)); in new_tsp()
187 if (!tsp) in new_tsp()
190 tsp->ts_end = strchr(path, '\0'); in new_tsp()
191 if (*(tsp->ts_end-1) == '/') in new_tsp()
192 *--tsp->ts_end = '\0'; in new_tsp()
193 tsp->ts_ent = NULL; in new_tsp()
194 tsp->ts_dpos = 0; in new_tsp()
196 return (tsp); in new_tsp()
337 traverse_state_t *tsp; in traverse_post() local
395 tsp = new_tsp(path); in traverse_post()
396 if (!tsp) { in traverse_post()
402 tsp->ts_ent = tsp->ts_end; in traverse_post()
403 tsp->ts_fh = pfh; in traverse_post()
404 tsp->ts_st = pst; in traverse_post()
406 pn.tn_fh = &tsp->ts_fh; in traverse_post()
407 pn.tn_st = &tsp->ts_st; in traverse_post()
415 *tsp->ts_end = '\0'; in traverse_post()
423 rv = fs_readdir(&tsp->ts_fh, pn.tn_path, in traverse_post()
424 &tsp->ts_dpos, nm, &el, in traverse_post()
433 rv, path, tsp->ts_dpos); in traverse_post()
457 tsp->ts_dpos, nm); in traverse_post()
476 assert(tsp != NULL); in traverse_post()
477 if (cstack_push(sp, tsp, 0)) { in traverse_post()
498 lp = tsp->ts_end; in traverse_post()
499 *tsp->ts_end = '/'; in traverse_post()
500 (void) strcpy(tsp->ts_end + 1, nm); in traverse_post()
502 tsp = new_tsp(path); in traverse_post()
503 if (!tsp) { in traverse_post()
509 tsp->ts_fh = efh; in traverse_post()
510 tsp->ts_st = est; in traverse_post()
511 tsp->ts_ent = lp; in traverse_post()
512 pn.tn_fh = &tsp->ts_fh; in traverse_post()
513 pn.tn_st = &tsp->ts_st; in traverse_post()
553 lp = tsp->ts_ent; in traverse_post()
555 efh = tsp->ts_fh; in traverse_post()
556 est = tsp->ts_st; in traverse_post()
557 free(tsp); in traverse_post()
558 if (cstack_pop(sp, (void **)&tsp, (int *)NULL)) in traverse_post()
561 assert(tsp != NULL); in traverse_post()
562 pl = tsp->ts_end - path; in traverse_post()
566 pl, tsp, path); in traverse_post()
571 pn.tn_fh = &tsp->ts_fh; in traverse_post()
572 pn.tn_st = &tsp->ts_st; in traverse_post()
588 if (rv != 0 && tsp) { in traverse_post()
589 free(tsp->ts_fh.fh_fpath); in traverse_post()
590 free(tsp); in traverse_post()
614 while (!cstack_pop(sp, (void **)&tsp, (int *)NULL)) { in traverse_post()
617 free(tsp->ts_fh.fh_fpath); in traverse_post()
618 free(tsp); in traverse_post()
640 traverse_state_t *tsp, struct fst_node *pnp, dent_arg_t *darg) in traverse_level_nondir() argument
658 fd = open(tsp->ts_fh.fh_fpath, O_RDONLY); in traverse_level_nondir()
669 rv = fs_getdents(fd, buf, &len, pnp->tn_path, &tsp->ts_dpos, in traverse_level_nondir()
675 rv, pnp->tn_path, tsp->ts_dpos); in traverse_level_nondir()
756 traverse_state_t *tsp; in traverse_level() local
812 tsp = new_tsp(path); in traverse_level()
813 if (!tsp) { in traverse_level()
824 free(tsp); in traverse_level()
830 tsp->ts_ent = tsp->ts_end; in traverse_level()
831 tsp->ts_fh = pfh; in traverse_level()
832 tsp->ts_st = pst; in traverse_level()
834 pn.tn_fh = &tsp->ts_fh; in traverse_level()
835 pn.tn_st = &tsp->ts_st; in traverse_level()
841 free(tsp); in traverse_level()
846 free(tsp); in traverse_level()
857 *tsp->ts_end = '\0'; in traverse_level()
861 rv = traverse_level_nondir(ftp, tsp, &pn, &darg); in traverse_level()
864 free(tsp->ts_fh.fh_fpath); in traverse_level()
865 free(tsp); in traverse_level()
886 tsp->ts_dpos = 0; in traverse_level()
892 rv = fs_readdir(&tsp->ts_fh, pn.tn_path, in traverse_level()
893 &tsp->ts_dpos, nm, &el, &efh, in traverse_level()
900 rv, path, tsp->ts_dpos); in traverse_level()
920 tsp->ts_dpos, nm); in traverse_level()
969 if (cstack_push(sp, tsp, 0)) { in traverse_level()
974 lp = tsp->ts_end; in traverse_level()
975 *tsp->ts_end = '/'; in traverse_level()
976 (void) strcpy(tsp->ts_end + 1, nm); in traverse_level()
978 tsp = new_tsp(path); in traverse_level()
979 if (!tsp) in traverse_level()
984 tsp->ts_fh = efh; in traverse_level()
985 tsp->ts_st = est; in traverse_level()
986 tsp->ts_ent = lp; in traverse_level()
987 pn.tn_fh = &tsp->ts_fh; in traverse_level()
988 pn.tn_st = &tsp->ts_st; in traverse_level()
1002 if (tsp) { in traverse_level()
1003 free(tsp->ts_fh.fh_fpath); in traverse_level()
1004 free(tsp); in traverse_level()
1011 if (cstack_pop(sp, (void **)&tsp, (int *)NULL)) in traverse_level()
1020 *tsp->ts_end = '\0'; in traverse_level()
1021 pl = tsp->ts_end - path; in traverse_level()
1022 pn.tn_fh = &tsp->ts_fh; in traverse_level()
1023 pn.tn_st = &tsp->ts_st; in traverse_level()
1030 while (!cstack_pop(sp, (void **)&tsp, (int *)NULL)) { in traverse_level()
1033 free(tsp->ts_fh.fh_fpath); in traverse_level()
1034 free(tsp); in traverse_level()