mirror of
https://github.com/lwip-tcpip/lwip.git
synced 2024-10-02 12:52:10 +00:00
Fixed last commit: can only check for bound sockets, not for unbound. There's some work to do for IPv6 in TCP...
This commit is contained in:
parent
a6a92d42f9
commit
0d1606ff23
@ -593,17 +593,14 @@ tcp_listen_dual_with_backlog(struct tcp_pcb *pcb, u8_t backlog)
|
|||||||
struct tcp_pcb *lpcb;
|
struct tcp_pcb *lpcb;
|
||||||
struct tcp_pcb_listen *l;
|
struct tcp_pcb_listen *l;
|
||||||
|
|
||||||
/* Dual listen only works on bound pcbs (or else we cannot check for
|
if (pcb->local_port != 0) {
|
||||||
duplicate port use. */
|
/* Check that there's noone listening on this port already
|
||||||
if (pcb->local_port == 0) {
|
(don't check the IP address since we'll set it to ANY */
|
||||||
return NULL;
|
for(l = tcp_listen_pcbs.listen_pcbs; l != NULL; l = l->next) {
|
||||||
}
|
if (l->local_port == pcb->local_port) {
|
||||||
/* Check that there's noone listening on this port already
|
/* this port is already used */
|
||||||
(don't check the IP address since we'll set it to ANY */
|
return NULL;
|
||||||
for(l = tcp_listen_pcbs.listen_pcbs; l != NULL; l = l->next) {
|
}
|
||||||
if (l->local_port == pcb->local_port) {
|
|
||||||
/* this port is already used */
|
|
||||||
return NULL;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user