• 0

سؤال

#include <stdio.h>

#include <stdlib.h>

#include <netdb.h>

#include <netinet/in.h>

#include <string.h>

int main(int argc, char *argv[])

int sockfd, portno, n;

struct sockaddr_in serv_addr;

struct hostent *server;

char buffer[256];

if (argc < 3) {

fprintf(stderr,"usage %s hostname port\n", argv[0]);

exit(0);

portno = atoi(argv[2]);

sockfd = socket(AF_INET, SOCK_STREAM, 0);

perror("ERROR opening socket");

                  exit(1);

server = gethostbyname(argv[1]);

if (server == NULL)

fprintf(stderr,"ERROR, no such host\n");

bzero((char *) &serv_addr, sizeof(serv_addr));

serv_addr.sin_family = AF_INET;

                     bcopy((char *)server->h_addr, (char *)&serv_addr.sin_addr.s_addr, server->h_length);

serv_addr.sin_port = htons(portno);

if (connect(sockfd, (struct sockaddr*)&serv_addr, sizeof(serv_addr)) < 0)

printf("Please enter the message: ");

bzero(buffer,256);

                  fgets(buffer,255,stdin);

n = write(sockfd, buffer, strlen(buffer));

if (n < 0)

perror("ERROR writing to socket");

n = read(sockfd, buffer, 255);

printf("%s\n",buffer);

return 0;

portno = 5001;

serv_addr.sin_addr.s_addr = INADDR_ANY;

if (bind(sockfd, (struct sockaddr *) &serv_addr, sizeof(serv_addr)) < 0)

listen(sockfd,5);

clilen = sizeof(cli_addr);

newsockfd = accept(sockfd, (struct sockaddr *)&cli_addr, &clilen);

if (newsockfd < 0)

bzero(buffer,256);

 

AF_INET

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

0 إجابة على هذا السؤال .

لاتوجد إجابات على هذا السؤال حتى الآن .

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .