aboutsummaryrefslogtreecommitdiff
path: root/extmod/modusocket.c
diff options
context:
space:
mode:
authoriabdalkader <i.abdalkader@gmail.com>2022-01-09 15:37:02 +0200
committerDamien George <damien@micropython.org>2022-01-12 14:37:32 +1100
commit842da930118d7678741dd419b1433af9d6d7ac4d (patch)
tree190c971c591c6aa5a69b210c5e0d9985e998b69f /extmod/modusocket.c
parent67420de4f4faa214de853dc70ef307d3571bfc28 (diff)
extmod/modusocket: Initialise accepted socket state.
Diffstat (limited to 'extmod/modusocket.c')
-rw-r--r--extmod/modusocket.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/extmod/modusocket.c b/extmod/modusocket.c
index 0335f53cb..a42b3213f 100644
--- a/extmod/modusocket.c
+++ b/extmod/modusocket.c
@@ -151,6 +151,17 @@ STATIC mp_obj_t socket_accept(mp_obj_t self_in) {
socket2->nic = MP_OBJ_NULL;
socket2->nic_type = NULL;
+ // set the same address family, socket type and protocol as parent
+ socket2->domain = self->domain;
+ socket2->type = self->type;
+ socket2->proto = self->proto;
+ socket2->bound = false;
+ socket2->fileno = -1;
+ #if MICROPY_PY_USOCKET_EXTENDED_STATE
+ socket2->timeout = 0;
+ socket2->state = NULL;
+ #endif
+
// accept incoming connection
uint8_t ip[MOD_NETWORK_IPADDR_BUF_SIZE];
mp_uint_t port;