cmd-select.c revision 869e97e89856be3d7b32edab14f467d1e3496706
5a580c3a38ced62d4bcc95b8ac7c4f2935b5d294Timo Sirainen/* Copyright (C) 2002 Timo Sirainen */
a64adf62fa33f2463a86f990217b0c9078531a40Timo Sirainenint cmd_select_full(Client *client, int readonly)
9dd1c256910f1fb42823116a641e7edb3ad11970Timo Sirainen /* <mailbox> */
d477acb83e14a776ece4ca94dcd1869e75d0c6eeTimo Sirainen if (!client_read_string_args(client, 1, &mailbox))
6523f54d1521edf894880f2d45e75cef5dd31c3dTimo Sirainen client->mailbox = client->storage->open_mailbox(client->storage,
ab90f702ceedb7ba445a9a592be0b213b27cbafaStephan Bosch if (!box->get_status(box, STATUS_MESSAGES | STATUS_RECENT |
ab90f702ceedb7ba445a9a592be0b213b27cbafaStephan Bosch STATUS_FIRST_UNSEEN_SEQ | STATUS_UIDVALIDITY |
9f0f2de10e4ea0c99052bf4b2bef8179f2536228Timo Sirainen /* set callbacks after STATUS, which might otherwise try calling
9f0f2de10e4ea0c99052bf4b2bef8179f2536228Timo Sirainen some of them */
7bafda1813454621e03615e83d55bccfa7cc56bdTimo Sirainen box->set_sync_callbacks(box, &sync_callbacks, client);
7bafda1813454621e03615e83d55bccfa7cc56bdTimo Sirainen client_send_mailbox_flags(client, box, status.custom_flags,
7bafda1813454621e03615e83d55bccfa7cc56bdTimo Sirainen t_strdup_printf("* %u EXISTS", status.messages));
7bafda1813454621e03615e83d55bccfa7cc56bdTimo Sirainen t_strdup_printf("* %u RECENT", status.recent));
7bafda1813454621e03615e83d55bccfa7cc56bdTimo Sirainen t_strdup_printf("* OK [UNSEEN %u] First unseen.",
f7f25f9e1a38678d0e97d2e609beac16285fac6bTimo Sirainen t_strdup_printf("* OK [UIDVALIDITY %u] UIDs valid",
35fcdde46a71ac151c2518d48c841019f1181bb2Timo Sirainen "Disk space is full, delete some messages.");
9f0f2de10e4ea0c99052bf4b2bef8179f2536228Timo Sirainen "OK [READ-ONLY] Select completed." :
9f0f2de10e4ea0c99052bf4b2bef8179f2536228Timo Sirainen "OK [READ-WRITE] Select completed.");