* 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, USA.
- */
+ */
#ifndef _POP_H
#define _POP_H 1
/* maximal length of the server response (RFC1939) */
#define POP_CMD_RESPONSE 512
-enum
-{
+enum {
/* Status */
POP_NONE = 0,
POP_CONNECTED,
POP_BYE
};
-typedef enum
-{
+typedef enum {
POP_A_SUCCESS = 0,
POP_A_SOCKET,
POP_A_FAILURE,
POP_A_UNAVAIL
} pop_auth_res_t;
-typedef struct
-{
+typedef struct {
unsigned int index;
char *path;
} POP_CACHE;
-typedef struct
-{
+typedef struct {
CONNECTION *conn;
- unsigned int status : 2;
- unsigned int capabilities : 1;
- unsigned int use_stls : 2;
- unsigned int cmd_capa : 1; /* optional command CAPA */
- unsigned int cmd_stls : 1; /* optional command STLS */
- unsigned int cmd_user : 2; /* optional command USER */
- unsigned int cmd_uidl : 2; /* optional command UIDL */
- unsigned int cmd_top : 2; /* optional command TOP */
- unsigned int resp_codes : 1; /* server supports extended response codes */
- unsigned int expire : 1; /* expire is greater than 0 */
- unsigned int clear_cache : 1;
+ unsigned int status:2;
+ unsigned int capabilities:1;
+ unsigned int use_stls:2;
+ unsigned int cmd_capa:1; /* optional command CAPA */
+ unsigned int cmd_stls:1; /* optional command STLS */
+ unsigned int cmd_user:2; /* optional command USER */
+ unsigned int cmd_uidl:2; /* optional command UIDL */
+ unsigned int cmd_top:2; /* optional command TOP */
+ unsigned int resp_codes:1; /* server supports extended response codes */
+ unsigned int expire:1; /* expire is greater than 0 */
+ unsigned int clear_cache:1;
size_t size;
time_t check_time;
- time_t login_delay; /* minimal login delay capability */
- char *auth_list; /* list of auth mechanisms */
+ time_t login_delay; /* minimal login delay capability */
+ char *auth_list; /* list of auth mechanisms */
char *timestamp;
char err_msg[POP_CMD_RESPONSE];
POP_CACHE cache[POP_CACHE_LEN];
} POP_DATA;
-typedef struct
-{
+typedef struct {
/* do authentication, using named method or any available if method is NULL */
pop_auth_res_t (*authenticate) (POP_DATA *, const char *);
/* name of authentication method supported, NULL means variable. If this
* is not null, authenticate may ignore the second parameter. */
- const char* method;
+ const char *method;
} pop_auth_t;
/* pop_auth.c */
int pop_connect (POP_DATA *);
int pop_open_connection (POP_DATA *);
int pop_query_d (POP_DATA *, char *, size_t, char *);
-int pop_fetch_data (POP_DATA *, char *, char *, int (*funct) (char *, void *), void *);
+int pop_fetch_data (POP_DATA *, char *, char *, int (*funct) (char *, void *),
+ void *);
int pop_reconnect (CONTEXT *);
void pop_logout (CONTEXT *);
void pop_error (POP_DATA *, char *);