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 Like 16 Dislike
Previous forums Next forums
Other forums

help with image text
Hi ...

see i need the text of the name and number to start in the center and always be in the

insert mysql embeded videos as blobs?
Using TinyMCE my client will be able to embed images and flash videos into large columns of text whi

Select question
Hi,

First I would like to say that php is pretty new for me..
so please don't shoot me if

Is there a way to override built in php functions without APD?
I am trying to use the
rename_function()
override_function()
options that are built into

Problem with an browser game.
Hello,i just joined that great forum and i got php prob,its kinda freaky...anyway i got browser game

Set Categories
I am creating a submission form for somebody to come in and submit products. These products are sep

Auto fill in input value based on User_ID
Hello,

I'm looking form some input on the following problem.

User loads page ->

couldn't connect to your database
Hello I am new to php mysql

Actually i have read A tutorial on nettuts
"http://net.tu

AJAX form submit
I recently built a form that submits data to my database with an ajax function that is called throug

While Problem
i am having a problem with a while statement here is the code
Code: [Select]<?php
sess

Sign up to write
Sign up now if you have flare of writing..
Login   |   Register
Follow Us
Indyaspeak @ Facebook Indyaspeak @ Twitter Indyaspeak @ Pinterest RSS



Play Free Quiz and Win Cash