summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibIMAP/Parser.cpp
diff options
context:
space:
mode:
authorx-yl <kylepereira@mail.com>2021-06-02 18:53:08 +0400
committerAli Mohammad Pur <Ali.mpfard@gmail.com>2021-06-11 23:58:28 +0430
commit9174fabf05b60abd5435992842db0aff8f615ab9 (patch)
treea5b26378cd9f3d2b6ae72f57c0e59f1280eba74a /Userland/Libraries/LibIMAP/Parser.cpp
parent16995dc3d98e9d3036baae6535a0c7f2fb970d24 (diff)
downloadserenity-9174fabf05b60abd5435992842db0aff8f615ab9.zip
LibIMAP: Support for remaining IMAP commands
These include APPEND, AUTHENTICATE, CHECK, CLOSE, EXAMINE, EXPUNGE, LSUB, SUBSCRIBE, UNSUBSCRIBE
Diffstat (limited to 'Userland/Libraries/LibIMAP/Parser.cpp')
-rw-r--r--Userland/Libraries/LibIMAP/Parser.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/Userland/Libraries/LibIMAP/Parser.cpp b/Userland/Libraries/LibIMAP/Parser.cpp
index c00383f711..b2b06ecfe3 100644
--- a/Userland/Libraries/LibIMAP/Parser.cpp
+++ b/Userland/Libraries/LibIMAP/Parser.cpp
@@ -140,6 +140,9 @@ void Parser::parse_untagged()
} else if (data_type.matches("FETCH")) {
auto fetch_response = parse_fetch_response();
m_response.data().add_fetch_response(number.value(), move(fetch_response));
+ } else if (data_type.matches("EXPUNGE")) {
+ m_response.data().add_expunged(number.value());
+ consume("\r\n");
}
return;
}
@@ -149,6 +152,9 @@ void Parser::parse_untagged()
} else if (try_consume("LIST")) {
auto item = parse_list_item();
m_response.data().add_list_item(move(item));
+ } else if (try_consume("LSUB")) {
+ auto item = parse_list_item();
+ m_response.data().add_lsub_item(move(item));
} else if (try_consume("FLAGS")) {
consume(" ");
auto flags = parse_list(+[](StringView x) { return String(x); });