const char *fname = entry->fname;
const char *list_path, *root_dir;
enum imap_match_result match;
- struct stat st;
int ret;
/* skip . and .. */
/* get the info.flags using callback */
ret = ctx->ctx.list->v.
get_mailbox_flags(ctx->ctx.list, ctx->dir->real_path, fname,
- entry->type, &st, &ctx->info.flags);
+ entry->type, &ctx->info.flags);
if (ret <= 0)
return ret;
static bool
maildir_get_type(const char *dir, const char *fname,
enum mailbox_list_file_type *type_r,
- struct stat *st_r,
enum mailbox_info_flags *flags)
{
const char *path;
return FALSE;
}
- *st_r = st;
if (S_ISDIR(st.st_mode)) {
*type_r = MAILBOX_LIST_FILE_TYPE_DIR;
return TRUE;
int maildir_list_get_mailbox_flags(struct mailbox_list *list,
const char *dir, const char *fname,
enum mailbox_list_file_type type,
- struct stat *st_r,
enum mailbox_info_flags *flags_r)
{
- memset(st_r, 0, sizeof(*st_r));
*flags_r = 0;
switch (type) {
return 1;
}
- if (!maildir_get_type(dir, fname, &type, st_r, flags_r))
+ if (!maildir_get_type(dir, fname, &type, flags_r))
return 0;
break;
}
enum imap_match_result match;
struct mailbox_node *node;
bool created;
- struct stat st;
int ret;
fname = d->d_name;
T_BEGIN {
ret = list->v.get_mailbox_flags(list, ctx->dir, fname,
- mailbox_list_get_file_type(d), &st, &flags);
+ mailbox_list_get_file_type(d), &flags);
} T_END;
if (ret <= 0)
return ret;
int maildir_list_get_mailbox_flags(struct mailbox_list *list,
const char *dir, const char *fname,
enum mailbox_list_file_type type,
- struct stat *st_r,
enum mailbox_info_flags *flags);
#endif
const char *dir ATTR_UNUSED,
const char *fname ATTR_UNUSED,
enum mailbox_list_file_type type ATTR_UNUSED,
- struct stat *st_r ATTR_UNUSED,
enum mailbox_info_flags *flags)
{
*flags = MAILBOX_NONEXISTENT;
int (*get_mailbox_flags)(struct mailbox_list *list,
const char *dir, const char *fname,
enum mailbox_list_file_type type,
- struct stat *st_r,
enum mailbox_info_flags *flags_r);
/* Returns TRUE if name is mailbox's internal file/directory.
If it does, mailbox deletion assumes it can safely delete it. */
enum mailbox_info_flags *flags_r)
{
const char *path, *fname, *rootdir, *dir, *inbox;
- struct stat st;
unsigned int len;
*flags_r = 0;
}
return list->v.get_mailbox_flags(list, dir, fname,
MAILBOX_LIST_FILE_TYPE_UNKNOWN,
- &st, flags_r);
+ flags_r);
}
static bool mailbox_list_init_changelog(struct mailbox_list *list)