Sign in to follow this  

recv() gone haywire

Recommended Posts

Hello, I am currently at work on a primative IMer to play with the concepts of networking. However, I am having problems using the send() and recv() functions. Right now my server reads:
int currentClient=0;
cout<<"Client has connected"<<endl;
char recvdWords[36];
cout<<"Client says "<<recvdWords<<endl;

and my client reads:
cout<<"Connecting to server..."<<endl;
    //Define server socket
    sockaddr_in server;
    if(connect(serverSock,(struct sockaddr*)&server,sizeof(server))==SOCKET_ERROR)
          cout<<"\nError: Failed to connect to server!"<<endl;
          return 0;
    char words[]="Look! The program works!";

But when I run the client, the server spits out a string of strange characters. The string is the same every time, even if I change what I'm sending. Why won't send() and recv() work?

Share this post

Link to post
Share on other sites
There is a forum specifically for networking stuff.

At any rate, when you are getting errors it helps to check error codes. That would probably give you an idea of what the problem is. Likely recv is returning an error and since you're not checking for it you print more-or-less random garbage.

The most obvious problem is that you're recving from your listen socket instead of the socket returned by accept...

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this