Home | History | Annotate | Download | only in fsck_udf

Lines Matching defs:cur_node

3855 	struct udf_fsck_node *cur_node, *next_node;
3898 TAILQ_FOREACH(cur_node, &fs_nodes, next) {
3900 error = udf_read_node_dscr(cur_node, &dscr);
3902 error = udf_extract_node_info(cur_node, dscr, 0);
3905 udf_node_path(cur_node));
3906 udf_recursive_keep(cur_node);
3907 cur_node->fsck_flags |= FSCK_NODE_FLAG_NOTFOUND;
3908 if (cur_node->parent) {
3909 if (cur_node->fsck_flags & FSCK_NODE_FLAG_STREAM_DIR)
3910 cur_node->parent->fsck_flags |=
3913 cur_node->parent->fsck_flags |=
3922 pwarn("Processing %s\n", udf_node_path(cur_node));
3927 if (cur_node->parent &&
3928 (cur_node->parent->fsck_flags & FSCK_NODE_FLAG_STREAM_DIR) &&
3929 (cur_node->fsck_flags & FSCK_NODE_FLAG_DIRECTORY))
3932 udf_node_path(cur_node));
3934 udf_recursive_keep(cur_node);
3935 cur_node->fsck_flags |= FSCK_NODE_FLAG_NOTFOUND;
3936 cur_node->parent->fsck_flags |=
3941 error = udf_process_node_pass1(cur_node, dscr);
3955 TAILQ_FOREACH(cur_node, &fs_nodes, next) {
3956 if (cur_node->fsck_flags & FSCK_NODE_FLAG_NOTFOUND)
3959 error = udf_read_node_dscr(cur_node, &dscr);
3963 pwarn("Processing %s\n", udf_node_path(cur_node));
3969 udf_rw16(cur_node->loc.loc.part_num),
3972 (void *) cur_node);
3985 TAILQ_FOREACH(cur_node, &fs_nodes, next) {
3986 if (cur_node->fsck_flags & FSCK_NODE_FLAG_OVERLAP) {
3988 udf_node_path(cur_node));
4010 TAILQ_FOREACH_SAFE(cur_node, &fs_nodes, next, next_node) {
4012 if (cur_node->fsck_flags & FSCK_NODE_FLAG_NOTFOUND)
4016 udf_shadow_VAT_in_use(&cur_node->loc);
4019 if (cur_node->found_link_count != cur_node->link_count) {
4022 udf_node_path(cur_node),
4023 cur_node->found_link_count, cur_node->link_count);
4024 cur_node->link_count = cur_node->found_link_count;
4025 udf_recursive_keep(cur_node);
4026 cur_node->fsck_flags |= FSCK_NODE_FLAG_DIRTY;
4030 if (cur_node->declared.obj_size != cur_node->found.obj_size) {
4033 udf_node_path(cur_node),
4034 cur_node->found.obj_size, cur_node->declared.obj_size);
4035 cur_node->declared.obj_size = cur_node->found.obj_size;
4036 udf_recursive_keep(cur_node);
4037 cur_node->fsck_flags |= FSCK_NODE_FLAG_DIRTY;
4044 if (cur_node->parent) {
4045 if (cur_node->fsck_flags & FSCK_NODE_FLAG_NEW_UNIQUE_ID) {
4047 udf_node_path(cur_node));
4048 cur_node->unique_id = udf_rw64(context.unique_id);
4050 udf_recursive_keep(cur_node);
4051 cur_node->fsck_flags |= FSCK_NODE_FLAG_DIRTY;
4052 if (cur_node->fsck_flags & FSCK_NODE_FLAG_DIRECTORY)
4053 cur_node->fsck_flags |= FSCK_NODE_FLAG_REPAIRDIR;
4054 cur_node->parent->fsck_flags |= FSCK_NODE_FLAG_REPAIRDIR;
4056 if (cur_node->fsck_flags & FSCK_NODE_FLAG_COPY_PARENT_ID) {
4059 udf_node_path(cur_node));
4062 if (cur_node->unique_id != 0) {
4064 udf_node_path(cur_node));
4065 cur_node->unique_id = 0;
4066 cur_node->fsck_flags |=
4072 if (cur_node->parent)
4073 if (cur_node->parent->fsck_flags & FSCK_NODE_FLAG_REPAIRDIR)
4074 cur_node->fsck_flags |= FSCK_NODE_FLAG_KEEP;
4077 if (!(cur_node->fsck_flags & FSCK_NODE_FLAG_STREAM)) {
4079 int link_count = cur_node->found_link_count;
4082 if (cur_node->fsck_flags & FSCK_NODE_FLAG_HAS_STREAM_DIR)
4085 if (cur_node->fsck_flags & FSCK_NODE_FLAG_DIRECTORY)
4095 TAILQ_FOREACH_SAFE(cur_node, &fs_nodes, next, next_node) {
4097 if (FSCK_NODE_FLAG_OK(cur_node->fsck_flags)) {
4098 TAILQ_REMOVE(&fs_nodes, cur_node, next);
4099 LIST_REMOVE(cur_node, next_hash);
4100 free(cur_node->directory);
4101 bzero(cur_node, sizeof(struct udf_fsck_node));
4102 free(cur_node);
4122 TAILQ_FOREACH_SAFE(cur_node, &fs_nodes, next, next_node) {
4124 if (cur_node->fsck_flags & FSCK_NODE_FLAG_NOTFOUND)
4128 if (FSCK_NODE_FLAG_OK(cur_node->fsck_flags))
4131 error = udf_read_node_dscr(cur_node, &dscr);
4135 if (cur_node->fsck_flags & FSCK_NODE_FLAG_REPAIRDIR)
4136 udf_node_pass3_repairdir(cur_node, dscr);
4139 if (cur_node->fsck_flags & FSCK_NODE_FLAG_WIPE_STREAM_DIR) {
4142 cur_node->fsck_flags |= FSCK_NODE_FLAG_DIRTY;
4145 if (cur_node->fsck_flags & FSCK_NODE_FLAG_DIRTY)
4146 udf_node_pass3_writeout_update(cur_node, dscr);
4158 struct udf_fsck_node *cur_node, *next_node;
4163 TAILQ_FOREACH_SAFE(cur_node, &fs_nodes, next, next_node) {
4164 TAILQ_REMOVE(&fs_nodes, cur_node, next);
4165 LIST_REMOVE(cur_node, next_hash);
4166 free(cur_node->directory);
4167 free(cur_node);