The goal of this assignment was the creation of a POP3 Client, including support for GnuTLS. The project was implemented using Protobuf, as well as gRPC.
_ _ _ _ 0
| |__ _ _| |__ | |__ | | ___ o
| '_ \| | | | '_ \| '_ \| |/ _ \ O
| |_) | |_| | |_) | |_) | | __/ 0
|_.__/ \__,_|_.__/|_.__/|_|\___| o
POP3 Client
Usage: ./bubble [OPTIONS]
Options:
-h,--help Print this help message and exit
-s,--server TEXT Server Domain
-u,--user TEXT Account Name
-p,--pass TEXT Account Password
-t,--tls Connect using TLS
--port INT Specify custom port
-j,--json TEXT Relative path to JSON file containing the Config
-i,--interactive Enable Interactive Shell
mkdir -p build && cd build && meson .. && ninja
fischer_project_2/build on ξ master [!] at βΈοΈ docker-desktop took 23s
β ./bubble -j ../config.json -i
[2021-03-14 20:24:36.812] [console] [info] Connection successfully established
[2021-03-14 20:24:37.723] [console] [info] Successfully Logged in!
[2021-03-14 20:24:37.725] [console] [info] gRPC Server listening on 0.0.0.0:50051
bubble> help
Bubble Interactive Client:
dl / download <message_id> - download email with id
rm / delete <message_id> - delete email with id
ls / list <amount> - list amount of mails
exit - disconnects the session
help - displays this message
bubble> ls 5
+------------+-----------------------------------+------------------------------------------------------------------+---------------------------------+
| Message ID | Recieved From | Subject | Date |
+------------+-----------------------------------+------------------------------------------------------------------+---------------------------------+
| 6 | David Fischer <david@konst.fish> | Fwd: Philip Trauner und andere teilen ihre Meinung auf LinkedIn | Sun, 7 Mar 2021 21:13:56 +0100 |
+------------+-----------------------------------+------------------------------------------------------------------+---------------------------------+
| 5 | David Fischer <david@konst.fish> | Fwd: Sie werden wahrgenommen, David Fischer | Sun, 7 Mar 2021 21:13:53 +0100 |
+------------+-----------------------------------+------------------------------------------------------------------+---------------------------------+
| 4 | David Fischer <david@konst.fish> | Fwd: DJI MSDK iOS Update Delay Notice | Sun, 7 Mar 2021 21:13:46 +0100 |
+------------+-----------------------------------+------------------------------------------------------------------+---------------------------------+
| 3 | David Fischer <david@konst.fish> | Fwd: Hot in March | Sun, 7 Mar 2021 21:13:13 +0100 |
+------------+-----------------------------------+------------------------------------------------------------------+---------------------------------+
| 2 | David Fischer <david@konst.fish> | Fwd: WIRED und andere teilen ihre Meinung auf LinkedIn | Sat, 6 Mar 2021 22:59:52 +0100 |
+------------+-----------------------------------+------------------------------------------------------------------+---------------------------------+
bubble> dl 6
[2021-03-14 20:24:47.324] [console] [info] Saved message with ID: 6
bubble> rm 6
[2021-03-14 20:24:51.523] [console] [info] Deleted message with ID: 6
bubble> exit
[2021-03-14 20:24:54.536] [console] [info] Successfully Quit Session!