summaryrefslogtreecommitdiffstats
path: root/src/lib-storage/mail-copy.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib-storage/mail-copy.h')
-rw-r--r--src/lib-storage/mail-copy.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/lib-storage/mail-copy.h b/src/lib-storage/mail-copy.h
new file mode 100644
index 0000000..02048db
--- /dev/null
+++ b/src/lib-storage/mail-copy.h
@@ -0,0 +1,20 @@
+#ifndef MAIL_COPY_H
+#define MAIL_COPY_H
+
+struct mail;
+struct mail_save_context;
+struct mailbox;
+
+int mail_storage_copy(struct mail_save_context *ctx, struct mail *mail);
+
+/* If save context already doesn't have some metadata fields set, copy them
+ from the given mail (e.g. received date, from envelope, guid). */
+int mail_save_copy_default_metadata(struct mail_save_context *ctx,
+ struct mail *mail);
+
+/* Returns TRUE if mail can be copied using hard linking from src to dest.
+ (Assuming the storage itself supports this.) */
+bool mail_storage_copy_can_use_hardlink(struct mailbox *src,
+ struct mailbox *dest);
+
+#endif