diff options
Diffstat (limited to 'src/pop3.h')
-rw-r--r-- | src/pop3.h | 90 |
1 files changed, 90 insertions, 0 deletions
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 */ |