X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=include%2Fov.h;fp=include%2Fov.h;h=0000000000000000000000000000000000000000;hb=b7a32e2d73e3ab1add8208d3e157f7269a31ef4d;hp=5e9b935b74d297691385e4f9015e09dc351fbc15;hpb=ac902a8299ff4469b356836f431ead31c3377377;p=innduct.git diff --git a/include/ov.h b/include/ov.h deleted file mode 100644 index 5e9b935..0000000 --- a/include/ov.h +++ /dev/null @@ -1,80 +0,0 @@ -#ifndef _OV_H_ -#define _OV_H_ - -#include "storage.h" -#include "inn/history.h" - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - -#define OV_READ 1 -#define OV_WRITE 2 - -typedef enum {OVSPACE, OVSORT, OVCUTOFFLOW, OVGROUPBASEDEXPIRE, OVSTATICSEARCH, OVSTATALL, OVCACHEKEEP, OVCACHEFREE} OVCTLTYPE; -#define OV_NOSPACE 100 -typedef enum {OVNEWSGROUP, OVARRIVED, OVNOSORT} OVSORTTYPE; -typedef enum {OVADDCOMPLETED, OVADDFAILED, OVADDGROUPNOMATCH} OVADDRESULT; - -typedef struct _OVGE { - bool delayrm; /* append tokens to filename if true */ - bool usepost; /* posting date is used to determine expiry - time if true */ - bool quiet; /* statistics will be suppressed if true */ - bool keep; /* keep article so long as any of crossposted - newsgroups is not expired if true */ - bool earliest; /* purge article any of crossposted - newsgroups is expired if true */ - bool ignoreselfexpire; /* purge article even if storing method has - self expiry */ - char *filename; /* used to append tokens to this file if - delayrm is true */ - time_t now; /* used as current time */ - float timewarp; /* used to bias expiry time */ -} OVGE; - -extern bool OVstatall; -bool OVopen(int mode); -bool OVgroupstats(char *group, int *lo, int *hi, int *count, int *flag); -bool OVgroupadd(char *group, ARTNUM lo, ARTNUM hi, char *flag); -bool OVgroupdel(char *group); -OVADDRESULT OVadd(TOKEN token, char *data, int len, time_t arrived, time_t expires); -bool OVcancel(TOKEN token); -void *OVopensearch(char *group, int low, int high); -bool OVsearch(void *handle, ARTNUM *artnum, char **data, int *len, TOKEN *token, time_t *arrived); -void OVclosesearch(void *handle); -bool OVgetartinfo(char *group, ARTNUM artnum, TOKEN *token); -bool OVexpiregroup(char *group, int *lo, struct history *h); -bool OVctl(OVCTLTYPE type, void *val); -void OVclose(void); - -/* Overview data manipulation functions. */ -const struct cvector *overview_fields(void); -struct vector *overview_extra_fields(void); -struct buffer *overview_build(ARTNUM number, const char *article, - size_t length, const struct vector *extra, - struct buffer *); -bool overview_check(const char *data, size_t length, ARTNUM article); -int overview_index(const char *field, const struct vector *extra); -struct cvector *overview_split(const char *line, size_t length, - ARTNUM *number, struct cvector *vector); -char *overview_getheader(const struct cvector *vector, int element, - const struct vector *extra); - -/* offsets into vectors for standard overview headers */ -enum { - OVERVIEW_SUBJECT, - OVERVIEW_FROM, - OVERVIEW_DATE, - OVERVIEW_MESSAGE_ID, - OVERVIEW_REFERENCES, - OVERVIEW_BYTES, - OVERVIEW_LINES, - OVERVIEW_MAX -}; - -#ifdef __cplusplus -} -#endif /* __cplusplus */ - -#endif /* _OV_H_ */