1 /*$Id: subscribe.h,v 1.14 1999/10/03 19:23:31 lindberg Exp $*/
2 /*$Name: ezmlm-idx-040 $*/
8 /* these are the subroutines used for interfacing with the subscriber and */
9 /* moderator address databases. For the put/to address output routines */
10 /* the 'username' if defined is omitted from the output. flagadd = 1 adds */
11 /* a subscriber, flagadd = 0 removes the address. To use e.g. a SQL data- */
12 /* base for addresses, just replace these routines and rebuild ezmlm. */
16 extern int subscribe(char *dir
,char *username
,int flagadd
,char *from
,
17 char *event
, int flagmysql
, int forcehash
,
18 char *table_override
, char *FATAL
);
20 extern char *issub(char *dir
,char *username
, char *table_override
, char *FATAL
);
22 extern unsigned long putsubs(char *dir
,
23 unsigned long hash_lo
, unsigned long hash_hi
,
24 int subwrite(), int flagsql
, char *fatal
);
26 /* int subwrite(char *string, unsigned int length); */
28 extern void tagmsg(char *dir
, unsigned long msgnum
,
29 char *seed
, char *action
, char *hashout
,
30 unsigned long bodysize
, unsigned long chunk
, char *fatal
);
32 extern char *logmsg(char *dir
, unsigned long msgnum
, unsigned long,
33 unsigned long subs
, int done
);
35 extern char *checktag(char *dir
, unsigned long msgnum
, unsigned long listno
,
36 char *action
, char *seed
, char *hash
);
38 extern void searchlog(char *dir
, char *search
, int subwrite(), char *fatal
);
40 extern char *opensql(char *dir
, char **table
);
42 extern void closesql();
46 extern int subscribe();
48 extern unsigned long putsubs();
50 extern char *logmsg();
52 extern int subreceipt();
53 extern char *getlistno();
54 extern char *opensql();
55 extern void closesql();
56 extern void searchlog();
59 extern void *psql
; /* contains SQL handle */