From 0779409d0da1633d9abce5ed0a349aea36edb0c4 Mon Sep 17 00:00:00 2001
From: Paul Sokolovsky <pfalcon@users.sourceforge.net>
Date: Sun, 28 Feb 2016 02:14:49 +0200
Subject: [PATCH] extmod/modlwip: lwip_tcp_receive: Properly map lwIP error to
 POSIX errno.

---
 extmod/modlwip.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/extmod/modlwip.c b/extmod/modlwip.c
index 820c15b72..e3fc5068d 100644
--- a/extmod/modlwip.c
+++ b/extmod/modlwip.c
@@ -396,7 +396,8 @@ STATIC mp_uint_t lwip_tcp_receive(lwip_socket_obj_t *socket, byte *buf, mp_uint_
                 return 0;
             }
         } else if (socket->state != STATE_CONNECTED) {
-            *_errno = -socket->state;
+            assert(socket->state < 0);
+            *_errno = error_lookup_table[-socket->state];
             return -1;
         }
     }
-- 
GitLab