Fixed nginx listen() bug

This commit is contained in:
Joseph Henry 2015-10-16 14:43:38 -04:00
parent 3e8e025704
commit b96c08f35c
3 changed files with 9 additions and 5 deletions

View File

@ -740,8 +740,8 @@ int listen(LISTEN_SIG)
memcpy(&cmd[1], &rpc_st, sizeof(struct listen_st));
pthread_mutex_lock(&lock);
send_command(fdret_sock, cmd);
err = get_retval();
//err = get_retval();
pthread_mutex_unlock(&lock);
errno = ERR_OK;
return err;
//errno = ERR_OK;
return ERR_OK;
}

View File

@ -925,6 +925,7 @@ void NetconEthernetTap::handle_listen(PhySocket *sock, void **uptr, struct liste
send_return_value(conn, ERR_OK, ERR_OK);
}
else {
/*
fprintf(stderr, "handle_listen(): unable to allocate memory for new listening PCB\n");
// FIXME: This does not have an equivalent errno value
// lwip will reclaim space with a tcp_listen call since a PCB in a LISTEN
@ -933,13 +934,16 @@ void NetconEthernetTap::handle_listen(PhySocket *sock, void **uptr, struct liste
// socket, even if the reason isn't describing what really happened internally.
// See: http://lwip.wikia.com/wiki/Raw/TCP
send_return_value(conn, -1, EBADF);
}
*/
}
}
else {
/*
// We can't find a connection mapped to the socket fd provided
fprintf(stderr, "handle_listen(): can't locate connection for PCB\n");
send_return_value(conn, -1, EBADF);
}
*/
}
}
/*

BIN
netcon/libintercept.so.1.0 Executable file

Binary file not shown.