clean out mbed3 lwip hacks
this upstream mbed patch on sal-stack-lwip sorts the listen probs
a8adf15739
.patch
Signed-off-by: Andy Green <andy.green@linaro.org>
This commit is contained in:
parent
0a05792d8d
commit
ae7b27c77a
1 changed files with 9 additions and 12 deletions
|
@ -141,10 +141,9 @@ int lws_conn::actual_onRX(Socket *s)
|
||||||
void lws_conn_listener::onIncoming(TCPListener *tl, void *impl)
|
void lws_conn_listener::onIncoming(TCPListener *tl, void *impl)
|
||||||
{
|
{
|
||||||
mbed::util::CriticalSectionLock lock;
|
mbed::util::CriticalSectionLock lock;
|
||||||
TCPStream *ts = srv.accept(impl);
|
|
||||||
lws_conn *conn;
|
lws_conn *conn;
|
||||||
|
|
||||||
if (!impl || !ts) {
|
if (!impl) {
|
||||||
onError(tl, SOCKET_ERROR_NULL_PTR);
|
onError(tl, SOCKET_ERROR_NULL_PTR);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -154,7 +153,9 @@ void lws_conn_listener::onIncoming(TCPListener *tl, void *impl)
|
||||||
lwsl_err("OOM\n");
|
lwsl_err("OOM\n");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
conn->ts = ts;
|
conn->ts = srv.accept(impl);
|
||||||
|
if (!conn->ts)
|
||||||
|
return;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* we use the listen socket wsi to get started, but a new wsi is
|
* we use the listen socket wsi to get started, but a new wsi is
|
||||||
|
@ -164,16 +165,12 @@ void lws_conn_listener::onIncoming(TCPListener *tl, void *impl)
|
||||||
lws_server_socket_service(wsi->protocol->owning_server,
|
lws_server_socket_service(wsi->protocol->owning_server,
|
||||||
wsi, (struct pollfd *)conn);
|
wsi, (struct pollfd *)conn);
|
||||||
|
|
||||||
ts->setOnSent(Socket::SentHandler_t(conn, &lws_conn::onSent));
|
conn->ts->setOnSent(Socket::SentHandler_t(conn, &lws_conn::onSent));
|
||||||
ts->setOnReadable(TCPStream::ReadableHandler_t(conn, &lws_conn::onRX));
|
conn->ts->setOnReadable(TCPStream::ReadableHandler_t(conn, &lws_conn::onRX));
|
||||||
ts->setOnError(TCPStream::ErrorHandler_t(conn, &lws_conn::onError));
|
conn->ts->setOnError(TCPStream::ErrorHandler_t(conn, &lws_conn::onError));
|
||||||
ts->setOnDisconnect(TCPStream::DisconnectHandler_t(conn,
|
conn->ts->setOnDisconnect(TCPStream::DisconnectHandler_t(conn,
|
||||||
&lws_conn::onDisconnect));
|
&lws_conn::onDisconnect));
|
||||||
/*
|
|
||||||
* mbed3 is messed up as of 2015-11-08, data packets may
|
|
||||||
* appear on the listening socket initially
|
|
||||||
*/
|
|
||||||
conn->actual_onRX((Socket *)tl);
|
|
||||||
conn->actual_onRX((Socket *)conn->ts);
|
conn->actual_onRX((Socket *)conn->ts);
|
||||||
|
|
||||||
lwsl_debug("%s: exit\n", __func__);
|
lwsl_debug("%s: exit\n", __func__);
|
||||||
|
|
Loading…
Add table
Reference in a new issue