lwip-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lwip-users] lwIP ioctlsocket() problems


From: lightBearer
Subject: [lwip-users] lwIP ioctlsocket() problems
Date: Sat, 1 Sep 2012 01:34:10 -0700 (PDT)

Hi all, I'm working on a hardware control system on a BF548 via ethernet using UDP using the lwIP stack. I tried to use ioctlsocket() to make the recv() unblocking. However, when I use ioctlsocket(), i can't receive anything. recv() keeps returning (-1) even if i try to send in a DOS attack ;). when i'm operating in blocking mode, everything works fine. i'm in dire need of help.. find my code below... (note that for easy debugging I have made the code simple silly) socket_fd = socket(AF_INET, SOCK_DGRAM, 0); // create socket if ( socket_fd < 0 ) { printf("socket call failed\n"); return; } memset(&sa, 0, sizeof(struct sockaddr_in)); ra.sin_family = AF_INET; ra.sin_addr.s_addr = htonl(INADDR_ANY); ra.sin_port = htons(RECEIVER_PORT_NUM); if (bind(socket_fd, (struct sockaddr *)&ra, sizeof(struct sockaddr_in)) == -1) // Bind the UDP socket to the port RECEIVER_PORT_NUM { printf("bind to port number %d ,IP address INADDR_ANY failed\n",RECEIVER_PORT_NUM); close(socket_fd); return; } mode = 1; ret = ioctlsocket(socket_fd, FIONBIO, &mode ); if(ret<0) printf("ioctlsocket() failed\n"); while(1) {recv_data = recv(socket_fd,data_buffer1,sizeof(data_buffer1),0); // This is silly i know. but still // returns -1 if(recv_data>0) break;} printf("I got a packet\n"); printf("closing socket....\n"); close(socket_fd); }

View this message in context: lwIP ioctlsocket() problems
Sent from the lwip-users mailing list archive at Nabble.com.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]