1 /*
2  *	binkleyforce -- unix FTN mailer project
3  *
4  *	Copyright (c) 1998-2000 Alexander Belkin, 2:5020/1398.11
5  *
6  *	This program is free software; you can redistribute it and/or modify
7  *	it under the terms of the GNU General Public License as published by
8  *	the Free Software Foundation; either version 2 of the License, or
9  *	(at your option) any later version.
10  *
11  *	$Id: freq.h,v 1.1.1.1 2004/09/09 09:52:40 kstepanenkov Exp $
12  */
13 
14 #ifndef _FREQ_H_
15 #define _FREQ_H_
16 
17 #include "session.h"
18 #include "outbound.h"
19 
20 /*
21  *  List of our available for FREQing resources
22  */
23 typedef struct frlist {
24 	struct frlist *next;
25 	char *magic;
26 	char *path;
27 	char *passwd;
28 	char *expr;		/* process only if expression is true */
29 } s_frlist;
30 
31 /*
32  *  List of requested files (from requester)
33  */
34 typedef struct reqlist {
35 	struct reqlist *next;
36 	char *fmask;
37 	char *passwd;
38 	time_t newer;
39 	time_t older;
40 	int skip;
41 } s_reqlist;
42 
43 /*
44  *  Keep all FREQ processor-important information here
45  */
46 typedef struct freq {
47 	char *srifproc;		/* Name of external (SRIF) FREQ processor   */
48 	s_frlist *frlist;	/* File areas list for int. FREQ processor  */
49 	s_reqlist *reqlist;	/* List of requested file masks, etc..      */
50 	s_filelist **filelist;	/* Put here files we found and want to send */
51 	s_filelist **flast;     /* Pointer to the last entry in filelist    */
52 	int fnumber;            /* Total number of files, we found          */
53 	int fileslimit;		/* Maxmum number of files to send as answer */
54 	size_t fsize;           /* Total size of files, we found            */
55 	size_t sizelimit;	/* Maxmum size of files to send as answer   */
56 } s_freq;
57 
58 /* req_bark.c */
59 
60 /* req_proc.c */
61 void req_proc(char *reqname, s_filelist **filelist);
62 
63 /* req_srif.c */
64 int req_createsrif(char *sname, char *req, char *rsp);
65 void req_addfilelist(char *listname, s_freq *freq);
66 
67 /* req_wazo.c */
68 int req_readwazooreq(char *reqname, s_reqlist **reqlist);
69 
70 #endif
71