Lines Matching refs:cur

129 	doff_t		cur;		/* offset of current entry */  member
677 ffs_build_dinode1(struct ufs1_dinode *dinp, dirbuf_t *dbufp, fsnode *cur, in ffs_build_dinode1() argument
682 struct stat *st = stampst.st_ino != 0 ? &stampst : &cur->inode->st; in ffs_build_dinode1()
685 dinp->di_mode = cur->inode->st.st_mode; in ffs_build_dinode1()
686 dinp->di_nlink = cur->inode->nlink; in ffs_build_dinode1()
687 dinp->di_size = cur->inode->st.st_size; in ffs_build_dinode1()
689 dinp->di_flags = cur->inode->st.st_flags; in ffs_build_dinode1()
692 dinp->di_uid = cur->inode->st.st_uid; in ffs_build_dinode1()
693 dinp->di_gid = cur->inode->st.st_gid; in ffs_build_dinode1()
706 if (cur == root) { /* "."; write dirbuf */ in ffs_build_dinode1()
709 } else if (S_ISBLK(cur->type) || S_ISCHR(cur->type)) { in ffs_build_dinode1()
712 ufs_rw32(cur->inode->st.st_rdev, fsopts->needswap); in ffs_build_dinode1()
713 } else if (S_ISLNK(cur->type)) { /* symlink */ in ffs_build_dinode1()
714 slen = strlen(cur->symlink); in ffs_build_dinode1()
716 memcpy(dinp->di_shortlink, cur->symlink, slen); in ffs_build_dinode1()
718 membuf = cur->symlink; in ffs_build_dinode1()
725 ffs_build_dinode2(struct ufs2_dinode *dinp, dirbuf_t *dbufp, fsnode *cur, in ffs_build_dinode2() argument
730 struct stat *st = stampst.st_ino != 0 ? &stampst : &cur->inode->st; in ffs_build_dinode2()
733 dinp->di_mode = cur->inode->st.st_mode; in ffs_build_dinode2()
734 dinp->di_nlink = cur->inode->nlink; in ffs_build_dinode2()
735 dinp->di_size = cur->inode->st.st_size; in ffs_build_dinode2()
737 dinp->di_flags = cur->inode->st.st_flags; in ffs_build_dinode2()
740 dinp->di_uid = cur->inode->st.st_uid; in ffs_build_dinode2()
741 dinp->di_gid = cur->inode->st.st_gid; in ffs_build_dinode2()
765 if (cur == root) { /* "."; write dirbuf */ in ffs_build_dinode2()
768 } else if (S_ISBLK(cur->type) || S_ISCHR(cur->type)) { in ffs_build_dinode2()
771 ufs_rw64(cur->inode->st.st_rdev, fsopts->needswap); in ffs_build_dinode2()
772 } else if (S_ISLNK(cur->type)) { /* symlink */ in ffs_build_dinode2()
773 slen = strlen(cur->symlink); in ffs_build_dinode2()
775 memcpy(dinp->di_shortlink, cur->symlink, slen); in ffs_build_dinode2()
777 membuf = cur->symlink; in ffs_build_dinode2()
786 fsnode *cur; in ffs_populate_dir() local
806 for (cur = root; cur != NULL; cur = cur->next) { in ffs_populate_dir()
807 if ((cur->inode->flags & FI_ALLOCATED) == 0) { in ffs_populate_dir()
808 cur->inode->flags |= FI_ALLOCATED; in ffs_populate_dir()
809 if (cur == root && cur->parent != NULL) in ffs_populate_dir()
810 cur->inode->ino = cur->parent->inode->ino; in ffs_populate_dir()
812 cur->inode->ino = fsopts->curinode; in ffs_populate_dir()
816 ffs_make_dirbuf(&dirbuf, cur->name, cur, fsopts->needswap); in ffs_populate_dir()
817 if (cur == root) { /* we're at "."; add ".." */ in ffs_populate_dir()
819 cur->parent == NULL ? cur : cur->parent->first, in ffs_populate_dir()
822 } else if (cur->child != NULL) in ffs_populate_dir()
840 for (cur = root; cur != NULL; cur = cur->next) { in ffs_populate_dir()
841 if (cur->inode->flags & FI_WRITTEN) in ffs_populate_dir()
843 cur->inode->flags |= FI_WRITTEN; in ffs_populate_dir()
845 if (cur->contents == NULL) { in ffs_populate_dir()
846 if (snprintf(path, sizeof(path), "%s/%s/%s", cur->root, in ffs_populate_dir()
847 cur->path, cur->name) >= (int)sizeof(path)) in ffs_populate_dir()
851 if (cur->child != NULL) in ffs_populate_dir()
856 membuf = ffs_build_dinode1(&din.ffs1_din, &dirbuf, cur, in ffs_populate_dir()
859 membuf = ffs_build_dinode2(&din.ffs2_din, &dirbuf, cur, in ffs_populate_dir()
864 cur->inode->ino, inode_type(cur->type)); in ffs_populate_dir()
865 if (cur->inode->nlink > 1) in ffs_populate_dir()
866 printf(", nlink %d", cur->inode->nlink); in ffs_populate_dir()
871 ffs_write_file(&din, cur->inode->ino, membuf, fsopts); in ffs_populate_dir()
872 } else if (S_ISREG(cur->type)) { in ffs_populate_dir()
873 ffs_write_file(&din, cur->inode->ino, in ffs_populate_dir()
874 (cur->contents) ? cur->contents : path, fsopts); in ffs_populate_dir()
876 assert (! S_ISDIR(cur->type)); in ffs_populate_dir()
877 ffs_write_inode(&din, cur->inode->ino, fsopts); in ffs_populate_dir()
886 for (cur = root; cur != NULL; cur = cur->next) { in ffs_populate_dir()
887 if (cur->child == NULL) in ffs_populate_dir()
890 cur->name) >= sizeof(path)) in ffs_populate_dir()
892 if (! ffs_populate_dir(path, cur->child, fsopts)) in ffs_populate_dir()
1027 dir, dbuf->size, dbuf->cur); in ffs_dump_dirbuf()
1061 dp = (struct direct *)(dbuf->buf + dbuf->cur); in ffs_make_dirbuf()
1070 dbuf->size, dbuf->cur, llen, in ffs_make_dirbuf()
1074 if (reclen + dbuf->cur + llen > roundup(dbuf->size, DIRBLKSIZ)) { in ffs_make_dirbuf()
1082 dbuf->cur = dbuf->size - DIRBLKSIZ; in ffs_make_dirbuf()
1085 dbuf->cur += llen; in ffs_make_dirbuf()
1087 dp = (struct direct *)(dbuf->buf + dbuf->cur); in ffs_make_dirbuf()
1089 dp->d_reclen = ufs_rw16(dbuf->size - dbuf->cur, needswap); in ffs_make_dirbuf()