1 #ifndef _MAIL_COPY_H_INCLUDED_ 2 #define _MAIL_COPY_H_INCLUDED_ 3 4 /*++ 5 /* NAME 6 /* mail_copy 3h 7 /* SUMMARY 8 /* copy message with extreme prejudice 9 /* SYNOPSIS 10 /* #include <mail_copy.h> 11 /* DESCRIPTION 12 /* .nf 13 14 /* 15 * Utility library. 16 */ 17 #include <vstream.h> 18 #include <vstring.h> 19 20 /* 21 * Global library. 22 */ 23 #include <dsn_buf.h> 24 25 /* 26 * External interface. 27 */ 28 extern int mail_copy(const char *, const char *, const char *, 29 VSTREAM *, VSTREAM *, 30 int, const char *, DSN_BUF *); 31 32 #define MAIL_COPY_QUOTE (1<<0) /* prepend > to From_ */ 33 #define MAIL_COPY_TOFILE (1<<1) /* fsync, ftruncate() */ 34 #define MAIL_COPY_FROM (1<<2) /* prepend From_ */ 35 #define MAIL_COPY_DELIVERED (1<<3) /* prepend Delivered-To: */ 36 #define MAIL_COPY_RETURN_PATH (1<<4) /* prepend Return-Path: */ 37 #define MAIL_COPY_DOT (1<<5) /* escape dots - needed for bsmtp */ 38 #define MAIL_COPY_BLANK (1<<6) /* append blank line */ 39 #define MAIL_COPY_ORIG_RCPT (1<<7) /* prepend X-Original-To: */ 40 #define MAIL_COPY_MBOX (MAIL_COPY_FROM | MAIL_COPY_QUOTE | \ 41 MAIL_COPY_TOFILE | MAIL_COPY_DELIVERED | \ 42 MAIL_COPY_RETURN_PATH | MAIL_COPY_BLANK | \ 43 MAIL_COPY_ORIG_RCPT) 44 45 #define MAIL_COPY_NONE 0 /* all turned off */ 46 47 #define MAIL_COPY_STAT_OK 0 48 #define MAIL_COPY_STAT_CORRUPT (1<<0) 49 #define MAIL_COPY_STAT_READ (1<<1) 50 #define MAIL_COPY_STAT_WRITE (1<<2) 51 52 /* LICENSE 53 /* .ad 54 /* .fi 55 /* The Secure Mailer license must be distributed with this software. 56 /* AUTHOR(S) 57 /* Wietse Venema 58 /* IBM T.J. Watson Research 59 /* P.O. Box 704 60 /* Yorktown Heights, NY 10598, USA 61 /*--*/ 62 63 #endif 64