Skip to content

πŸ“¨ - A POP3 email application in C/C++.

License

Notifications You must be signed in to change notification settings

ValerioL29/sent-me-email

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

39 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

SentMeEmail

Introduction

πŸ“¨ - A POP3 email application in C/C++.

Goals -

  1. Communicate with pop3 server.
  2. Store Email in *.eml format.
  3. Friendly user interface and good interactive user experience.

Project Structure

Sent Me Email
β”œβ”€β”€ CMakeLists.txt
β”œβ”€β”€ Config.h.in
β”œβ”€β”€ README.md
β”œβ”€β”€ build
β”‚Β Β  └── pop3-client
β”œβ”€β”€ lib
β”‚Β Β  β”œβ”€β”€ Base64Codec
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ Base64Codec.h
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ CMakeLists.txt
β”‚Β Β  β”‚Β Β  └── base64.cpp
β”‚Β Β  β”œβ”€β”€ Error
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ CMakeLists.txt
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ Error.h
β”‚Β Β  β”‚Β Β  └── error.cpp
β”‚Β Β  β”œβ”€β”€ Pop3Session
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ CMakeLists.txt
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ Pop3Session.h
β”‚Β Β  β”‚Β Β  └── pop3session.cpp
β”‚Β Β  β”œβ”€β”€ Socket
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ CMakeLists.txt
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ Socket.h
β”‚Β Β  β”‚Β Β  └── socket.cpp
β”‚Β Β  └── config.h
β”‚Β Β  └── conio.h
β”œβ”€β”€ main.cpp
└── resources

How to Run this project

  1. Install cmake 3.0.0 or higher version.
  2. Clone this project onto your device and cd into project folder.
  3. Execute cmake -B build to create target folder.
  4. Execute cmake --build build to build the whole project and create an executable target.
  5. Run build/pop3-client to start client application, enjoy!

Function Requirements

Basic

  • Connect POP3 server on port 110
  • Guide user to login and show information about their mails
  • Display prompt characters such as mypop >
  • Can display content of mails in terminal
  • The communication procedure can be captured by Wireshark

Advanced

  • Login with implicit password (replace your password by ****)
  • Can download mails and save them only on local machine (remove from remote server)
  • Provide function "Display by subject"
  • Provide function "Search text in all mails"