Linus Groh
ddd11b98d9
LibIMAP: Add and use Parser::consume_until_end_of_line()
2021-07-24 22:22:41 +01:00
Linus Groh
8e8d1383b7
LibIMAP: Clean up Parser.h a bit
...
Move members after methods, remove useless parameter names ('x', 's'),
more sensible method grouping.
2021-07-24 22:22:41 +01:00
Linus Groh
8c05b4e137
LibIMAP: Rename IMAP::Parser::{parse => consume}_while()
...
This isn't parsing anything.
2021-07-24 22:22:41 +01:00
Luke
3948161c14
LibIMAP: Add a bunch of serialize_astring in command construction
...
These were putting the raw string values into the command, where they
should be astrings as per the grammar:
https://datatracker.ietf.org/doc/html/rfc3501#section-9
2021-07-24 19:03:43 +01:00
Luke
e80f8746b1
LibIMAP: Use try_parse_number instead of parse_number when parsing parts
...
This makes it so we can use Optional instead of relying on an error
number.
2021-07-24 20:11:28 +04:30
Luke
2c793d5935
LibIMAP: Make Section::parts unsigned
2021-07-24 20:11:28 +04:30
Luke
27644785f1
LibIMAP: Add method to get data out of BodyStructure
2021-07-24 20:11:28 +04:30
Luke
c63913b633
LibIMAP: Add quoted printable decoder
...
This is a very common encoding for e-mail. Gmail seems to encode all
HTML e-mail in it.
imap qp clang
2021-07-24 20:11:28 +04:30
Timothy
2eb93f2628
LibCore+LibIMAP: Move Promise to LibCore
...
This makes Promise available without having to link LibIMAP.
2021-07-15 11:11:14 +02:00
x-yl
9174fabf05
LibIMAP: Support for remaining IMAP commands
...
These include APPEND, AUTHENTICATE, CHECK, CLOSE, EXAMINE, EXPUNGE,
LSUB, SUBSCRIBE, UNSUBSCRIBE
2021-06-11 23:58:28 +04:30
x-yl
16995dc3d9
LibIMAP: Support for APPEND
2021-06-11 23:58:28 +04:30
x-yl
7021413d30
LibIMAP: Support for COPY, CREATE, DELETE and RENAME
2021-06-11 23:58:28 +04:30
x-yl
076c708d0a
LibIMAP: Support for STORE and STATUS
2021-06-11 23:58:28 +04:30
x-yl
a6339297ec
LibIMAP: Support for the SEARCH command
2021-06-11 23:58:28 +04:30
x-yl
318709c8ca
LibIMAP: Support for FETCH BodyStructure
...
This completes the implementation of the FETCH command.
2021-06-11 23:58:28 +04:30
x-yl
c152a9a594
LibIMAP: Support for the FETCH command (*mostly)
...
This commit doesn't include support for FETCH BODY, because it's a bit
big already. Rest assured, FETCH is the most complicated IMAP command,
and we'll go back to simple boring ones shortly.
2021-06-11 23:58:28 +04:30
x-yl
1e9dfdcdcc
LibIMAP: Support for the IDLE command
2021-06-11 23:58:28 +04:30
x-yl
f00c2c0192
LibIMAP: Support for LOGIN and LOGOUT
2021-06-11 23:58:28 +04:30
x-yl
2f04d24b66
LibIMAP: Support for the LIST and SELECT commands
2021-06-11 23:58:28 +04:30
x-yl
0f42ea6770
LibIMAP: Support for CAPABILITY command & response
...
This involves parsing messages with untagged responses
2021-06-11 23:58:28 +04:30
x-yl
8c6061fc4a
LibIMAP: Add a new IMAP client and support NOOP
...
A large commit, but sets up the framework for how the IMAP library will
work. Right now only the NOOP command and response is supported.
2021-06-11 23:58:28 +04:30