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
Apart from cron
I need to run a php file every one hour. Is there any other solution apart from cron job?
Problem with DB connection
Hello there! I'm new to this forum and I'm new to PHP coding also. I wrote something that doesn't ma
Grids not displaying decimals, and behaving differently on different PCs?
Hello,
I coded a relatively simple MII application that allows data from a form to be add
pagination - need help on passing of search query.
Hi, i have been trying for days but couldn't get this sorted out. Would like some professional help
Material Master Update through BAPI - Follow up material not updated
Hi Experts,
I am updating the material master through a custom transaction using the BAPI
finding key position of specified value in multi-dimensional array
Code: $openedfile = fopen($tfc_file4, "r");
$rc = 1;
while(!feof($openedfile))
{<
Problem with variable declaration in switch statement
Hello, I am having some trouble assigning a value to a variable inside a switch statement. What I a
update the selected existing records of database
Hi frndz,
I am new to php and get stuck....
Edit.php > Update.php > Updatea
Final year project, please point me in the right direction
hi there for my final year project I'm aiming to build a php script shell to use as an expert system
tag inside php... hi
Code: <?php echo "<td width="$columnWidth%" align=&
|