[dovecot-cvs] dovecot/src/lib-storage mail-storage.h,1.31,1.32

cras at procontrol.fi cras at procontrol.fi
Wed Jan 22 21:23:30 EET 2003


Update of /home/cvs/dovecot/src/lib-storage
In directory danu:/tmp/cvs-serv16040/src/lib-storage

Modified Files:
	mail-storage.h 
Log Message:
Support for MULTIAPPEND extension. COPY now behaves like spec says - if it
fails, none of the messages are copied. maildir_copy_with_hardlinks didn't
actually work.



Index: mail-storage.h
===================================================================
RCS file: /home/cvs/dovecot/src/lib-storage/mail-storage.h,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -d -r1.31 -r1.32
--- mail-storage.h	20 Jan 2003 14:52:51 -0000	1.31
+++ mail-storage.h	22 Jan 2003 19:23:28 -0000	1.32
@@ -268,12 +268,22 @@
 	   the next call to search_next() or search_deinit(). */
 	struct mail *(*search_next)(struct mail_search_context *ctx);
 
-	/* Save a new mail into mailbox. timezone_offset specifies the
-	   timezone in minutes which received_date was originally given
-	   with. */
-	int (*save)(struct mailbox *box, const struct mail_full_flags *flags,
-		    time_t received_date, int timezone_offset,
-		    struct istream *data, uoff_t data_size);
+	/* Initialize saving one or more mails. If transaction is TRUE, all
+	   the saved mails are deleted if an error occurs or save_deinit()
+	   is called with rollback TRUE. */
+	struct mail_save_context *(*save_init)(struct mailbox *box,
+					       int transaction);
+	/* Deinitialize saving. rollback has effect only if save_init() was
+	   called with transaction being TRUE. If rollback is FALSE but
+	   committing the changes fails, all the commits are rollbacked if
+	   possible. */
+	int (*save_deinit)(struct mail_save_context *ctx, int rollback);
+	/* Save a mail into mailbox. timezone_offset specifies the timezone in
+	   minutes in which received_date was originally given with. */
+	int (*save_next)(struct mail_save_context *ctx,
+			 const struct mail_full_flags *flags,
+			 time_t received_date, int timezone_offset,
+			 struct istream *data);
 
 	/* Returns TRUE if mailbox is now in inconsistent state, meaning that
 	   the message IDs etc. may have changed - only way to recover this




More information about the dovecot-cvs mailing list