From dea547a71036ae3445a5a612f6afd00b76ed721a Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Thu, 15 May 1997 20:12:53 +0000 Subject: Add multiple-folder support. svn path=/trunk/; revision=1012 --- rcfile_y.y | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'rcfile_y.y') diff --git a/rcfile_y.y b/rcfile_y.y index c5da848a..c2f121a5 100644 --- a/rcfile_y.y +++ b/rcfile_y.y @@ -193,6 +193,10 @@ mapping : STRING {save_str_pair(¤t.localnames, $1, $3);} ; +folder_list : STRING {save_str(¤t.mailboxes,-1,$1);} + | folder_list STRING {save_str(¤t.mailboxes,-1,$2);} + ; + smtphunt : STRING {save_str(¤t.smtphunt, -1, $1);} | smtphunt STRING {save_str(¤t.smtphunt, -1, $2);} ; @@ -204,7 +208,7 @@ user_option : TO localnames HERE | IS STRING THERE {current.remotename = xstrdup($2);} | PASSWORD STRING {current.password = xstrdup($2);} - | FOLDER STRING {current.mailbox = xstrdup($2);} + | FOLDER folder_list | SMTPHOST smtphunt | MDA STRING {current.mda = xstrdup($2);} | PRECONNECT STRING {current.preconnect = xstrdup($2);} @@ -397,7 +401,8 @@ static void record_current(void) FLAG_FORCE(remotename); FLAG_FORCE(password); - FLAG_FORCE(mailbox); + if (cmd_opts.mailboxes) + save_str(¤t.mailboxes, -1, cmd_opts.mailboxes->id); if (cmd_opts.smtphunt) save_str(¤t.smtphunt, -1, cmd_opts.smtphunt->id); FLAG_FORCE(mda); @@ -423,6 +428,7 @@ void optmerge(struct query *h2, struct query *h1) { append_str_list(&h2->server.localdomains, &h1->server.localdomains); append_str_list(&h2->localnames, &h1->localnames); + append_str_list(&h2->mailboxes, &h1->mailboxes); append_str_list(&h2->smtphunt, &h1->smtphunt); #define FLAG_MERGE(fld) if (!h2->fld) h2->fld = h1->fld @@ -442,7 +448,6 @@ void optmerge(struct query *h2, struct query *h1) FLAG_MERGE(remotename); FLAG_MERGE(password); - FLAG_MERGE(mailbox); FLAG_MERGE(mda); FLAG_MERGE(preconnect); -- cgit v1.2.3