Hi,
Except set MEMP_NUM_TCP_PCB=1 in your lwipopts.h, I don't think there is a way to do that with tcp_listen. Even in socket layer, with "lwip_listen(int s, int backlog)", the "backlog" parameter is not used. But you can close as soon as possible any new connection: to do that, you can use a boolean initialized to false, and in "accept" callback (set by tcp_accept), you do something like this:
int connected=0;
static err_t accept_function(void *arg, struct tcp_pcb *newpcb, err_t err)
{ if (connected) {
tcp_close(newpcb);
} else {
connected=1;
/* your normal accept behavior */
}
}
and when you have finish to use your "single" connection, you reset connected to 0.
----- Original Message -----
Sent: Wednesday, October 10, 2007 8:46 PM
Subject: [lwip-users] Limit tcp_listen to single connection
Is there a way to limit the tcp_listen function to only accept a single connection. I would like to limit a specific port to accept the first connection request and then refuse any additional connections until the first connection has been closed. Does anyone know of a way to do this?
_______________________________________________
lwip-users mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/lwip-users
_______________________________________________
lwip-users mailing list