espressif / esp-aws-iot

AWS IoT SDK for ESP32 based chipsets
Apache License 2.0
266 stars 157 forks source link

mbedtls ssl debug with coreMQTT-Agent (202210.01-LTS-release) (CA-344) #229

Open khuangCTS opened 5 days ago

khuangCTS commented 5 days ago

Checklist

Issue or Suggestion Description

Hello,

I am encountering and issue with CoreMQTT-Agent when connecting to my AWS IoT endpoint using and ESP32-S3. Upon connection to the endpoint, it looks to hang on my device and it happens intermittently. It has been very confusing to me as I have had no issues before and it has only occurred recently with my CoreMQTT-Agent. After further digging and looking through verbose logs I found something happening within the network transport (mbedtls). It appears to connect to the my IoT endpoint but when initializing the CoreMQTT-Agent task's command loop it look to hangs while waiting for some packets of data.

esp's mbedtls verbose logs:

I (12259) mbedtls: ssl_tls.c:4606 0x3fce20b4: => handshake
I (12269) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (12269) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (12269) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_HELLO_REQUEST
I (12279) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (12289) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (12299) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_CLIENT_HELLO
I (12309) mbedtls: ssl_client.c:919 0x3fce20b4: => write client hello
I (12319) mbedtls: ssl_msg.c:2783 0x3fce20b4: => write handshake message
I (12319) mbedtls: ssl_msg.c:2943 0x3fce20b4: => write record
I (12329) mbedtls: ssl_msg.c:3080 0x3fce20b4: <= write record
I (12329) mbedtls: ssl_msg.c:2904 0x3fce20b4: <= write handshake message
I (12339) mbedtls: ssl_client.c:1012 0x3fce20b4: <= write client hello
I (12349) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (12349) mbedtls: ssl_msg.c:2367 0x3fce20b4: message length: 279, out_left: 279
I (12359) mbedtls: ssl_msg.c:2374 0x3fce20b4: ssl->f_send() returned 279 (-0xfffffee9)
I (12369) mbedtls: ssl_msg.c:2401 0x3fce20b4: <= flush output
I (12379) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_SERVER_HELLO
I (12389) mbedtls: ssl_tls12_client.c:1193 0x3fce20b4: => parse server hello
I (12389) mbedtls: ssl_msg.c:4189 0x3fce20b4: => read record
I (12399) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (12409) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 0, nb_want: 5
I (12419) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 0, nb_want: 5
I (12419) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 5 (-0xfffffffb)
I (12439) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (12439) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (12439) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 5, nb_want: 100
I (12449) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 5, nb_want: 100
I (12459) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 95 (-0xffffffa1)
I (12469) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (12479) mbedtls: ssl_msg.c:4261 0x3fce20b4: <= read record
I (12479) mbedtls: ssl_tls12_client.c:1445 0x3fce20b4: server hello, total extension length: 19
I (12489) mbedtls: ssl_tls12_client.c:1659 0x3fce20b4: <= parse server hello
I (12499) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (12509) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (12509) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_SERVER_CERTIFICATE
I (12519) mbedtls: ssl_tls.c:8186 0x3fce20b4: => parse certificate
I (12529) mbedtls: ssl_msg.c:4189 0x3fce20b4: => read record
I (12529) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (12539) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 0, nb_want: 5
I (12549) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 0, nb_want: 5
I (12559) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 5 (-0xfffffffb)
I (12569) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (12569) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (12579) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 5, nb_want: 5008
I (12589) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 5, nb_want: 5008
I (12589) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 5003 (-0xffffec75)
I (12599) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (12649) mbedtls: ssl_msg.c:4261 0x3fce20b4: <= read record
I (12719) mbedtls: ssl_tls.c:8299 0x3fce20b4: <= parse certificate
I (12719) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (12719) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (12729) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_SERVER_KEY_EXCHANGE
I (12739) mbedtls: ssl_tls12_client.c:2087 0x3fce20b4: => parse server key exchange
I (12739) mbedtls: ssl_msg.c:4189 0x3fce20b4: => read record
I (12749) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (12759) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 0, nb_want: 5
I (12769) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 0, nb_want: 5
I (12769) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 5 (-0xfffffffb
I (12789) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (12789) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (12789) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 5, nb_want: 338
I (12799) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 5, nb_want: 338
I (12809) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 333 (-0xfffffeb3)
I (12819) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (12829) mbedtls: ssl_msg.c:4261 0x3fce20b4: <= read record
I (12839) mbedtls: ssl_tls12_client.c:1803 0x3fce20b4: ECDH curve: secp256r1
I (12869) mbedtls: ssl_tls12_client.c:2457 0x3fce20b4: <= parse server key exchange
I (12869) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (12869) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (12879) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_CERTIFICATE_REQUEST
I (12889) mbedtls: ssl_tls12_client.c:2496 0x3fce20b4: => parse certificate request
I (12899) mbedtls: ssl_msg.c:4189 0x3fce20b4: => read record
I (12899) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (12909) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 0, nb_want: 5
I (12919) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 0, nb_want: 5
I (12929) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 5 (-0xfffffffb)
I (12929) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (12949) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (12949) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 5, nb_want: 37
I (12959) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 5, nb_want: 37
I (12959) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 32 (-0xffffffe0)
I (12969) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (12979) mbedtls: ssl_msg.c:4261 0x3fce20b4: <= read record
I (12989) mbedtls: ssl_tls12_client.c:2658 0x3fce20b4: <= parse certificate request
I (12989) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (12999) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (13009) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_SERVER_HELLO_DONE
I (13019) mbedtls: ssl_tls12_client.c:2669 0x3fce20b4: => parse server hello done
I (13019) mbedtls: ssl_msg.c:4189 0x3fce20b4: => read record
I (13029) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (13039) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 0, nb_want: 5
I (13039) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 0, nb_want: 5
I (13049) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 5 (-0xfffffffb)
I (13059) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (13069) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (13069) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 5, nb_want: 9
I (13079) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 5, nb_want: 9
I (13089) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 4 (-0xfffffffc)
I (13099) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (13099) mbedtls: ssl_msg.c:4261 0x3fce20b4: <= read record
I (13109) mbedtls: ssl_tls12_client.c:2697 0x3fce20b4: <= parse server hello done
I (13119) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (13129) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (13129) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_CLIENT_CERTIFICATE
I (13139) mbedtls: ssl_tls.c:7592 0x3fce20b4: => write certificate
I (13149) mbedtls: ssl_msg.c:2783 0x3fce20b4: => write handshake message
I (13159) mbedtls: ssl_msg.c:2943 0x3fce20b4: => write record
I (13169) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (13169) mbedtls: ssl_msg.c:2367 0x3fce20b4: message length: 877, out_left: 877
I (13179) mbedtls: ssl_msg.c:2374 0x3fce20b4: ssl->f_send() returned 877 (-0xfffffc93)
I (13189) mbedtls: ssl_msg.c:2401 0x3fce20b4: <= flush output
I (13189) mbedtls: ssl_msg.c:3080 0x3fce20b4: <= write record
I (13199) mbedtls: ssl_msg.c:2904 0x3fce20b4: <= write handshake message
I (13209) mbedtls: ssl_tls.c:7665 0x3fce20b4: <= write certificate
I (13209) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (13219) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (13229) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_CLIENT_KEY_EXCHANGE
I (13239) mbedtls: ssl_tls12_client.c:2712 0x3fce20b4: => write client key exchange
I (13549) mbedtls: ssl_msg.c:2783 0x3fce20b4: => write handshake message
I (13549) mbedtls: ssl_msg.c:2943 0x3fce20b4: => write record
I (13549) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (13559) mbedtls: ssl_msg.c:2367 0x3fce20b4: message length: 75, out_left: 75
I (13569) mbedtls: ssl_msg.c:2374 0x3fce20b4: ssl->f_send() returned 75 (-0xffffffb5)
I (13569) mbedtls: ssl_msg.c:2401 0x3fce20b4: <= flush output
I (13579) mbedtls: ssl_msg.c:3080 0x3fce20b4: <= write record
I (13589) mbedtls: ssl_msg.c:2904 0x3fce20b4: <= write handshake message
I (13589) mbedtls: ssl_tls12_client.c:3207 0x3fce20b4: <= write client key exchange
I (13599) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (13609) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (13619) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_CERTIFICATE_VERIFY
I (13629) mbedtls: ssl_tls12_client.c:3255 0x3fce20b4: => write certificate verify
I (13629) mbedtls: ssl_tls.c:7206 0x3fce20b4: => derive keys
I (13639) mbedtls: ssl_tls.c:7330 0x3fce20b4: => calc verify
I (13649) mbedtls: ssl_tls.c:7349 0x3fce20b4: <= calc verify
I (13659) mbedtls: ssl_tls.c:7257 0x3fce20b4: <= derive keys
I (13669) mbedtls: ssl_tls.c:7330 0x3fce20b4: => calc verify
I (13669) mbedtls: ssl_tls.c:7349 0x3fce20b4: <= calc verify
I (13899) mbedtls: ssl_msg.c:2783 0x3fce20b4: => write handshake message
I (13899) mbedtls: ssl_msg.c:2943 0x3fce20b4: => write record
I (13909) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (13909) mbedtls: ssl_msg.c:2367 0x3fce20b4: message length: 269, out_left: 269
I (13919) mbedtls: ssl_msg.c:2374 0x3fce20b4: ssl->f_send() returned 269 (-0xfffffef3)
I (13929) mbedtls: ssl_msg.c:2401 0x3fce20b4: <= flush output
I (13939) mbedtls: ssl_msg.c:3080 0x3fce20b4: <= write record
I (13939) mbedtls: ssl_msg.c:2904 0x3fce20b4: <= write handshake message
I (13949) mbedtls: ssl_tls12_client.c:3367 0x3fce20b4: <= write certificate verify
I (13959) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (13969) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (13969) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_CLIENT_CHANGE_CIPHER_SPEC
I (13979) mbedtls: ssl_msg.c:5189 0x3fce20b4: => write change cipher spec
I (13989) mbedtls: ssl_msg.c:2783 0x3fce20b4: => write handshake message
I (13999) mbedtls: ssl_msg.c:2943 0x3fce20b4: => write record
I (14009) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (14009) mbedtls: ssl_msg.c:2367 0x3fce20b4: message length: 6, out_left: 6
I (14019) mbedtls: ssl_msg.c:2374 0x3fce20b4: ssl->f_send() returned 6 (-0xfffffffa)
I (14029) mbedtls: ssl_msg.c:2401 0x3fce20b4: <= flush output
I (14039) mbedtls: ssl_msg.c:3080 0x3fce20b4: <= write record
I (14039) mbedtls: ssl_msg.c:2904 0x3fce20b4: <= write handshake message
I (14049) mbedtls: ssl_msg.c:5202 0x3fce20b4: <= write change cipher spec
I (14059) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (14059) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (14069) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_CLIENT_FINISHED
I (14079) mbedtls: ssl_tls.c:8530 0x3fce20b4: => write finished
I (14089) mbedtls: ssl_tls.c:8364 0x3fce20b4: => calc finished tls
I (14089) mbedtls: ssl_tls.c:8395 0x3fce20b4: <= calc finished
I (14099) mbedtls: ssl_msg.c:2783 0x3fce20b4: => write handshake message
I (14109) mbedtls: ssl_msg.c:2943 0x3fce20b4: => write record
I (14109) mbedtls: ssl_msg.c:935 0x3fce20b4: => encrypt buf
I (14119) mbedtls: ssl_msg.c:1474 0x3fce20b4: <= encrypt buf
I (14129) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (14139) mbedtls: ssl_msg.c:2367 0x3fce20b4: message length: 45, out_left: 45
I (14139) mbedtls: ssl_msg.c:2374 0x3fce20b4: ssl->f_send() returned 45 (-0xffffffd3)
I (14149) mbedtls: ssl_msg.c:2401 0x3fce20b4: <= flush output
I (14159) mbedtls: ssl_msg.c:3080 0x3fce20b4: <= write record
I (14169) mbedtls: ssl_msg.c:2904 0x3fce20b4: <= write handshake message
I (14169) mbedtls: ssl_tls.c:8632 0x3fce20b4: <= write finished
I (14179) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (14179) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (14189) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_SERVER_CHANGE_CIPHER_SPEC
I (14199) mbedtls: ssl_msg.c:5211 0x3fce20b4: => parse change cipher spec
I (14209) mbedtls: ssl_msg.c:4189 0x3fce20b4: => read record
I (14209) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (14219) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 0, nb_want: 5
I (14229) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 0, nb_want: 5
I (14239) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 5 (-0xfffffffb)
I (14239) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (14249) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (14259) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 5, nb_want: 6
I (14269) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 5, nb_want: 6
I (14269) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 1 (-0xffffffff)
I (14279) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (14289) mbedtls: ssl_msg.c:4261 0x3fce20b4: <= read record
I (14289) mbedtls: ssl_msg.c:5259 0x3fce20b4: <= parse change cipher spec
I (14299) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (14309) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (14319) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_SERVER_FINISHED
I (14319) mbedtls: ssl_tls.c:8645 0x3fce20b4: => parse finished
I (14329) mbedtls: ssl_tls.c:8364 0x3fce20b4: => calc finished tls
I (14339) mbedtls: ssl_tls.c:8395 0x3fce20b4: <= calc finished
I (14339) mbedtls: ssl_msg.c:4189 0x3fce20b4: => read record
I (14349) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (14359) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 0, nb_want: 5
I (14369) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 0, nb_want: 5
I (14369) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 5 (-0xfffffffb)
I (14379) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (14389) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (14389) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 5, nb_want: 45
I (14429) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 40 (-0xffffffd8)
I (14429) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (14439) mbedtls: ssl_msg.c:1510 0x3fce20b4: => decrypt buf
I (14449) mbedtls: ssl_msg.c:2121 0x3fce20b4: <= decrypt buf
I (14449) mbedtls: ssl_msg.c:4261 0x3fce20b4: <= read record
I (14459) mbedtls: ssl_tls.c:8715 0x3fce20b4: <= parse finished
I (14469) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (14469) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (14479) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_FLUSH_BUFFERS
I (14489) mbedtls: ssl_tls12_client.c:3585 0x3fce20b4: handshake: done
I (14489) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (14499) mbedtls: ssl_msg.c:2362 0x3fce20b4: <= flush output
I (14509) mbedtls: ssl_tls.c:4525 0x3fce20b4: client state: MBEDTLS_SSL_HANDSHAKE_WRAPUP
I (14519) mbedtls: ssl_tls.c:4617 0x3fce20b4: <= handshake

**Connection to AWS Endpoint**

I (14529) mbedtls: ssl_msg.c:6044 0x3fce20b4: => write
I (14539) mbedtls: ssl_msg.c:2943 0x3fce20b4: => write record
I (14539) mbedtls: ssl_msg.c:935 0x3fce20b4: => encrypt buf
I (14559) mbedtls: ssl_msg.c:1474 0x3fce20b4: <= encrypt buf
I (14559) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (14559) mbedtls: ssl_msg.c:2367 0x3fce20b4: message length: 41, out_left: 41
I (14569) mbedtls: ssl_msg.c:2374 0x3fce20b4: ssl->f_send() returned 41 (-0xffffffd7)
I (14579) mbedtls: ssl_msg.c:2401 0x3fce20b4: <= flush output
I (14589) mbedtls: ssl_msg.c:3080 0x3fce20b4: <= write record
I (14589) mbedtls: ssl_msg.c:6066 0x3fce20b4: <= write
I (14599) mbedtls: ssl_msg.c:6044 0x3fce20b4: => write
I (14609) mbedtls: ssl_msg.c:2943 0x3fce20b4: => write record
I (14609) mbedtls: ssl_msg.c:935 0x3fce20b4: => encrypt buf
I (14619) mbedtls: ssl_msg.c:1474 0x3fce20b4: <= encrypt buf
I (14629) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (14629) mbedtls: ssl_msg.c:2367 0x3fce20b4: message length: 31, out_left: 31
I (14639) mbedtls: ssl_msg.c:2374 0x3fce20b4: ssl->f_send() returned 31 (-0xffffffe1)
I (14649) mbedtls: ssl_msg.c:2401 0x3fce20b4: <= flush output
I (14659) mbedtls: ssl_msg.c:3080 0x3fce20b4: <= write record
I (14659) mbedtls: ssl_msg.c:6066 0x3fce20b4: <= write
I (14669) mbedtls: ssl_msg.c:6044 0x3fce20b4: => write
I (14669) mbedtls: ssl_msg.c:2943 0x3fce20b4: => write record
I (14679) mbedtls: ssl_msg.c:935 0x3fce20b4: => encrypt buf
I (14689) mbedtls: ssl_msg.c:1474 0x3fce20b4: <= encrypt buf
I (14689) mbedtls: ssl_msg.c:2353 0x3fce20b4: => flush output
I (14699) mbedtls: ssl_msg.c:2367 0x3fce20b4: message length: 49, out_left: 49
I (14709) mbedtls: ssl_msg.c:2374 0x3fce20b4: ssl->f_send() returned 49 (-0xffffffcf)
I (14719) mbedtls: ssl_msg.c:2401 0x3fce20b4: <= flush output
I (14719) mbedtls: ssl_msg.c:3080 0x3fce20b4: <= write record
I (14729) mbedtls: ssl_msg.c:6066 0x3fce20b4: <= write
I (14739) mbedtls: ssl_msg.c:5782 0x3fce20b4: => read
I (14739) mbedtls: ssl_msg.c:4189 0x3fce20b4: => read record
I (14759) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (14759) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 0, nb_want: 5
I (14939) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 0, nb_want: 5
I (14939) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 5 (-0xfffffffb)
I (14939) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (14949) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (14959) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 5, nb_want: 33
I (14969) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 5, nb_want: 33
I (14969) mbedtls: ssl_msg.c:2318 0x3fce20b4: ssl->f_recv(_timeout)() returned 28 (-0xffffffe4)
I (14979) mbedtls: ssl_msg.c:2340 0x3fce20b4: <= fetch input
I (14989) mbedtls: ssl_msg.c:1510 0x3fce20b4: => decrypt buf
I (14999) mbedtls: ssl_msg.c:2121 0x3fce20b4: <= decrypt buf
I (14999) mbedtls: ssl_msg.c:4261 0x3fce20b4: <= read record
I (15009) mbedtls: ssl_msg.c:5942 0x3fce20b4: <= read
I (15009) mbedtls: ssl_msg.c:5782 0x3fce20b4: => read
I (15019) mbedtls: ssl_msg.c:5942 0x3fce20b4: <= read
I (15029) mbedtls: ssl_msg.c:5782 0x3fce20b4: => read
I (15029) mbedtls: ssl_msg.c:5942 0x3fce20b4: <= read

**Starts hanging here**

I (16079) mbedtls: ssl_msg.c:5782 0x3fce20b4: => read
I (16079) mbedtls: ssl_msg.c:4189 0x3fce20b4: => read record
I (16079) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (16079) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 0, nb_want: 5
I (17089) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 0, nb_want: 5
I (18089) mbedtls: ssl_msg.c:5782 0x3fce20b4: => read
I (18089) mbedtls: ssl_msg.c:4189 0x3fce20b4: => read record
I (18089) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (18089) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 0, nb_want: 5
I (19099) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 0, nb_want: 5
I (20099) mbedtls: ssl_msg.c:5782 0x3fce20b4: => read
I (20099) mbedtls: ssl_msg.c:4189 0x3fce20b4: => read record
I (20099) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (20099) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 0, nb_want: 5
I (21109) mbedtls: ssl_msg.c:2315 0x3fce20b4: in_left: 0, nb_want: 5
I (22109) mbedtls: ssl_msg.c:5782 0x3fce20b4: => read
I (22109) mbedtls: ssl_msg.c:4189 0x3fce20b4: => read record
I (22109) mbedtls: ssl_msg.c:2155 0x3fce20b4: => fetch input
I (22109) mbedtls: ssl_msg.c:2295 0x3fce20b4: in_left: 0, nb_want: 5

Is it safe to assume there is something happening between my ESP32-S3 and its connection to the AWS? What I find confusing is that despite the CoreMQTT-Agent task hanging at this mbedtls step, I am still able to perform publishes on my end. If anybody could provide insights in regards to these logs or anything I could look into that would much appreciated.