* rework imap tokenizer, we no longer copy the stuff around, we keep a reference...
[citadel.git] / citadel / internet_addressing.h
1 /* 
2  * $Id$
3  *
4  */
5
6 #include "server.h"
7
8 struct internet_address_list {
9         struct internet_address_list *next;
10         char ial_user[SIZ];
11         char ial_node[SIZ];
12         char ial_name[SIZ];
13 };
14
15
16 int fuzzy_match(struct ctdluser *us, char *matchstring);
17 void process_rfc822_addr(const char *rfc822, char *user, char *node, char *name);
18 char *rfc822_fetch_field(char *rfc822, const char *fieldname);
19
20 int IsDirectory(char *addr, int allow_masq_domains);
21 void CtdlDirectoryInit(void);
22 void CtdlDirectoryAddUser(char *internet_addr, char *citadel_addr);
23 void CtdlDirectoryDelUser(char *internet_addr, char *citadel_addr);
24 int CtdlDirectoryLookup(char *target, char *internet_addr, size_t targbuflen);
25 struct CtdlMessage *convert_internet_message(char *rfc822);
26 struct CtdlMessage *convert_internet_message_buf(StrBuf **rfc822);
27
28 int CtdlHostAlias(char *fqdn);
29 char *harvest_collected_addresses(struct CtdlMessage *msg);
30
31 /* 
32  * Values that can be returned by CtdlHostAlias()
33  */
34 enum {
35         hostalias_nomatch,
36         hostalias_localhost,
37         hostalias_gatewaydomain,
38         hostalias_directory,
39         hostalias_masq
40 };
41
42 extern char *inetcfg;
43
44
45 struct spamstrings_t {
46         struct spamstrings_t *next;
47         char *string;
48 };
49
50 extern struct spamstrings_t *spamstrings;
51