[go: up one dir, main page]

File: suck.h

package info (click to toggle)
suck 4.3.2-11
  • links: PTS
  • area: main
  • in suites: wheezy
  • size: 1,544 kB
  • sloc: ansic: 12,075; perl: 528; sh: 363; makefile: 352; java: 144
file content (125 lines) | stat: -rw-r--r-- 2,877 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
#ifndef _SUCK_SUCK_H
#define _SUCK_SUCK_H 1

#include <stdio.h>	/* for FILE */
#include "suck_config.h"

/* Link list structure one for each article */
typedef struct LinkList {
	struct LinkList *next;
	char msgnr[MAX_MSGID_LEN];
	int groupnr;
	long nr;
	long dbnr;
	char mandatory;
	char downloaded;
	char delete;
	char sentcmd;
} List, *PList;

/* link list for group names */
typedef struct GroupList {
	char group[MAX_GRP_LEN];
	int nr;
	struct GroupList *next;
} Groups, *PGroups;

/* link list for list overview.fmt */
typedef struct XOVERVIEW {
	struct XOVERVIEW *next;
	char *header;  /* dynamically alloced */
	char *field;
	int fieldlen;
	int full;
} Overview, *POverview;

/* Master Structure */
typedef struct {
	PList head;
	PList curr;
	int nritems;
	int nrgot;
	int sockfd;
	int MultiFile;
	int status_file;
	int do_killfile;
	int do_chkhistory;
	int do_modereader;
	int always_batch;
	int cleanup;
	int batch;
	int pause_time;
	int pause_nrmsgs;
	int sig_pause_time;
	int sig_pause_nrmsgs;
	int killfile_log;
	int debug;
	int rescan;
	int quiet;
	int kill_ignore_postfix;
	int reconnect_nr;
	int do_active;
	int nrmode;
	int auto_auth;
	int no_dedupe;
	int chk_msgid;
	int prebatch;
	int skip_on_restart;
	int use_gui;
	int do_xover;
	int conn_dedupe;
	int conn_active;
	int header_only;
	int active_lastread;
	int use_xover;
	int resetcounter;
	int low_read;
	int show_group;
	unsigned short int portnr;
	long rnews_size;
	FILE *msgs;
	FILE *innfeed;
	int db;
	const char *userid;
	const char *passwd;
	const char *host;
	const char *batchfile;
	const char *status_file_name;
	const char *phrases;
	const char *errlog;
	const char *localhost;
	const char *activefile;
	const char *kill_log_name;
	const char *post_filter;
	const char *history_file;
	PGroups groups;
	int grpnr;
	void *killp;
	void *xoverp;
	POverview xoverview;
	int do_ssl;
	void *ssl_struct;
	int local_ssl;
	void *local_ssl_struct;
	int batch_post_nr;
	int passwd_env;
} Master, *PMaster;

int get_a_chunk(PMaster, FILE *);
void free_one_node(PList);
int send_command(PMaster, const char *, char **, int);
int get_message_index(PMaster);
int do_one_group(PMaster, char *, char *, FILE *, long, int);
const char *build_command(PMaster, const char *, PList);

int allocnode(PMaster, char *, int, char *, long);
int do_connect(PMaster, int);

enum { RETVAL_ERROR = -1, RETVAL_OK = 0, RETVAL_NOARTICLES, RETVAL_UNEXPECTEDANS, RETVAL_VERNR, \
       RETVAL_NOAUTH, RETVAL_EMPTYKILL, RETVAL_NOXOVER };
enum { BATCH_FALSE, BATCH_INNXMIT, BATCH_RNEWS, BATCH_LMOVE, BATCH_INNFEED, BATCH_LIHAVE };		/* poss values for batch variable */
enum { MANDATORY_YES = 'M' , MANDATORY_OPTIONAL = 'O'};	/* do we have to download this article */
/* note the MANDATORY_DELETE is used in the dedupe and checkhistory phases to flag em for deletion */
enum {CONNECT_FIRST, CONNECT_AGAIN};

#endif /* _SUCK_SUCK_H */