[dovecot-cvs] dovecot/src/imap client.c,1.18,1.19 client.h,1.5,1.6 cmd-append.c,1.17,1.18 cmd-authenticate.c,1.1.1.1,1.2 cmd-capability.c,1.2,1.3 cmd-check.c,1.2,1.3 cmd-close.c,1.4,1.5 cmd-copy.c,1.4,1.5 cmd-create.c,1.3,1.4 cmd-delete.c,1.1.1.1,1.2 Message-Id: <20030105130954.E9474238C3@danu.procontrol.fi>

cras at procontrol.fi cras at procontrol.fi
Sun Jan 5 15:09:54 EET 2003


Update of /home/cvs/dovecot/src/imap
In directory danu:/tmp/cvs-serv25916/src/imap

Modified Files:
	client.c client.h cmd-append.c cmd-authenticate.c 
	cmd-capability.c cmd-check.c cmd-close.c cmd-copy.c 
	cmd-create.c cmd-delete.c cmd-examine.c cmd-expunge.c 
	cmd-fetch.c cmd-list.c cmd-login.c cmd-logout.c cmd-lsub.c 
	cmd-noop.c cmd-rename.c cmd-search.c cmd-select.c cmd-sort.c 
	cmd-status.c cmd-store.c cmd-subscribe.c cmd-uid.c 
	cmd-unsubscribe.c commands-util.c commands-util.h commands.h 
	common.h mail-storage-callbacks.c main.c rawlog.c 
Log Message:
Naming style changes, finally got tired of most of the typedefs. Also the
previous enum -> macro change reverted so that we don't use the highest bit
anymore, that's incompatible with old indexes so they will be rebuilt.



Index: client.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/client.c,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -d -r1.18 -r1.19
--- client.c	19 Dec 2002 01:02:35 -0000	1.18
+++ client.c	5 Jan 2003 13:09:51 -0000	1.19
@@ -29,16 +29,16 @@
 /* Disconnect client after idling this many seconds */
 #define CLIENT_IDLE_TIMEOUT (60*30)
 
-extern MailStorageCallbacks mail_storage_callbacks;
+extern struct mail_storage_callbacks mail_storage_callbacks;
 
-static Client *my_client; /* we don't need more than one currently */
-static Timeout to_idle;
+static struct client *my_client; /* we don't need more than one currently */
+static struct timeout *to_idle;
 
-static void client_input(Client *client);
+static void client_input(struct client *client);
 
 static void client_output_timeout(void *context)
 {
-	Client *client = context;
+	struct client *client = context;
 
 	i_stream_close(client->input);
 	o_stream_close(client->output);
@@ -46,18 +46,18 @@
 
 static void client_input_timeout(void *context)
 {
-	Client *client = context;
+	struct client *client = context;
 
 	client_send_line(my_client, "* BYE Disconnected for inactivity "
 			 "while waiting for command data.");
 	o_stream_close(client->output);
 }
 
-Client *client_create(int hin, int hout, MailStorage *storage)
+struct client *client_create(int hin, int hout, struct mail_storage *storage)
 {
-	Client *client;
+	struct client *client;
 
-	client = i_new(Client, 1);
+	client = i_new(struct client, 1);
 	client->input = i_stream_create_file(hin, default_pool,
 					     MAX_INBUF_SIZE, FALSE);
 	client->output = o_stream_create_file(hout, default_pool, 4096,
@@ -86,7 +86,7 @@
 	return client;
 }
 
-void client_destroy(Client *client)
+void client_destroy(struct client *client)
 {
 	o_stream_flush(client->output);
 
@@ -107,7 +107,7 @@
 	io_loop_stop(ioloop);
 }
 
-void client_disconnect(Client *client)
+void client_disconnect(struct client *client)
 {
 	o_stream_flush(client->output);
 
@@ -115,7 +115,7 @@
 	o_stream_close(client->output);
 }
 
-void client_send_line(Client *client, const char *data)
+void client_send_line(struct client *client, const char *data)
 {
 	if (client->output->closed)
 		return;
@@ -124,7 +124,7 @@
 	(void)o_stream_send(client->output, "\r\n", 2);
 }
 
-void client_send_tagline(Client *client, const char *data)
+void client_send_tagline(struct client *client, const char *data)
 {
 	const char *tag = client->cmd_tag;
 
@@ -140,7 +140,7 @@
 	(void)o_stream_send(client->output, "\r\n", 2);
 }
 
-void client_send_command_error(Client *client, const char *msg)
+void client_send_command_error(struct client *client, const char *msg)
 {
 	const char *error;
 
@@ -158,8 +158,8 @@
 	}
 }
 
-int client_read_args(Client *client, unsigned int count, unsigned int flags,
-		     ImapArg **args)
+int client_read_args(struct client *client, unsigned int count,
+		     unsigned int flags, struct imap_arg **args)
 {
 	int ret;
 
@@ -178,9 +178,9 @@
 	}
 }
 
-int client_read_string_args(Client *client, unsigned int count, ...)
+int client_read_string_args(struct client *client, unsigned int count, ...)
 {
-	ImapArg *imap_args;
+	struct imap_arg *imap_args;
 	va_list va;
 	const char *str;
 	unsigned int i;
@@ -207,7 +207,7 @@
 	return TRUE;
 }
 
-static void client_reset_command(Client *client)
+static void client_reset_command(struct client *client)
 {
 	client->cmd_tag = NULL;
 	client->cmd_name = NULL;
@@ -218,7 +218,7 @@
         imap_parser_reset(client->parser);
 }
 
