From 8520befe602e9b90d455342068a623f2cf89f631 Mon Sep 17 00:00:00 2001 From: Ian C Date: Thu, 4 Dec 2003 01:54:55 +0000 Subject: This commit was generated by cvs2svn to compensate for changes in r2, which included commits to RCS files with non-trunk default branches. --- src/pop3.h | 90 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 src/pop3.h (limited to 'src/pop3.h') diff --git a/src/pop3.h b/src/pop3.h new file mode 100644 index 0000000..c684634 --- /dev/null +++ b/src/pop3.h @@ -0,0 +1,90 @@ +/* + + kbs - Simple, easily fooled, POP3 spam filter + + Copyright (C) 2003 Ian Cowburn (ianc@noddybox.demon.co.uk) + + 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 2 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 + + ------------------------------------------------------------------------- + + $Id$ + + POP3 Interface + +*/ + +#ifndef KBS_POP3_H +#define KBS_POP3_H + +#include "msg.h" + +/* ---------------------------------------- TYPES AND CONSTANTS +*/ +typedef enum + { + POP3_OK, + POP3_COMMERROR, + POP3_NOCONNECT, + POP3_BADUSER, + POP3_BADPASSWD + } POP3Status; + +/* ---------------------------------------- INTERFACES +*/ + +/* Connect to a POP3 server. Pass a port number of zero to use the + default. Returns POP_OK if connected OK, otherwise one of the POP_x errors. +*/ +POP3Status POP3Connect(const char *hostname, int port, + const char *username, const char *passwd, + int timeout); + + +/* Collect information from the POP3 server. Returns a list of POP3Messages, + terminated with a NULL to entry, or NULL for not connected or error. + Note that fields that weren't present in a message will be set to + "UNKOWN". + + Note that if the TOP command is unimplemented on the server, then all the + fields in the message will be set to UNKNOWN. + + Obviously, this isn't much use. +*/ +POP3Message *POP3GetList(void); + + +/* Deletes the specified message. Returns POP_OK if deleted OK, otherwise + one of the POP_x errors. + + Remember that POP3 messages are number 1 .. N (so use the id field in + POP3Message). +*/ +POP3Status POP3Delete(int msg); + + +/* Logoff +*/ +void POP3Logoff(void); + + +/* Couresy function to free a message list. +*/ +void POP3FreeList(POP3Message *list); + + +#endif + +/* END OF FILE */ -- cgit v1.2.3