Article 4Y9EP [SOLVED] Socket client with select

[SOLVED] Socket client with select

by
end
from LinuxQuestions.org on (#4Y9EP)
hi

i try put select this way but when i recive message it exit loop and shutdown.

Code:#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/socket.h>
#include <sys/types.h>
#include<arpa/inet.h>
#include <fcntl.h>
#include <errno.h>

int main(int argc , char *argv[] )
{
int sockett;
struct sockaddr_in server;
char buffer[1024];
char bufferr[1024]="hi server";
int result;
fd_set readset;

if(argc<3)
{
printf("Usage ip port:: a.out 127.0.0.1 80\n");
exit(0);
}

sockett=socket(AF_INET,SOCK_STREAM ,0);

if (sockett<0)
printf("SOCKET ERROR\n");
else
printf("SOCKET_CREATED\n");

server.sin_family=AF_INET;
server.sin_port= htons(atoi(argv[2]));
server.sin_addr.s_addr =inet_addr(argv[1]);

int ret;
ret=connect(sockett, (struct sockaddr *)&server, sizeof(struct sockaddr_in));
if( ret < 0 )
{ printf("NOT_CONNECTED\n");
}
else
printf("CONNECTED\n");

FD_ZERO(&readset);
FD_SET(sockett,&readset);

while(ret);
{

result=select(sockett + 1, &readset ,0 ,0 ,0);

if(result <0)
{

printf("SELECT_ERROR\n");
}
else
printf("SELECT\n");
FD_ISSET(sockett,&readset);
printf("fdisset\n");

result=recv(sockett, buffer, 1024, 0);
printf("%s\n",buffer);

}

//send(sockett,bufferr,1024,0);
//recv(sockett, buffer, 1024, 0);
//printf("%s\n",buffer);

}latest?d=yIl2AUoC8zA latest?i=4Gk_I-bc6RM:iIK1vG0lbDc:F7zBnMy latest?i=4Gk_I-bc6RM:iIK1vG0lbDc:V_sGLiP latest?d=qj6IDK7rITs latest?i=4Gk_I-bc6RM:iIK1vG0lbDc:gIN9vFw4Gk_I-bc6RM
External Content
Source RSS or Atom Feed
Feed Location https://feeds.feedburner.com/linuxquestions/latest
Feed Title LinuxQuestions.org
Feed Link https://www.linuxquestions.org/questions/
Reply 0 comments