2009-07-28 21:44:22 +00:00
|
|
|
/* -*- mode: c; c-basic-offset: 4; tab-width: 4; indent-tabs-mode: t -*- */
|
|
|
|
|
2008-12-15 21:40:24 +00:00
|
|
|
#ifndef _MAIL_H
|
|
|
|
#define _MAIL_H
|
|
|
|
|
|
|
|
#include "timed_thread.h"
|
2009-03-28 17:53:35 +00:00
|
|
|
#include <time.h>
|
2008-06-14 18:41:12 +00:00
|
|
|
|
|
|
|
extern char *current_mail_spool;
|
|
|
|
|
2008-12-15 21:40:24 +00:00
|
|
|
struct mail_s { // for imap and pop3
|
|
|
|
unsigned long unseen;
|
|
|
|
unsigned long messages;
|
|
|
|
unsigned long used;
|
|
|
|
unsigned long quota;
|
|
|
|
unsigned long port;
|
|
|
|
unsigned int retries;
|
|
|
|
float interval;
|
|
|
|
double last_update;
|
|
|
|
char host[128];
|
|
|
|
char user[128];
|
|
|
|
char pass[128];
|
|
|
|
char command[1024];
|
|
|
|
char folder[128];
|
|
|
|
timed_thread *p_timed_thread;
|
|
|
|
char secure;
|
|
|
|
};
|
|
|
|
|
2008-06-14 18:41:12 +00:00
|
|
|
struct local_mail_s {
|
|
|
|
char *box;
|
|
|
|
int mail_count;
|
|
|
|
int new_mail_count;
|
2009-02-18 05:26:15 +00:00
|
|
|
int seen_mail_count;
|
|
|
|
int unseen_mail_count;
|
|
|
|
int flagged_mail_count;
|
|
|
|
int unflagged_mail_count;
|
|
|
|
int forwarded_mail_count;
|
|
|
|
int unforwarded_mail_count;
|
|
|
|
int replied_mail_count;
|
|
|
|
int unreplied_mail_count;
|
|
|
|
int draft_mail_count;
|
|
|
|
int trashed_mail_count;
|
2008-06-14 18:41:12 +00:00
|
|
|
float interval;
|
|
|
|
time_t last_mtime;
|
|
|
|
double last_update;
|
|
|
|
};
|
|
|
|
|
|
|
|
void update_mail_count(struct local_mail_s *);
|
|
|
|
|
2008-12-14 02:53:05 +00:00
|
|
|
#define POP3_TYPE 1
|
|
|
|
#define IMAP_TYPE 2
|
|
|
|
|
|
|
|
struct mail_s *parse_mail_args(char type, const char *arg);
|
|
|
|
void *imap_thread(void *arg);
|
|
|
|
void *pop3_thread(void *arg);
|
|
|
|
|
2008-12-15 21:40:24 +00:00
|
|
|
#endif /* _MAIL_H */
|