*
*/
+#include "server.h"
+
struct internet_address_list {
struct internet_address_list *next;
- char ial_user[256];
- char ial_node[256];
- char ial_name[256];
+ char ial_user[SIZ];
+ char ial_node[SIZ];
+ char ial_name[SIZ];
};
-int fuzzy_match(struct usersupp *us, char *matchstring);
-void process_rfc822_addr(char *rfc822, char *user, char *node, char *name);
+int fuzzy_match(struct ctdluser *us, char *matchstring);
+void process_rfc822_addr(const char *rfc822, char *user, char *node, char *name);
char *rfc822_fetch_field(char *rfc822, char *fieldname);
-
-int convert_internet_address(char *destuser, char *desthost, char *source);
-enum {
- rfc822_address_locally_validated,
- rfc822_no_such_user,
- rfc822_address_on_citadel_network,
- rfc822_address_nonlocal,
- rfc822_room_delivery
-};
-
-
+int IsDirectory(char *addr);
+void CtdlDirectoryInit(void);
+void CtdlDirectoryAddUser(char *internet_addr, char *citadel_addr);
+void CtdlDirectoryDelUser(char *internet_addr, char *citadel_addr);
+int CtdlDirectoryLookup(char *target, char *internet_addr, size_t targbuflen);
struct CtdlMessage *convert_internet_message(char *rfc822);
-
int CtdlHostAlias(char *fqdn);
+char *harvest_collected_addresses(struct CtdlMessage *msg);
/*
* Values that can be returned by CtdlHostAlias()
enum {
hostalias_nomatch,
hostalias_localhost,
- hostalias_gatewaydomain
+ hostalias_gatewaydomain,
+ hostalias_directory
};
extern char *inetcfg;
+
+
+struct spamstrings_t {
+ struct spamstrings_t *next;
+ char *string;
+};
+
+extern struct spamstrings_t *spamstrings;
+