Move: give the SMTP-Client its own file.
[citadel.git] / citadel / modules / smtp / smtp_util.h
diff --git a/citadel/modules/smtp/smtp_util.h b/citadel/modules/smtp/smtp_util.h
new file mode 100644 (file)
index 0000000..f3c53f9
--- /dev/null
@@ -0,0 +1,55 @@
+/*
+ * This module is an SMTP and ESMTP implementation for the Citadel system.
+ * It is compliant with all of the following:
+ *
+ * RFC  821 - Simple Mail Transfer Protocol
+ * RFC  876 - Survey of SMTP Implementations
+ * RFC 1047 - Duplicate messages and SMTP
+ * RFC 1652 - 8 bit MIME
+ * RFC 1869 - Extended Simple Mail Transfer Protocol
+ * RFC 1870 - SMTP Service Extension for Message Size Declaration
+ * RFC 2033 - Local Mail Transfer Protocol
+ * RFC 2197 - SMTP Service Extension for Command Pipelining
+ * RFC 2476 - Message Submission
+ * RFC 2487 - SMTP Service Extension for Secure SMTP over TLS
+ * RFC 2554 - SMTP Service Extension for Authentication
+ * RFC 2821 - Simple Mail Transfer Protocol
+ * RFC 2822 - Internet Message Format
+ * RFC 2920 - SMTP Service Extension for Command Pipelining
+ *  
+ * The VRFY and EXPN commands have been removed from this implementation
+ * because nobody uses these commands anymore, except for spammers.
+ *
+ * Copyright (c) 1998-2009 by the citadel.org team
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 3 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
+const char *smtp_get_Recipients(void);
+
+typedef struct _citsmtp {              /* Information about the current session */
+       int command_state;
+       char helo_node[SIZ];
+       char from[SIZ];
+       char recipients[SIZ];
+       int number_of_recipients;
+       int delivery_mode;
+       int message_originated_locally;
+       int is_lmtp;
+       int is_unfiltered;
+       int is_msa;
+}citsmtp;
+
+#define SMTP           ((citsmtp *)CC->session_specific_data)