aboutsummaryrefslogtreecommitdiffstats
path: root/src/net/imap/IMAPUtils.cpp
diff options
context:
space:
mode:
authorVincent Richard <[email protected]>2006-04-05 17:48:09 +0000
committerVincent Richard <[email protected]>2006-04-05 17:48:09 +0000
commitb16c5ca684382677ae298eed6253c75d2eaf9806 (patch)
tree50f33a0641261ac7e925640ceb142ba0ebc6df44 /src/net/imap/IMAPUtils.cpp
parentRefactored and cleaned up smart pointers. (diff)
downloadvmime-b16c5ca684382677ae298eed6253c75d2eaf9806.tar.gz
vmime-b16c5ca684382677ae298eed6253c75d2eaf9806.zip
Clean up.
Diffstat (limited to 'src/net/imap/IMAPUtils.cpp')
-rw-r--r--src/net/imap/IMAPUtils.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/net/imap/IMAPUtils.cpp b/src/net/imap/IMAPUtils.cpp
index cd611163..6e3c869c 100644
--- a/src/net/imap/IMAPUtils.cpp
+++ b/src/net/imap/IMAPUtils.cpp
@@ -623,6 +623,26 @@ const string IMAPUtils::buildFetchRequest(const std::vector <int>& list, const i
}
+// static
+void IMAPUtils::convertAddressList
+ (const IMAPParser::address_list& src, mailboxList& dest)
+{
+ for (std::vector <IMAPParser::address*>::const_iterator
+ it = src.addresses().begin() ; it != src.addresses().end() ; ++it)
+ {
+ const IMAPParser::address& addr = **it;
+
+ text name;
+ text::decodeAndUnfold(addr.addr_name()->value(), &name);
+
+ string email = addr.addr_mailbox()->value()
+ + "@" + addr.addr_host()->value();
+
+ dest.appendMailbox(vmime::create <mailbox>(name, email));
+ }
+}
+
+
} // imap
} // net
} // vmime