Welcome to Tech Support Forum home to more then 136,000 problems solved. Issues have included: Spyware, Malware, Virus Issues, Windows, Microsoft, Linux, Networking, Security, Hardware, and Gaming Getting your problem solved is as easy as:
1. Registering for a free account
2. Asking your question
3. Receiving an answer

Registered members:
* Get free support
* Communicate privately with other members (PM).
* Removal of this message
* See fewer ads.
* And much more..

 





Want to know how to post a question? click here Having problems with spyware and pop-ups? First Steps
Go Back   Tech Support Forum > Design Forum > Web Design & Programming
User Name
Password
Site Map Register Donate Rules Blogs Mark Forums Read

Web Design & Programming Discussion of web design, and server-side & client-side scripting

Reply
 
Thread Tools
Old 05-05-2008, 03:36 PM   #1 (permalink)
Registered User
 
Join Date: May 2008
Posts: 3
OS: win XP


PLZ help me to find out the problem

Hi!


actually i try to build a simple UDP client server that sends and receives the messages. there is no error in the code complie time but some run time error such as the broadcast messages are not send and received properly.

someone can help me to find out the problem in the following code.

server and client both are in seperate files and run seperately on the same machine using winxp SP2.
-----------------------------Server code

#include"winsock2.h"
#include<iostream>
#include<conio.h>

using namespace std;

int main()
{
WSADATA wsaData;
WSAStartup(MAKEWORD(2,2), &wsaData);

char sendbuff[] = "Broadcast Message";

SOCKET sock;
sock = socket(AF_INET,SOCK_DGRAM,0);

sockaddr_in server_addr;
sockaddr_in client;

int portnum = 9009;
char recvbuff[50];
int recvbufflen = 50;
int len = sizeof(struct sockaddr_in);
int val = 1;

setsockopt(sock,SOL_SOCKET,SO_REUSEADDR,(char*)&val, sizeof(int));
setsockopt(sock,SOL_SOCKET,SO_BROADCAST,(char*)&val, sizeof(int));

server_addr.sin_family = AF_INET;
server_addr.sin_addr.s_addr = htonl(INADDR_BROADCAST);
server_addr.sin_port = htons(portnum);

bind(sock,(sockaddr*)&server_addr,sizeof(struct sockaddr));



setsockopt(sock,SOL_SOCKET,SO_BROADCAST,(char*)&val, sizeof(int));

recvfrom(sock,recvbuff,recvbufflen,0,(sockaddr*)&client,&len);

sendto(sock,sendbuff,strlen(sendbuff)+1,0,(sockaddr*)&client,len);

cout<<"\n\n\t\tReceived data : "<<recvbuff;

cout<<"\n\n\tpress any key to CONT...";
_getch();

closesocket(sock);
WSACleanup();
}
------------------Client code--------------
#include"winsock2.h"
#include<iostream>
#include<conio.h>

using namespace std;

int main()
{
WSADATA wsaData;
WSAStartup(MAKEWORD(2,2), &wsaData);

char sendbuff[] = "Broadcast Message";

SOCKET sock;
sock = socket(AF_INET,SOCK_DGRAM,0);

sockaddr_in server_addr;

int portnum = 9009;
char recvbuff[50];
int recvbufflen = 50;
int len = sizeof(struct sockaddr_in);
char ip[] = "127.0.0.1";

server_addr.sin_family = AF_INET;
server_addr.sin_addr.s_addr = INADDR_ANY;
server_addr.sin_port = htons(portnum);

int val=1;
int sentbytes=0;

if((setsockopt(sock,SOL_SOCKET,SO_BROADCAST,(char*)&val, sizeof(int)))== SOCKET_ERROR)
cout<<"setsockopt() failed";

sentbytes = sendto(sock,sendbuff,strlen(sendbuff)+1,0,(sockaddr*)&server_addr,len);

recvfrom(sock,recvbuff,recvbufflen,0,(sockaddr*)&server_addr,&len);

cout<<"\n\n\tpress any key to CONT..."<<recvbuff;
_getch();

closesocket(sock);
WSACleanup();
}
curiousGUY is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Bookmark on Thread SoupReddit!
Reply With Quote
Reply


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off



All times are GMT -7. The time now is 06:43 PM.



Copyright 2001 - 2008, Tech Support Forum

Search Engine Friendly URLs by vBSEO

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81