comparison src/pop3/client.h @ 2722:8c5bcd6585a4 HEAD

Use only a single transaction for the whole duration of pop3 session. Avoids constant locking/unlocking the indexes.
author Timo Sirainen <tss@iki.fi>
date Sun, 10 Oct 2004 19:25:06 +0300
parents d2e899bb6f5b
children 96a4ab34c8f1
comparison
equal deleted inserted replaced
2721:4ec77eca761d 2722:8c5bcd6585a4
15 command_func_t *cmd; 15 command_func_t *cmd;
16 void *cmd_context; 16 void *cmd_context;
17 17
18 struct mail_storage *storage; 18 struct mail_storage *storage;
19 struct mailbox *mailbox; 19 struct mailbox *mailbox;
20 struct mailbox_transaction_context *trans;
20 21
21 time_t last_input, last_output; 22 time_t last_input, last_output;
22 unsigned int bad_counter; 23 unsigned int bad_counter;
23 24
24 unsigned int messages_count; 25 unsigned int messages_count;
27 uoff_t total_size; 28 uoff_t total_size;
28 uoff_t deleted_size; 29 uoff_t deleted_size;
29 uint32_t last_seen; 30 uint32_t last_seen;
30 31
31 unsigned char *deleted_bitmask; 32 unsigned char *deleted_bitmask;
32 unsigned char *seen_bitmask;
33 33
34 unsigned int deleted:1; 34 unsigned int deleted:1;
35 unsigned int waiting_input:1; 35 unsigned int waiting_input:1;
36 }; 36 };
37 37
41 void client_destroy(struct client *client); 41 void client_destroy(struct client *client);
42 42
43 /* Disconnect client connection */ 43 /* Disconnect client connection */
44 void client_disconnect(struct client *client); 44 void client_disconnect(struct client *client);
45 45
46 int client_update_mailbox(struct client *client, struct mailbox *box,
47 int delete_mails);
48
49 /* Send a line of data to client */ 46 /* Send a line of data to client */
50 int client_send_line(struct client *client, const char *fmt, ...) 47 int client_send_line(struct client *client, const char *fmt, ...)
51 __attr_format__(2, 3); 48 __attr_format__(2, 3);
52 void client_send_storage_error(struct client *client); 49 void client_send_storage_error(struct client *client);
53 50