Write a smtp client program and smtp server program to inplement the following simplified smtp protocol based on the tcp service and make sure the programSupports mulltiple clientes. import...


Write a smtp client program and smtp server program to inplement the following simplified smtp protocol based on the tcp service and make sure the programSupports mulltiple clientes.


import java.io.BufferedReader;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.io.OutputStream;

import java.io.PrintStream;

import java.net.ServerSocket;

import java.net.Socket;





public class Server {


public static void main(String[] args) throws Exception {

System.out.println("Stablishing connection");

ServerSocket server = new ServerSocket(25);

System.out.println("guardando concexion.");

Socket socket = server.accept();

System.out.println("conexion establecida.");



InputStream input = socket.getInputStream();

OutputStream output = socket.getOutputStream();



BufferedReader in = new BufferedReader(new InputStreamReader(input));

PrintStream out = new PrintStream(output);





while (true){

String mensagem = in.readLine();



System.out.println(

"Mensagem recebida do cliente [" +

socket.getInetAddress().getHostName() +

"]: " +

mensagem);

if ("FIM".equals(mensagem)){

break;

}

out.println(mensagem);

}



System.out.println("Encerrado servidor");

in.close();

out.close();

socket.close();

System.out.println("Encerrado servidor");

server.close();



}



}


========================================================


import java.io.BufferedReader;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.io.OutputStream;

import java.io.PrintStream;

import java.net.Socket;

import java.util.Properties;

import java.util.Scanner;

import javax.mail.Message;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;


public class Client {

public static BufferedReader in;

public static PrintStream out;

public static void main(String[] args) throws Exception {

Scanner scanner = new Scanner(System.in);

System.out.println("Enter the HostName (or ip address) of your SMTP server");

String ipAddress = scanner.nextLine();



//Buildup the TCP connection to your smtp server



System.out.println("stablishing connection");

System.out.println("Initializing connection with the servidor.");



try {

Socket socket = new Socket(ipAddress, 25);//aqio en puerto va ipaddress

System.out.println("Connection stablished");


InputStream input = socket.getInputStream();

OutputStream output = socket.getOutputStream();


BufferedReader in = new BufferedReader(new InputStreamReader(input));

PrintStream out = new PrintStream(output);

//printstream para guardar strings.podemos leer mjs de cliente





/**

* Wait for, read and display a 220 response from he SMTP server

*

*/

while(true) {

System.out.println("Digito mimensaje para mandarlo a servidor.| 220 smtp.server.com Simple Mail Transfer Service Ready ");

String mensagem = scanner.nextLine();



out.println(mensagem);



if("FIM".equals(mensagem)){

break;





}

mensagem = in.readLine();

System.out.println(

"mensagem recibido do servodor: " +

mensagem);



}



} catch (Exception e) {// esto es igual q cachar UnknownHostException

System.out.println("The given Enter the HostName (or ip address) of "

+ "your SMTP server, was not recognized " + ipAddress);

System.exit(0);//a nonzero indica abnormal condicion

}


}


}

May 19, 2022
SOLUTION.PDF

Get Answer To This Question

Submit New Assignment

Copy and Paste Your Assignment Here