#include "citadel.h"
#include "sysdep_decls.h"
#include "tools.h"
+#include "internet_addressing.h"
#include "imap_tools.h"
}
}
+
+/*
+ * Output a struct internet_address_list in the form an IMAP client wants
+ */
+void imap_ial_out(struct internet_address_list *ialist) {
+ struct internet_address_list *iptr;
+
+ if (ialist == NULL) {
+ cprintf("NIL");
+ return;
+ }
+
+ cprintf("(");
+
+ for (iptr = ialist; iptr != NULL; iptr = iptr->next) {
+ cprintf("(");
+ imap_strout(iptr->ial_name);
+ cprintf(" NIL ");
+ imap_strout(iptr->ial_user);
+ cprintf(" ");
+ imap_strout(iptr->ial_node);
+ cprintf(")");
+ }
+
+ cprintf(")");
+}
void imap_strout(char *buf);
int imap_parameterize(char **args, char *buf);
void imap_mailboxname(char *buf, int bufsize, struct quickroom *qrbuf);
+void imap_ial_out(struct internet_address_list *ialist);
*
*/
+struct internet_address_list {
+ struct internet_address_list *next;
+ char ial_user[256];
+ char ial_node[256];
+ char ial_name[256];
+};
+
+
int fuzzy_match(struct usersupp *us, char *matchstring);
void process_rfc822_addr(char *rfc822, char *user, char *node, char *name);
char *rfc822_fetch_field(char *rfc822, char *fieldname);