https://github.com/naseem-shawarba/smtp_server_lite
SMTP Server Lite is a lightweight implementation of an SMTP server in Java using NIO (Non-blocking I/O).
https://github.com/naseem-shawarba/smtp_server_lite
java java-nio server
Last synced: 11 months ago
JSON representation
SMTP Server Lite is a lightweight implementation of an SMTP server in Java using NIO (Non-blocking I/O).
- Host: GitHub
- URL: https://github.com/naseem-shawarba/smtp_server_lite
- Owner: naseem-shawarba
- Created: 2024-03-25T18:20:51.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-04-27T22:23:07.000Z (about 2 years ago)
- Last Synced: 2025-01-29T15:13:26.943Z (over 1 year ago)
- Topics: java, java-nio, server
- Language: Java
- Homepage:
- Size: 11.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# SMTP Server Lite
## Overview
SMTP Server Lite is a lightweight implementation of an SMTP (Simple Mail Transfer Protocol) server in Java using NIO (Non-blocking I/O). It supports a reduced set of SMTP commands including HELO, MAIL FROM, RCPT TO, DATA, HELP, and QUIT. The Server stores the Received emails efficiently in files following a specific naming convention. The naming convention for the files is as follows:
< receiver >/< sender >_< message_id >
## Features
- Implementation of a reduced version of the SMTP protocol.
- Utilizes Java NIO for non-blocking I/O operations.
- Supports concurrent handling of multiple emails.
- Efficient storage of received emails in files.
- Compatible with a simple SMTP client for testing purposes.
## Installation
- Clone the repository: `https://github.com/naseem-shawarba/SMTP_Server_Lite.git`
- Compile the project using your preferred Java IDE or command-line tools.
## Usage
1. Run the SMTP Server Lite.
2. Use a compatible SMTP client to send test emails. Alternatively, you can use Netcat with the following command:
`netcat localhost `
Make sure to end each command with a carriage return (CRLF). To insert a carriage return, press Ctrl+V followed by Ctrl+M. The carriage return will appear as (^M).
3. Check the specified directory for stored emails.