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