/*
* SMTP USING TCP : Server Program
* Programmed by : Lubin N
*/
#include<stdio.h>
#include<arpa/inet.h>
#include<fcntl.h>
#include<string.h>
#define PORT 4100
main()
{
struct sockaddr_in servaddr,cliaddr;
int sock1,sock2,len,l,fd,lsize,i,ch;
char fname[15],buff[500],sendname[15];
servaddr.sin_family=AF_INET;
servaddr.sin_port=htons(PORT);
servaddr.sin_addr.s_addr=INADDR_ANY;
sock1=socket(AF_INET,SOCK_STREAM,0);
bind(sock1,(struct sockaddr *)&servaddr,sizeof(servaddr));
printf("bind\n");
listen(sock1,4);
sock2=accept(sock1,(struct sockaddr *)&cliaddr,&len);
printf("accept\n");
printf("from:");
l=read(sock2,sendname,15);
puts(sendname);
for(i=0;i<l;i++)
fname[i]=sendname[i];
fd=open(fname,O_RDWR | O_CREAT,0777);
len=read(sock2,buff,500);
printf("no of characters read %d\n",len);
write(fd,buff,len);
printf("%s\n",buff);
close(sock1);
close(sock2);
}
/*
* SMTP USING TCP : Client Program
* Programmed by : Lubin N
*/
#include<stdio.h>
#include<arpa/inet.h>
#include<fcntl.h>
#include<string.h>
#define PORT 4100
main()
{
int sock,len;
char buff[500],sendname[15],recvname[15];
struct sockaddr_in servaddr,cliaddr;
servaddr.sin_family=AF_INET;
servaddr.sin_port=htons(PORT);
servaddr.sin_addr.s_addr=INADDR_ANY;
sock=socket(AF_INET,SOCK_STREAM,0);
connect(sock,(struct sockaddr *)&servaddr,sizeof(servaddr));
printf("Enter the name of sender\n");
gets(sendname);
write(sock,sendname,15);
printf("Enter the name of receiver\n");
gets(recvname);
printf("Enter the data\n");
gets(buff);
len=strlen(buff);
write(sock,buff,len);
close(sock);
}
No comments:
Post a Comment