diff options
author | Eric S. Raymond <esr@thyrsus.com> | 2003-10-15 19:26:58 +0000 |
---|---|---|
committer | Eric S. Raymond <esr@thyrsus.com> | 2003-10-15 19:26:58 +0000 |
commit | 0d8a8b913f6a15088523bc69cbcf6240de945cda (patch) | |
tree | 6d32025f03e7c273d35d88a6bd4c6fa9432632d8 /fetchmail.h | |
parent | a9c74c7425861cabc87f74fbce49e0da7af5e756 (diff) | |
download | fetchmail-0d8a8b913f6a15088523bc69cbcf6240de945cda.tar.gz fetchmail-0d8a8b913f6a15088523bc69cbcf6240de945cda.tar.bz2 fetchmail-0d8a8b913f6a15088523bc69cbcf6240de945cda.zip |
Sunil's transaction patches.
svn path=/trunk/; revision=3858
Diffstat (limited to 'fetchmail.h')
-rw-r--r-- | fetchmail.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/fetchmail.h b/fetchmail.h index 6665ab06..ac89f42c 100644 --- a/fetchmail.h +++ b/fetchmail.h @@ -147,7 +147,7 @@ struct idlist { struct { - short num; + int num; flag mark; /* UID-index information */ #define UID_UNSEEN 0 /* hasn't been seen */ #define UID_SEEN 1 /* seen, but not deleted */ @@ -182,6 +182,8 @@ struct method /* describe methods for protocol state machine */ /* get message range to fetch */ int (*getsizes)(int, int, int *); /* get sizes of messages */ + int (*getpartialsizes)(int, int, int, int *); + /* get sizes of subset of messages */ int (*is_old)(int, struct query *, int); /* check for old message */ int (*fetch_headers)(int, struct query *, int, int *); @@ -289,6 +291,9 @@ struct query int limit; /* limit size of retrieved messages */ int warnings; /* size warning interval */ int fetchlimit; /* max # msgs to get in single poll */ + int fetchsizelimit; /* max # msg sizes to get in a request */ + int fastuidl; /* do binary search for new UIDLs? */ + int fastuidlcount; /* internal count for frequency of binary search */ int batchlimit; /* max # msgs to pass in single SMTP session */ int expunge; /* max # msgs to pass between expunges */ flag use_ssl; /* use SSL encrypted session */ @@ -511,6 +516,8 @@ unsigned char *reply_hack(unsigned char *, const unsigned char *, int *); unsigned char *nxtaddr(const unsigned char *); /* uid.c: UID support */ +extern int dofastuidl; + void initialize_saved_lists(struct query *, const char *); struct idlist *save_str(struct idlist **, const char *, flag); void free_str_list(struct idlist **); @@ -518,17 +525,20 @@ struct idlist *copy_str_list(struct idlist *idl); void save_str_pair(struct idlist **, const char *, const char *); void free_str_pair_list(struct idlist **); int delete_str(struct idlist **, long); -int str_in_list(struct idlist **, const char *, const flag); +struct idlist *str_in_list(struct idlist **, const char *, const flag); int str_nr_in_list(struct idlist **, const char *); int str_nr_last_in_list(struct idlist **, const char *); void str_set_mark( struct idlist **, const char *, const flag); int count_list( struct idlist **idl ); char *str_from_nr_list( struct idlist **idl, long number ); char *str_find(struct idlist **, long); +struct idlist *id_find(struct idlist **idl, long); char *idpair_find(struct idlist **, const char *); void append_str_list(struct idlist **, struct idlist **); void expunge_uids(struct query *); void uid_swap_lists(struct query *); +void uid_discard_new_list(struct query *ctl); +void uid_reset_num(struct query *ctl); void write_saved_lists(struct query *, const char *); /* rcfile_y.y */ |