-static void client_command_finished(Client *client)
+static void client_command_finished(struct client *client)
 {
 	client->input_skip_line = TRUE;
         client_reset_command(client);
@@ -226,7 +226,7 @@
 
 /* Skip incoming data until newline is found,
    returns TRUE if newline was found. */
-static int client_skip_line(Client *client)
+static int client_skip_line(struct client *client)
 {
 	const unsigned char *data;
 	size_t i, data_size;
@@ -244,7 +244,7 @@
 	return !client->input_skip_line;
 }
 
-static int client_handle_input(Client *client)
+static int client_handle_input(struct client *client)
 {
         if (client->cmd_func != NULL) {
 		/* command is being executed - continue it */
@@ -301,7 +301,7 @@
 	return TRUE;
 }
 
-static void client_input(Client *client)
+static void client_input(struct client *client)
 {
 	client->last_input = ioloop_time;
 
@@ -331,7 +331,7 @@
 }
 
 static void idle_timeout(void *context __attr_unused__,
-			 Timeout timeout __attr_unused__)
+			 struct timeout *timeout __attr_unused__)
 {
 	if (my_client == NULL)
 		return;

Index: client.h
===================================================================
RCS file: /home/cvs/dovecot/src/imap/client.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- client.h	6 Dec 2002 01:09:22 -0000	1.5
+++ client.h	5 Jan 2003 13:09:51 -0000	1.6
@@ -4,23 +4,23 @@
 #include "imap-parser.h"
 #include "mail-storage.h"
 
-typedef struct _Client Client;
+struct client;
 
-typedef int (*ClientCommandFunc) (Client *client);
+typedef int (*ClientCommandFunc) (struct client *client);
 
-struct _Client {
+struct client {
 	int socket;
-	IO io;
-	IStream *input;
-	OStream *output;
+	struct io *io;
+	struct istream *input;
+	struct ostream *output;
 
-	MailStorage *storage;
-	Mailbox *mailbox;
+	struct mail_storage *storage;
+	struct mailbox *mailbox;
 
 	time_t last_input;
 	unsigned int bad_counter;
 
-	ImapParser *parser;
+	struct imap_parser *parser;
 	const char *cmd_tag; /* tag of command (allocated from parser pool), */
 	const char *cmd_name; /* command name (allocated from parser pool) */
 	ClientCommandFunc cmd_func;
@@ -35,27 +35,27 @@
 
 /* Create new client with specified input/output handles. socket specifies
    if the handle is a socket. */
-Client *client_create(int hin, int hout, MailStorage *storage);
-void client_destroy(Client *client);
+struct client *client_create(int hin, int hout, struct mail_storage *storage);
+void client_destroy(struct client *client);
 
 /* Disconnect client connection */
-void client_disconnect(Client *client);
+void client_disconnect(struct client *client);
 
 /* Send a line of data to client */
-void client_send_line(Client *client, const char *data);
+void client_send_line(struct client *client, const char *data);
 /* Send line of data to client, prefixed with client->tag */
-void client_send_tagline(Client *client, const char *data);
+void client_send_tagline(struct client *client, const char *data);
 
 /* Send BAD command error to client. msg can be NULL. */
-void client_send_command_error(Client *client, const char *msg);
+void client_send_command_error(struct client *client, const char *msg);
 
 /* Read a number of arguments. Returns TRUE if everything was read or
    FALSE if either needs more data or error occured. */
-int client_read_args(Client *client, unsigned int count, unsigned int flags,
-		     ImapArg **args);
+int client_read_args(struct client *client, unsigned int count,
+		     unsigned int flags, struct imap_arg **args);
 /* Reads a number of string arguments. ... is a list of pointers where to
    store the arguments. */
-int client_read_string_args(Client *client, unsigned int count, ...);
+int client_read_string_args(struct client *client, unsigned int count, ...);
 
 void clients_init(void);
 void clients_deinit(void);

Index: cmd-append.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-append.c,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -d -r1.17 -r1.18
--- cmd-append.c	2 Jan 2003 08:09:26 -0000	1.17
+++ cmd-append.c	5 Jan 2003 13:09:51 -0000	1.18
@@ -12,11 +12,12 @@
 /* Returns -1 = error, 0 = need more data, 1 = successful. flags and
    internal_date may be NULL as a result, but mailbox and msg_size are always
    set when successful. */
-static int validate_args(Client *client, const char **mailbox,
-			 ImapArgList **flags, const char **internal_date,
+static int validate_args(struct client *client, const char **mailbox,
+			 struct imap_arg_list **flags,
+			 const char **internal_date,
 			 uoff_t *msg_size, unsigned int count)
 {
-	ImapArg *args;
+	struct imap_arg *args;
 
 	i_assert(count >= 2 && count <= 4);
 
@@ -71,11 +72,11 @@
 	return 1;
 }
 
-int cmd_append(Client *client)
+int cmd_append(struct client *client)
 {
-	ImapArgList *flags_list;
-	Mailbox *box;
-	MailFlags flags;
+	struct imap_arg_list *flags_list;
+	struct mailbox *box;
+	enum mail_flags flags;
 	time_t internal_date;
 	const char *custom_flags[MAIL_CUSTOM_FLAGS_COUNT];
 	const char *mailbox, *internal_date_str;

Index: cmd-authenticate.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-authenticate.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -d -r1.1.1.1 -r1.2
--- cmd-authenticate.c	9 Aug 2002 09:15:52 -0000	1.1.1.1
+++ cmd-authenticate.c	5 Jan 2003 13:09:51 -0000	1.2
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_authenticate(Client *client)
+int cmd_authenticate(struct client *client)
 {
 	client_send_tagline(client, "OK Already authenticated.");
 	return TRUE;

Index: cmd-capability.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-capability.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- cmd-capability.c	19 Oct 2002 14:51:59 -0000	1.2
+++ cmd-capability.c	5 Jan 2003 13:09:51 -0000	1.3
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_capability(Client *client)
+int cmd_capability(struct client *client)
 {
 	client_send_line(client, "* CAPABILITY " CAPABILITY_STRING);
 

Index: cmd-check.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-check.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- cmd-check.c	19 Oct 2002 14:51:59 -0000	1.2
+++ cmd-check.c	5 Jan 2003 13:09:51 -0000	1.3
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_check(Client *client)
+int cmd_check(struct client *client)
 {
 	if (!client_verify_open_mailbox(client))
 		return TRUE;

Index: cmd-close.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-close.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- cmd-close.c	2 Jan 2003 10:21:41 -0000	1.4
+++ cmd-close.c	5 Jan 2003 13:09:51 -0000	1.5
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-static void client_send_untagged_storage_error(Client *client)
+static void client_send_untagged_storage_error(struct client *client)
 {
 	const char *error;
 	int syntax;
@@ -13,7 +13,7 @@
 			 t_strconcat(syntax ? "* BAD " : "* NO ", error, NULL));
 }
 
-int cmd_close(Client *client)
+int cmd_close(struct client *client)
 {
 	if (!client_verify_open_mailbox(client))
 		return TRUE;

Index: cmd-copy.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-copy.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- cmd-copy.c	19 Oct 2002 14:51:59 -0000	1.4
+++ cmd-copy.c	5 Jan 2003 13:09:51 -0000	1.5
@@ -3,9 +3,9 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_copy(Client *client)
+int cmd_copy(struct client *client)
 {
-	Mailbox *destbox;
+	struct mailbox *destbox;
 	const char *messageset, *mailbox;
 
 	/* <message set> <mailbox> */

Index: cmd-create.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-create.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- cmd-create.c	2 Jan 2003 12:35:37 -0000	1.3
+++ cmd-create.c	5 Jan 2003 13:09:51 -0000	1.4
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_create(Client *client)
+int cmd_create(struct client *client)
 {
 	const char *mailbox;
 	int ignore;

Index: cmd-delete.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-delete.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -d -r1.1.1.1 -r1.2
--- cmd-delete.c	9 Aug 2002 09:15:52 -0000	1.1.1.1
+++ cmd-delete.c	5 Jan 2003 13:09:51 -0000	1.2
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_delete(Client *client)
+int cmd_delete(struct client *client)
 {
 	const char *mailbox;
 

Index: cmd-examine.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-examine.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- cmd-examine.c	26 Nov 2002 20:04:08 -0000	1.2
+++ cmd-examine.c	5 Jan 2003 13:09:51 -0000	1.3
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_examine(Client *client)
+int cmd_examine(struct client *client)
 {
 	return _cmd_select_full(client, TRUE);
 }

Index: cmd-expunge.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-expunge.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- cmd-expunge.c	19 Oct 2002 14:51:59 -0000	1.2
+++ cmd-expunge.c	5 Jan 2003 13:09:51 -0000	1.3
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_expunge(Client *client)
+int cmd_expunge(struct client *client)
 {
 	if (!client_verify_open_mailbox(client))
 		return TRUE;

Index: cmd-fetch.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-fetch.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- cmd-fetch.c	2 Jan 2003 08:09:26 -0000	1.10
+++ cmd-fetch.c	5 Jan 2003 13:09:51 -0000	1.11
@@ -24,15 +24,15 @@
 }
 
 /* BODY[] and BODY.PEEK[] items. item points to next character after '[' */
-static int parse_body_section(Client *client, const char *item,
-			      MailFetchData *data, int peek)
+static int parse_body_section(struct client *client, const char *item,
+			      struct mail_fetch_data *data, int peek)
 {
-	MailFetchBodyData *body;
+	struct mail_fetch_body_data *body;
 	uoff_t num;
 	const char *section;
 	char *p;
 
-	body = t_new(MailFetchBodyData, 1);
+	body = t_new(struct mail_fetch_body_data, 1);
 	body->peek = peek;
 
 	p = t_strdup_noconst(item);
@@ -95,7 +95,8 @@
 	return TRUE;
 }
 
-static int parse_arg(Client *client, ImapArg *arg, MailFetchData *data)
+static int parse_arg(struct client *client, struct imap_arg *arg,
+		     struct mail_fetch_data *data)
 {
 	char *item;
 
@@ -221,10 +222,10 @@
 	return TRUE;
 }
 
-int cmd_fetch(Client *client)
+int cmd_fetch(struct client *client)
 {
-	ImapArg *args, *listargs;
-	MailFetchData data;
+	struct imap_arg *args, *listargs;
+	struct mail_fetch_data data;
 	const char *messageset;
 	int all_found;
 
@@ -242,7 +243,7 @@
 	}
 
 	/* parse items argument */
-	memset(&data, 0, sizeof(MailFetchData));
+	memset(&data, 0, sizeof(struct mail_fetch_data));
 	if (args[1].type == IMAP_ARG_ATOM) {
 		if (!parse_arg(client, &args[1], &data))
 			return TRUE;

Index: cmd-list.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-list.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -d -r1.11 -r1.12
--- cmd-list.c	3 Jan 2003 15:57:12 -0000	1.11
+++ cmd-list.c	5 Jan 2003 13:09:51 -0000	1.12
@@ -5,23 +5,21 @@
 #include "commands.h"
 #include "imap-match.h"
 
-typedef struct _ListNode ListNode;
-
-struct _ListNode {
-	ListNode *next;
-	ListNode *children;
+struct list_node {
+	struct list_node *next;
+	struct list_node *children;
 
 	char *name; /* escaped */
-	MailboxFlags flags;
+	enum mailbox_flags flags;
 };
 
-typedef struct {
-	Pool pool;
-	ListNode *nodes;
-	MailStorage *storage;
-} ListContext;
+struct list_context {
+	pool_t pool;
+	struct list_node *nodes;
+	struct mail_storage *storage;
+};
 
-static const char *mailbox_flags2str(MailboxFlags flags)
+static const char *mailbox_flags2str(enum mailbox_flags flags)
 {
 	const char *str;
 
@@ -34,8 +32,8 @@
 	return *str == '\0' ? "" : str+1;
 }
 
-static ListNode *list_node_get(Pool pool, ListNode **node,
-			       const char *path, char separator)
+static struct list_node *list_node_get(pool_t pool, struct list_node **node,
+				       const char *path, char separator)
 {
 	const char *name, *parent;
 
@@ -61,7 +59,7 @@
 
 		if (*node == NULL) {
 			/* not found, create it */
-			*node = p_new(pool, ListNode, 1);
+			*node = p_new(pool, struct list_node, 1);
 			(*node)->name = p_strdup(pool, name);
 			(*node)->flags = MAILBOX_NOSELECT;
 		}
@@ -79,11 +77,11 @@
 	return *node;
 }
 
-static void list_func(MailStorage *storage __attr_unused__, const char *name,
-		      MailboxFlags flags, void *context)
+static void list_func(struct mail_storage *storage __attr_unused__,
+		      const char *name, enum mailbox_flags flags, void *context)
 {
-	ListContext *ctx = context;
-	ListNode *node;
+	struct list_context *ctx = context;
+	struct list_node *node;
 
 	node = list_node_get(ctx->pool, &ctx->nodes, name,
 			     ctx->storage->hierarchy_sep);
@@ -93,8 +91,9 @@
 	node->flags = flags;
 }
 
-static void list_send(Client *client, ListNode *node, const char *cmd,
-		      const char *path, const char *sep, ImapMatchGlob *glob)
+static void list_send(struct client *client, struct list_node *node,
+		      const char *cmd, const char *path, const char *sep,
+		      struct imap_match_glob *glob)
 {
 	const char *name, *str;
 
@@ -124,9 +123,9 @@
 	}
 }
 
-int _cmd_list_full(Client *client, int subscribed)
+int _cmd_list_full(struct client *client, int subscribed)
 {
-	ListContext ctx;
+	struct list_context ctx;
 	const char *ref, *pattern;
 	char sep_chr, sep[3];
 	int failed;
@@ -167,7 +166,7 @@
 			}
 		}
 
-		ctx.pool = pool_alloconly_create("ListContext", 10240);
+		ctx.pool = pool_alloconly_create("list_context", 10240);
 		ctx.nodes = NULL;
 		ctx.storage = client->storage;
 
@@ -199,7 +198,7 @@
 	return TRUE;
 }
 
-int cmd_list(Client *client)
+int cmd_list(struct client *client)
 {
 	return _cmd_list_full(client, FALSE);
 }

Index: cmd-login.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-login.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -d -r1.1.1.1 -r1.2
--- cmd-login.c	9 Aug 2002 09:15:53 -0000	1.1.1.1
+++ cmd-login.c	5 Jan 2003 13:09:51 -0000	1.2
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_login(Client *client)
+int cmd_login(struct client *client)
 {
 	client_send_tagline(client, "OK Already logged in.");
 	return TRUE;

Index: cmd-logout.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-logout.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- cmd-logout.c	23 Sep 2002 10:30:21 -0000	1.2
+++ cmd-logout.c	5 Jan 2003 13:09:51 -0000	1.3
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_logout(Client *client)
+int cmd_logout(struct client *client)
 {
 	client_send_line(client, "* BYE Logging out");
 

Index: cmd-lsub.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-lsub.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- cmd-lsub.c	26 Nov 2002 20:04:08 -0000	1.2
+++ cmd-lsub.c	5 Jan 2003 13:09:51 -0000	1.3
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_lsub(Client *client)
+int cmd_lsub(struct client *client)
 {
 	return _cmd_list_full(client, TRUE);
 }

Index: cmd-noop.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-noop.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- cmd-noop.c	19 Oct 2002 14:51:59 -0000	1.2
+++ cmd-noop.c	5 Jan 2003 13:09:51 -0000	1.3
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_noop(Client *client)
+int cmd_noop(struct client *client)
 {
 	client_sync_full(client);
 	client_send_tagline(client, "OK NOOP completed.");

Index: cmd-rename.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-rename.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- cmd-rename.c	23 Sep 2002 16:57:58 -0000	1.2
+++ cmd-rename.c	5 Jan 2003 13:09:51 -0000	1.3
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_rename(Client *client)
+int cmd_rename(struct client *client)
 {
 	const char *oldname, *newname;
 

Index: cmd-search.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-search.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -d -r1.11 -r1.12
--- cmd-search.c	2 Jan 2003 10:21:41 -0000	1.11
+++ cmd-search.c	5 Jan 2003 13:09:51 -0000	1.12
@@ -4,12 +4,12 @@
 #include "commands.h"
 #include "mail-search.h"
 
-int cmd_search(Client *client)
+int cmd_search(struct client *client)
 {
-	MailSearchArg *sargs;
-	ImapArg *args;
+	struct mail_search_arg *sargs;
+	struct imap_arg *args;
 	int args_count;
-	Pool pool;
+	pool_t pool;
 	const char *error, *charset;
 
 	args_count = imap_parser_read_args(client->parser, 0, 0, &args);

Index: cmd-select.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-select.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -d -r1.11 -r1.12
--- cmd-select.c	2 Jan 2003 08:29:43 -0000	1.11
+++ cmd-select.c	5 Jan 2003 13:09:51 -0000	1.12
@@ -3,10 +3,10 @@
 #include "common.h"
 #include "commands.h"
 
-int _cmd_select_full(Client *client, int readonly)
+int _cmd_select_full(struct client *client, int readonly)
 {
-	Mailbox *box;
-	MailboxStatus status;
+	struct mailbox *box;
+	struct mailbox_status status;
 	const char *mailbox;
 
 	/* <mailbox> */
@@ -71,7 +71,7 @@
 	return TRUE;
 }
 
-int cmd_select(Client *client)
+int cmd_select(struct client *client)
 {
 	return _cmd_select_full(client, FALSE);
 }

Index: cmd-sort.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-sort.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- cmd-sort.c	2 Jan 2003 08:09:26 -0000	1.6
+++ cmd-sort.c	5 Jan 2003 13:09:51 -0000	1.7
@@ -6,12 +6,12 @@
 #include "mail-search.h"
 #include "mail-sort.h"
 
-typedef struct {
-	MailSortType type;
+struct sort_name {
+	enum mail_sort_type type;
 	const char *name;
-} SortName;
+};
 
-static SortName sort_names[] = {
+static struct sort_name sort_names[] = {
 	{ MAIL_SORT_ARRIVAL,	"arrival" },
 	{ MAIL_SORT_CC,		"cc" },
 	{ MAIL_SORT_DATE,	"date" },
@@ -24,13 +24,15 @@
 	{ MAIL_SORT_END,	NULL }
 };
 
-static MailSortType *get_sort_program(Client *client, ImapArg *args)
+static enum mail_sort_type *
+get_sort_program(struct client *client, struct imap_arg *args)
 {
-	MailSortType type;
-	Buffer *buf;
+	enum mail_sort_type type;
+	buffer_t *buf;
 	int i;
 
-	buf = buffer_create_dynamic(data_stack_pool, 32 * sizeof(MailSortType),
+	buf = buffer_create_dynamic(data_stack_pool,
+				    32 * sizeof(enum mail_sort_type),
 				    (size_t)-1);
 
 	while (args->type == IMAP_ARG_ATOM || args->type == IMAP_ARG_STRING) {
@@ -47,7 +49,8 @@
 			return NULL;
 		}
 
-		buffer_append(buf, &sort_names[i].type, sizeof(MailSortType));
+		buffer_append(buf, &sort_names[i].type,
+			      sizeof(enum mail_sort_type));
 		args++;
 	}
 
@@ -63,13 +66,13 @@
 	return buffer_free_without_data(buf);
 }
 
-int cmd_sort(Client *client)
+int cmd_sort(struct client *client)
 {
-	MailSearchArg *sargs;
-	MailSortType *sorting;
-	ImapArg *args;
+	struct mail_search_arg *sargs;
+	enum mail_sort_type *sorting;
+	struct imap_arg *args;
 	int args_count;
-	Pool pool;
+	pool_t pool;
 	const char *error, *charset;
 
 	args_count = imap_parser_read_args(client->parser, 0, 0, &args);

Index: cmd-status.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-status.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- cmd-status.c	2 Jan 2003 08:09:26 -0000	1.7
+++ cmd-status.c	5 Jan 2003 13:09:51 -0000	1.8
@@ -5,10 +5,11 @@
 #include "commands.h"
 
 /* Returns status items, or -1 if error */
-static MailboxStatusItems get_status_items(Client *client, ImapArg *args)
+static enum mailbox_status_items
+get_status_items(struct client *client, struct imap_arg *args)
 {
 	const char *item;
-	MailboxStatusItems items;
+	enum mailbox_status_items items;
 
 	items = 0;
 	for (; args->type != IMAP_ARG_EOL; args++) {
@@ -49,10 +50,11 @@
 	return strcasecmp(box1, "INBOX") == 0 && strcasecmp(box2, "INBOX") == 0;
 }
 
-static int get_mailbox_status(Client *client, const char *mailbox,
-			      MailboxStatusItems items, MailboxStatus *status)
+static int get_mailbox_status(struct client *client, const char *mailbox,
+			      enum mailbox_status_items items,
+			      struct mailbox_status *status)
 {
-	Mailbox *box;
+	struct mailbox *box;
 	int failed;
 
 	if (client->mailbox != NULL &&
@@ -75,13 +77,13 @@
 	return !failed;
 }
 
-int cmd_status(Client *client)
+int cmd_status(struct client *client)
 {
-	ImapArg *args;
-	MailboxStatus status;
-	MailboxStatusItems items;
+	struct imap_arg *args;
+	struct mailbox_status status;
+	enum mailbox_status_items items;
 	const char *mailbox;
-	String *str;
+	string_t *str;
 
 	/* <mailbox> <status items> */
 	if (!client_read_args(client, 2, 0, &args))
@@ -95,7 +97,7 @@
 
 	/* get the items client wants */
 	items = get_status_items(client, IMAP_ARG_LIST(&args[1])->args);
-	if (items == (MailboxStatusItems)-1) {
+	if (items == (enum mailbox_status_items)-1) {
 		/* error */
 		return TRUE;
 	}

Index: cmd-store.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-store.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- cmd-store.c	2 Jan 2003 08:09:26 -0000	1.7
+++ cmd-store.c	5 Jan 2003 13:09:51 -0000	1.8
@@ -3,8 +3,8 @@
 #include "common.h"
 #include "commands.h"
 
-static int get_modify_type(Client *client, const char *item,
-			   ModifyType *modify_type, int *silent)
+static int get_modify_type(struct client *client, const char *item,
+			   enum modify_type *modify_type, int *silent)
 {
 	if (*item == '+') {
 		*modify_type = MODIFY_ADD;
@@ -32,11 +32,11 @@
 	return TRUE;
 }
 
-int cmd_store(Client *client)
+int cmd_store(struct client *client)
 {
-	ImapArg *args;
-	MailFlags flags;
-	ModifyType modify_type;
+	struct imap_arg *args;
+	enum mail_flags flags;
+	enum modify_type modify_type;
 	const char *custflags[MAIL_CUSTOM_FLAGS_COUNT];
 	const char *messageset, *item;
 	int silent, all_found;

Index: cmd-subscribe.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-subscribe.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- cmd-subscribe.c	26 Nov 2002 20:04:08 -0000	1.4
+++ cmd-subscribe.c	5 Jan 2003 13:09:51 -0000	1.5
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int _cmd_subscribe_full(Client *client, int subscribe)
+int _cmd_subscribe_full(struct client *client, int subscribe)
 {
 	const char *mailbox;
 
@@ -26,7 +26,7 @@
 	return TRUE;
 }
 
-int cmd_subscribe(Client *client)
+int cmd_subscribe(struct client *client)
 {
 	return _cmd_subscribe_full(client, TRUE);
 }

Index: cmd-uid.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-uid.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- cmd-uid.c	8 Dec 2002 05:23:07 -0000	1.2
+++ cmd-uid.c	5 Jan 2003 13:09:51 -0000	1.3
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_uid(Client *client)
+int cmd_uid(struct client *client)
 {
 	const char *cmd;
 

Index: cmd-unsubscribe.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/cmd-unsubscribe.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- cmd-unsubscribe.c	26 Nov 2002 20:04:08 -0000	1.2
+++ cmd-unsubscribe.c	5 Jan 2003 13:09:51 -0000	1.3
@@ -3,7 +3,7 @@
 #include "common.h"
 #include "commands.h"
 
-int cmd_unsubscribe(Client *client)
+int cmd_unsubscribe(struct client *client)
 {
 	return _cmd_subscribe_full(client, FALSE);
 }

Index: commands-util.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/commands-util.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -d -r1.14 -r1.15
--- commands-util.c	2 Jan 2003 13:05:58 -0000	1.14
+++ commands-util.c	5 Jan 2003 13:09:51 -0000	1.15
@@ -11,10 +11,10 @@
    to them, mbox/maildir currently allow paths only up to PATH_MAX. */
 #define MAILBOX_MAX_NAME_LEN 512
 
-int client_verify_mailbox_name(Client *client, const char *mailbox,
+int client_verify_mailbox_name(struct client *client, const char *mailbox,
 			       int should_exist, int should_not_exist)
 {
-	MailboxNameStatus mailbox_status;
+	enum mailbox_name_status mailbox_status;
 	const char *p;
 	char sep;
 
@@ -80,7 +80,7 @@
 	return FALSE;
 }
 
-int client_verify_open_mailbox(Client *client)
+int client_verify_open_mailbox(struct client *client)
 {
 	if (client->mailbox != NULL)
 		return TRUE;
@@ -90,19 +90,19 @@
 	}
 }
 
-void client_sync_full(Client *client)
+void client_sync_full(struct client *client)
 {
 	if (client->mailbox != NULL)
 		(void)client->mailbox->sync(client->mailbox, TRUE);
 }
 
-void client_sync_without_expunges(Client *client)
+void client_sync_without_expunges(struct client *client)
 {
 	if (client->mailbox != NULL)
 		(void)client->mailbox->sync(client->mailbox, FALSE);
 }
 
-void client_send_storage_error(Client *client)
+void client_send_storage_error(struct client *client)
 {
 	const char *error;
 	int syntax;
@@ -121,8 +121,8 @@
 						error, NULL));
 }
 
-int client_parse_mail_flags(Client *client, ImapArg *args, size_t args_count,
-			    MailFlags *flags,
+int client_parse_mail_flags(struct client *client, struct imap_arg *args,
+			    size_t args_count, enum mail_flags *flags,
 			    const char *custflags[MAIL_CUSTOM_FLAGS_COUNT])
 {
 	char *atom;
@@ -155,7 +155,8 @@
 				*flags |= MAIL_DRAFT;
 			else {
 				client_send_tagline(client, t_strconcat(
-					"BAD Invalid system flag ", atom, NULL));
+					"BAD Invalid system flag ",
+					atom, NULL));
 				return FALSE;
 			}
 		} else {
@@ -186,7 +187,7 @@
 static const char *get_custom_flags_string(const char *custom_flags[],
 					   unsigned int custom_flags_count)
 {
-	String *str;
+	string_t *str;
 	unsigned int i;
 
 	/* first see if there even is custom flags */
@@ -210,7 +211,7 @@
 
 #define SYSTEM_FLAGS "\\Answered \\Flagged \\Deleted \\Seen \\Draft"
 
-void client_send_mailbox_flags(Client *client, Mailbox *box,
+void client_send_mailbox_flags(struct client *client, struct mailbox *box,
 			       const char *custom_flags[],
 			       unsigned int custom_flags_count)
 {

Index: commands-util.h
===================================================================
RCS file: /home/cvs/dovecot/src/imap/commands-util.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- commands-util.h	19 Oct 2002 14:51:59 -0000	1.5
+++ commands-util.h	5 Jan 2003 13:09:51 -0000	1.6
@@ -7,32 +7,32 @@
 
    If should_exist is FALSE, the should_not_exist specifies if we should
    return TRUE or FALSE if mailbox doesn't exist. */
-int client_verify_mailbox_name(Client *client, const char *mailbox,
+int client_verify_mailbox_name(struct client *client, const char *mailbox,
 			       int should_exist, int should_not_exist);
 
 /* Returns TRUE if mailbox is selected. If not, sends "No mailbox selected"
    error message to client. */
-int client_verify_open_mailbox(Client *client);
+int client_verify_open_mailbox(struct client *client);
 
 /* Synchronize selected mailbox with client by sending EXPUNGE,
    FETCH FLAGS, EXISTS and RECENT responses. */
-void client_sync_full(Client *client);
+void client_sync_full(struct client *client);
 
 /* Synchronize all but expunges with client. */
-void client_sync_without_expunges(Client *client);
+void client_sync_without_expunges(struct client *client);
 
 /* Send last mail storage error message to client. */
-void client_send_storage_error(Client *client);
+void client_send_storage_error(struct client *client);
 
 /* Parse flags, stores custom flag names into custflags[]. The names point to
    strings in ImapArgList. Returns TRUE if successful, if not sends an error
    message to client. */
-int client_parse_mail_flags(Client *client, ImapArg *args, size_t args_count,
-			    MailFlags *flags,
+int client_parse_mail_flags(struct client *client, struct imap_arg *args,
+			    size_t args_count, enum mail_flags *flags,
 			    const char *custflags[MAIL_CUSTOM_FLAGS_COUNT]);
 
 /* Send FLAGS + PERMANENTFLAGS to client. */
-void client_send_mailbox_flags(Client *client, Mailbox *box,
+void client_send_mailbox_flags(struct client *client, struct mailbox *box,
 			       const char *custom_flags[],
 			       unsigned int custom_flags_count);
 

Index: commands.h
===================================================================
RCS file: /home/cvs/dovecot/src/imap/commands.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- commands.h	4 Dec 2002 18:28:37 -0000	1.3
+++ commands.h	5 Jan 2003 13:09:51 -0000	1.4
@@ -7,44 +7,44 @@
 ClientCommandFunc client_command_find(const char *name);
 
 /* Non-Authenticated State */
-int cmd_authenticate(Client *client);
-int cmd_login(Client *client);
-int cmd_logout(Client *client);
+int cmd_authenticate(struct client *client);
+int cmd_login(struct client *client);
+int cmd_logout(struct client *client);
 
-int cmd_capability(Client *client);
-int cmd_noop(Client *client);
+int cmd_capability(struct client *client);
+int cmd_noop(struct client *client);
 
 /* Authenticated State */
-int cmd_select(Client *client);
-int cmd_examine(Client *client);
+int cmd_select(struct client *client);
+int cmd_examine(struct client *client);
 
-int cmd_create(Client *client);
-int cmd_delete(Client *client);
-int cmd_rename(Client *client);
+int cmd_create(struct client *client);
+int cmd_delete(struct client *client);
+int cmd_rename(struct client *client);
 
-int cmd_subscribe(Client *client);
-int cmd_unsubscribe(Client *client);
+int cmd_subscribe(struct client *client);
+int cmd_unsubscribe(struct client *client);
 
-int cmd_list(Client *client);
-int cmd_lsub(Client *client);
+int cmd_list(struct client *client);
+int cmd_lsub(struct client *client);
 
-int cmd_status(Client *client);
-int cmd_append(Client *client);
+int cmd_status(struct client *client);
+int cmd_append(struct client *client);
 
 /* Selected state */
-int cmd_check(Client *client);
-int cmd_close(Client *client);
-int cmd_expunge(Client *client);
-int cmd_search(Client *client);
-int cmd_sort(Client *client);
-int cmd_fetch(Client *client);
-int cmd_store(Client *client);
-int cmd_copy(Client *client);
-int cmd_uid(Client *client);
+int cmd_check(struct client *client);
+int cmd_close(struct client *client);
+int cmd_expunge(struct client *client);
+int cmd_search(struct client *client);
+int cmd_sort(struct client *client);
+int cmd_fetch(struct client *client);
+int cmd_store(struct client *client);
+int cmd_copy(struct client *client);
+int cmd_uid(struct client *client);
 
 /* private: */
-int _cmd_list_full(Client *client, int subscribed);
-int _cmd_select_full(Client *client, int readonly);
-int _cmd_subscribe_full(Client *client, int subscribe);
+int _cmd_list_full(struct client *client, int subscribed);
+int _cmd_select_full(struct client *client, int readonly);
+int _cmd_subscribe_full(struct client *client, int subscribe);
 
 #endif

Index: common.h
===================================================================
RCS file: /home/cvs/dovecot/src/imap/common.h,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -d -r1.1.1.1 -r1.2
--- common.h	9 Aug 2002 09:15:51 -0000	1.1.1.1
+++ common.h	5 Jan 2003 13:09:51 -0000	1.2
@@ -4,6 +4,6 @@
 #include "lib.h"
 #include "client.h"
 
-extern IOLoop ioloop;
+extern struct ioloop *ioloop;
 
 #endif

Index: mail-storage-callbacks.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/mail-storage-callbacks.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- mail-storage-callbacks.c	6 Dec 2002 01:09:22 -0000	1.3
+++ mail-storage-callbacks.c	5 Jan 2003 13:09:51 -0000	1.4
@@ -5,35 +5,36 @@
 #include "imap-util.h"
 #include "commands-util.h"
 
-static void alert_no_diskspace(Mailbox *mailbox __attr_unused__, void *context)
+static void alert_no_diskspace(struct mailbox *mailbox __attr_unused__,
+			       void *context)
 {
-	Client *client = context;
+	struct client *client = context;
 
 	client_send_line(client, "* NO [ALERT] "
 			 "Disk space is full, delete some messages.");
 }
 
-static void notify_ok(Mailbox *mailbox __attr_unused__,
+static void notify_ok(struct mailbox *mailbox __attr_unused__,
 		      const char *text, void *context)
 {
-	Client *client = context;
+	struct client *client = context;
 
 	client_send_line(client, t_strconcat("* OK ", text, NULL));
 	o_stream_flush(client->output);
 }
 
-static void notify_no(Mailbox *mailbox __attr_unused__,
+static void notify_no(struct mailbox *mailbox __attr_unused__,
 		      const char *text, void *context)
 {
-	Client *client = context;
+	struct client *client = context;
 
 	client_send_line(client, t_strconcat("* NO ", text, NULL));
 	o_stream_flush(client->output);
 }
 
-static void expunge(Mailbox *mailbox, unsigned int seq, void *context)
+static void expunge(struct mailbox *mailbox, unsigned int seq, void *context)
 {
-	Client *client = context;
+	struct client *client = context;
 	char str[MAX_INT_STRLEN+20];
 
 	if (client->mailbox != mailbox)
@@ -43,11 +44,12 @@
 	client_send_line(client, str);
 }
 
-static void update_flags(Mailbox *mailbox, unsigned int seq, unsigned int uid,
-			 MailFlags flags, const char *custom_flags[],
+static void update_flags(struct mailbox *mailbox,
+			 unsigned int seq, unsigned int uid,
+			 enum mail_flags flags, const char *custom_flags[],
 			 unsigned int custom_flags_count, void *context)
 {
-	Client *client = context;
+	struct client *client = context;
 	const char *str;
 
 	if (client->mailbox != mailbox)
@@ -67,10 +69,10 @@
 	t_pop();
 }
 
-static void new_messages(Mailbox *mailbox, unsigned int messages_count,
+static void new_messages(struct mailbox *mailbox, unsigned int messages_count,
 			 unsigned int recent_count, void *context)
 {
-	Client *client = context;
+	struct client *client = context;
 	char str[MAX_INT_STRLEN+20];
 
 	if (client->mailbox != mailbox)
@@ -83,10 +85,11 @@
 	client_send_line(client, str);
 }
 
-static void new_custom_flags(Mailbox *mailbox, const char *custom_flags[],
+static void new_custom_flags(struct mailbox *mailbox,
+			     const char *custom_flags[],
 			     unsigned int custom_flags_count, void *context)
 {
-	Client *client = context;
+	struct client *client = context;
 
 	if (client->mailbox != mailbox)
 		return;
@@ -95,7 +98,7 @@
 				  custom_flags_count);
 }
 
-MailStorageCallbacks mail_storage_callbacks = {
+struct mail_storage_callbacks mail_storage_callbacks = {
 	alert_no_diskspace,
 	notify_ok,
 	notify_no,

Index: main.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/main.c,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -d -r1.18 -r1.19
--- main.c	20 Dec 2002 01:47:11 -0000	1.18
+++ main.c	5 Jan 2003 13:09:51 -0000	1.19
@@ -14,7 +14,7 @@
 #define IS_STANDALONE() \
         (getenv("LOGIN_TAG") == NULL)
 
-IOLoop ioloop;
+struct ioloop *ioloop;
 static char log_prefix[128]; /* syslog() needs this to be permanent */
 
 static void sig_quit(int signo __attr_unused__)
@@ -58,8 +58,8 @@
 
 static void main_init(void)
 {
-	Client *client;
-	MailStorage *storage;
+	struct client *client;
+	struct mail_storage *storage;
 	const char *mail;
 	int hin, hout;
 

Index: rawlog.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/rawlog.c,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- rawlog.c	19 Dec 2002 01:02:35 -0000	1.8
+++ rawlog.c	5 Jan 2003 13:09:51 -0000	1.9
@@ -19,7 +19,7 @@
 #define TIMESTAMP_WAIT_TIME 5
 #define TIMESTAMP_FORMAT " * OK [RAWLOG TIMESTAMP] %Y-%m-%d %H:%M:%S\n"
 
-static IOLoop ioloop;
+static ioloop *ioloop;
 static int client_in, client_out, imap_in, imap_out;
 static int log_in, log_out;
 
@@ -90,7 +90,7 @@
 
 void rawlog_open(int *hin, int *hout)
 {
-	IO io_imap, io_client;
+	struct io *io_imap, *io_client;
 	const char *home, *path, *fname;
 	char timestamp[50];
 	struct tm *tm;




More information about the dovecot-cvs mailing list