UDP server recvfrom() always returns -1? :(
Posted on
16th Feb 2014 07:03 pm by
admin
Hello all,
I am getting a very strange error in my code :( I am writing a server application in C, to send and receive UDP packets to/from a client. Right now, im just running a loop in which the server receives packets using recvfrom() however.... the function seems to block and everytime I send it something, it sets errno to "resource temporarily unavailable" which is strange, cause it blocks until I send something, meaning that it knows something came no? However, recvfrom always returns -1 This is how I initialized the socket:
//struct timeval tv;
if((s = socket(AF_INET, SOCK_DGRAM, 0))==-1)
return 0;
bzero(&si_me,sizeof(si_me));
si_me.sin_family = AF_INET;
si_me.sin_port = htons(PORT);
si_me.sin_addr.s_addr = htonl(INADDR_ANY);
/*** Set socket timeout ***
tv.tv_sec = 1;
tv.tv_usec = 0;
if (setsockopt(s, SOL_SOCKET, SO_RCVTIMEO, &tv, sizeof(tv)) < 0)
{
printf("Couldn't set socket timeoutn");
return 0;
}*/
if(bind(s,(struct sockaddr*) &si_me, sizeof(si_me))==-1)
return 0;
return 1;
and then I ran:
do
{
done = recvData();
printf("Received %d n", done);
}while(done == 0);
with recvData() being:
int recvData(void)
{
if (recvfrom(s, (char*)&buf, UDP_BUFFER_LEN, 0, (struct sockaddr*) &si_other_comp, &slen)==-1)
{
printf("Couldn't read socket (%s)n",strerror(errno));
return 0;
}
return 1;
}
so, program does nothing until it gets a packet, then says it cant read it and then continues doing nothing until it gets another packet.... any ideas?
No comments posted yet
Your Answer:
Login to answer
125
16
Other forums
Embedding flash object in Else statement
This is my first major project in PHP and I'm having some trouble embedding a flash object in an Els
PHP If Else statement for breadcrumb
Hi
I am trying to use a PHP if else statement to display a breadcrumb link on wordpress
Concatenate two strings ???
I have string one $string1 and another $string2.
How to concatenate (add) both of them $str
Multiple submit forms inside a mysql array page
Hi all,
Im having trouble to get the beneath script to work the thing i can't seem to get wor
Why is this function returning a false value when it shouldn't be??
This is in an include file. I want it to check a value in an html form and see if it's just white s
show random images
hey guys
can someone please suggest a way in which the following code can be edited so it onl
function not returning the correct value
I have a program that needs to return a value from a function. I have an output statement inside the
Is it possible to stop reservation creation in PM Order?
Hi All,
Is it possible to stop reservation creation in PM Order?
Thanks in adv
Populate drop down list from table??
Lets say for arguments sake that i have a table which contains the numbers 1 to 10.
How can i get
Request.UrlReferrer
I need to make it so that a page can only be loaded when a button is clicked on a specific page. I d