static struct dirent *local_readdir(FsContext *ctx, V9fsFidOpenState *fs)

{

    struct dirent *entry;



again:

    entry = readdir(fs->dir.stream);

    if (!entry) {

        return NULL;

    }



    if (ctx->export_flags & V9FS_SM_MAPPED) {

        entry->d_type = DT_UNKNOWN;

    } else if (ctx->export_flags & V9FS_SM_MAPPED_FILE) {

        if (local_is_mapped_file_metadata(ctx, entry->d_name)) {

            /* skip the meta data directory */

            goto again;

        }

        entry->d_type = DT_UNKNOWN;

    }



    return entry;

}

static struct dirent *local_readdir(FsContext *ctx, V9fsFidOpenState *fs)

{

    struct dirent *entry;



again:

    entry = readdir(fs->dir.stream);

    if (!entry) {

        return NULL;

    }



    if (ctx->export_flags & V9FS_SM_MAPPED) {

        entry->d_type = DT_UNKNOWN;

    } else if (ctx->export_flags & V9FS_SM_MAPPED_FILE) {

        if (local_is_mapped_file_metadata(ctx, entry->d_name)) {

            

            goto again;

        }

        entry->d_type = DT_UNKNOWN;

    }



    return entry;

}

static struct dirent *FUNC_0(FsContext *VAR_0, V9fsFidOpenState *VAR_1)

{

    struct dirent *VAR_2;



again:

    VAR_2 = readdir(VAR_1->dir.stream);

    if (!VAR_2) {

        return NULL;

    }



    if (VAR_0->export_flags & V9FS_SM_MAPPED) {

        VAR_2->d_type = DT_UNKNOWN;

    } else if (VAR_0->export_flags & V9FS_SM_MAPPED_FILE) {

        if (local_is_mapped_file_metadata(VAR_0, VAR_2->d_name)) {

            

            goto again;

        }

        VAR_2->d_type = DT_UNKNOWN;

    }



    return VAR_2;

}

static struct dirent *FUNC_0(FsContext *VAR_0, V9fsFidOpenState *VAR_1)
{ struct dirent *VAR_2; again:
VAR_2 = readdir(VAR_1->dir.stream); if (!VAR_2) { return NULL; } if (VAR_0->export_flags & V9FS_SM_MAPPED) { VAR_2->d_type = DT_UNKNOWN; } else if (VAR_0->export_flags & V9FS_SM_MAPPED_FILE) { if (local_is_mapped_file_metadata(VAR_0, VAR_2->d_name)) { goto again; } VAR_2->d_type = DT_UNKNOWN; } return VAR_2; }