Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

beginSocketIOSSL() Disconnects repeatedly. #251

Closed
alxferraz opened this issue Nov 6, 2017 · 1 comment
Closed

beginSocketIOSSL() Disconnects repeatedly. #251

alxferraz opened this issue Nov 6, 2017 · 1 comment

Comments

@alxferraz
Copy link

alxferraz commented Nov 6, 2017

Hi! thanks for the greatest web sockets library so far.

I noticed a new method beginSocketIOSSL with is exactly what I need. But when I tried connecting to my url id connects but suddenly disconnects.

here is the log

[WS-Client] connected to iportao.com:443.
[WS-Client][sendHeader] sending header...
[WS-Client][sendHeader] handshake GET /socket.io/?EIO=3&transport=polling HTTP/1.1
Host: iportao.com:443
Connection: keep-alive
Origin: file://
User-Agent: arduino-WebSocket-Client

[write] n: 154 t: 42198
[WS-Client][sendHeader] sending header... Done (249002us).
[WS-Client][handleHeader] RX: HTTP/1.1 200 OK
[WS-Client][handleHeader] RX: Server: nginx
[WS-Client][handleHeader] RX: Date: Mon, 06 Nov 2017 18:37:12 GMT
[WS-Client][handleHeader] RX: Content-Type: application/octet-stream
[WS-Client][handleHeader] RX: Content-Length: 101
[WS-Client][handleHeader] RX: Connection: keep-alive
[WS-Client][handleHeader] RX: Access-Control-Allow-Credentials: true
[WS-Client][handleHeader] RX: Access-Control-Allow-Origin: file://
[WS-Client][handleHeader] RX: Set-Cookie: io=BKQlINRSIEQ0zxS6AACq; Path=/; HttpOnly
[WS-Client][handleHeader] Header read fin.
[WS-Client][handleHeader] Client settings:
[WS-Client][handleHeader]  - cURL: /socket.io/?EIO=3
[WS-Client][handleHeader]  - cKey: PJttJshNAlw+EuvMQW2S4w==
[WS-Client][handleHeader] Server header:
[WS-Client][handleHeader]  - cCode: 200
[WS-Client][handleHeader]  - cIsUpgrade: 0
[WS-Client][handleHeader]  - cIsWebsocket: 1
[WS-Client][handleHeader]  - cAccept: 
[WS-Client][handleHeader]  - cProtocol: arduino
[WS-Client][handleHeader]  - cExtensions: 
[WS-Client][handleHeader]  - cVersion: 0
[WS-Client][handleHeader]  - cSessionId: BKQlINRSIEQ0zxS6AACq
[WS-Client][sendHeader] sending header...
[WS-Client][sendHeader] handshake GET /socket.io/?EIO=3&transport=websocket&sid=BKQlINRSIEQ0zxS6AACq HTTP/1.1
Host: iportao.com:443
Connection: Upgrade
Upgrade: websocket
Sec-WebSocket-Version: 13
Sec-WebSocket-Key: WQVxWWSvbMx6uVjzS00o7A==
Sec-WebSocket-Protocol: arduino
Origin: file://
User-Agent: arduino-WebSocket-Client

[write] n: 303 t: 46594
[WS-Client][sendHeader] sending header... Done (374235us).
[WS-Client][handleHeader] RX: ⸮⸮+⸮I�⸮�⸮X⸮�⸮⸮⸮kf⸮⸮⸮Y⸮wR⸮p⸮⸮C⸮ٷ⸮⸮⸮�
⸮⸮u⸮⸮�b⸮"websocket"],"pingInterval":25000,"pingTimeout":60000}HTTP/1.1 101 Switching Protocols
[WS-Client][handleHeader] RX: Server: nginx
[WS-Client][handleHeader] RX: Date: Mon, 06 Nov 2017 18:37:16 GMT
[WS-Client][handleHeader] RX: Connection: upgrade
[WS-Client][handleHeader] RX: Upgrade: websocket
[WS-Client][handleHeader] RX: Sec-WebSocket-Accept: 7Md4a22EtgFuf/+LDNOtm0JJrO4=
[WS-Client][handleHeader] RX: Sec-WebSocket-Protocol: arduino
[WS-Client][handleHeader] Header read fin.
[WS-Client][handleHeader] Client settings:
[WS-Client][handleHeader]  - cURL: /socket.io/?EIO=3
[WS-Client][handleHeader]  - cKey: WQVxWWSvbMx6uVjzS00o7A==
[WS-Client][handleHeader] Server header:
[WS-Client][handleHeader]  - cCode: 200
[WS-Client][handleHeader]  - cIsUpgrade: 1
[WS-Client][handleHeader]  - cIsWebsocket: 1
[WS-Client][handleHeader]  - cAccept: 7Md4a22EtgFuf/+LDNOtm0JJrO4=
[WS-Client][handleHeader]  - cProtocol: arduino
[WS-Client][handleHeader]  - cExtensions: 
[WS-Client][handleHeader]  - cVersion: 0
[WS-Client][handleHeader]  - cSessionId: BKQlINRSIEQ0zxS6AACq
[WS-Client][handleHeader] Websocket connection init done.
[WS][0][headerDone] Header Handling Done (126us).
[WSWc] Connected to server[WS][0][sendFrame] ------- send massage frame -------
[WS][0][sendFrame] fin: 1 opCode: 1 mask: 1 length: 1 headerToPayload: 0
[WS][0][sendFrame] text: 5
[WS][0][sendFrame] pack to one TCP package...
[write] n: 7 t: 50275
[WS][0][sendFrame] sending Frame Done (348308us).
[WS][0][sendFrame] ------- send massage frame -------
[WS][0][sendFrame] fin: 1 opCode: 1 mask: 1 length: 70 headerToPayload: 0
[WS][0][sendFrame] text: 42["deviceOnline",{"serial":"25626271458376","firmwareVersion":"2.4"}]
[write] n: 6 t: 50636
[write] n: 70 t: 50930
[WS][0][sendFrame] sending Frame Done (602977us).
[WS][0][sendFrame] ------- send massage frame -------
[WS][0][sendFrame] fin: 1 opCode: 1 mask: 1 length: 1 headerToPayload: 0
[WS][0][sendFrame] text: 2
[WS][0][sendFrame] pack to one TCP package...
[write] n: 7 t: 53247
[WS][0][sendFrame] sending Frame Done (349191us).
[WS][0][sendFrame] ------- send massage frame -------
[WS][0][sendFrame] fin: 1 opCode: 1 mask: 1 length: 70 headerToPayload: 0
[WS][0][sendFrame] text: 42["online",{"serial":"2562","firmwareVersion":"2.4"}]
[write] n: 6 t: 53610
[write] n: 70 t: 53901
[WS][0][sendFrame] sending Frame Done (604068us).
[WS][0][handleWebsocketWaitFor] size: 2 cWsRXsize: 0
[readCb] n: 2 t: 54215
[WS][0][handleWebsocketWaitFor][readCb] size: 2 ok: 1
[WS][0][handleWebsocket] ------- read massage frame -------
[WS][0][handleWebsocket] fin: 1 rsv1: 0 rsv2: 1 rsv3 0  opCode: 7
[WS][0][handleWebsocket] mask: 0 payloadLen: 109
[readCb] n: 109 t: 54234
[readCb] receive TIMEOUT! 2001
[WS][0][handleWebsocket] missing data!
[WS][0][handleWebsocket] clientDisconnect code: 1002
[WS][0][sendFrame] ------- send massage frame -------
[WS][0][sendFrame] fin: 1 opCode: 8 mask: 0 length: 2 headerToPayload: 0
[WS][0][sendFrame] pack to one TCP package...
[write] n: 4 t: 56253
[WS][0][sendFrame] sending Frame Done (313151us).
[WS-Client] client disconnected.
[WSWc] Disconnected!
[WS-Client] connect wss...
please start sntp first !
[WS-Client] connected to iportao.com:443.
[WS-Client][sendHeader] sending header...
[WS-Client][sendHeader] handshake GET /socket.io/?EIO=3&transport=polling HTTP/1.1
Host: iportao.com:443
Connection: keep-alive
Origin: file://
User-Agent: arduino-WebSocket-Client

[write] n: 154 t: 58771
[WS-Client][sendHeader] sending header... Done (300564us).
[WS-Client][handleHeader] RX: HTTP/1.1 200 OK
[WS-Client][handleHeader] RX: Server: nginx
[WS-Client][handleHeader] RX: Date: Mon, 06 Nov 2017 18:37:28 GMT
[WS-Client][handleHeader] RX: Content-Type: application/octet-stream
[WS-Client][handleHeader] RX: Content-Length: 101
[WS-Client][handleHeader] RX: Connection: keep-alive
[WS-Client][handleHeader] RX: Access-Control-Allow-Credentials: true
[WS-Client][handleHeader] RX: Access-Control-Allow-Origin: file://
[WS-Client][handleHeader] RX: Set-Cookie: io=tRG-3xScLwPhYEVNAACr; Path=/; HttpOnly
[WS-Client][handleHeader] Header read fin.
[WS-Client][handleHeader] Client settings:
[WS-Client][handleHeader]  - cURL: /socket.io/?EIO=3
[WS-Client][handleHeader]  - cKey: IF8Bnwz3ieYj3YVzoy1/6w==
[WS-Client][handleHeader] Server header:
[WS-Client][handleHeader]  - cCode: 200
[WS-Client][handleHeader]  - cIsUpgrade: 0
[WS-Client][handleHeader]  - cIsWebsocket: 0
[WS-Client][handleHeader]  - cAccept: 
[WS-Client][handleHeader]  - cProtocol: 
[WS-Client][handleHeader]  - cExtensions: 
[WS-Client][handleHeader]  - cVersion: 0
[WS-Client][handleHeader]  - cSessionId: tRG-3xScLwPhYEVNAACr
[WS-Client][sendHeader] sending header...
[WS-Client][sendHeader] handshake GET /socket.io/?EIO=3&transport=websocket&sid=tRG-3xScLwPhYEVNAACr HTTP/1.1
Host: iportao.com:443
Connection: Upgrade
Upgrade: websocket
Sec-WebSocket-Version: 13
Sec-WebSocket-Key: +Cl0vnK+C0iCPo21aGncnw==
Origin: file://
User-Agent: arduino-WebSocket-Client

[write] n: 270 t: 63195
[WS-Client][sendHeader] sending header... Done (356789us).
[WS-Client][handleHeader] RX: 5⸮⸮Z⸮⸮T	⸮2⸮f7o⸮G-3xScLwPhYEVNAACr","upgrades":["websocket"],"pingInterval":25000,"pingTimeout":60000}HTTP/1.1 101 Switching Protocols
[WS-Client][handleHeader] RX: Server: nginx
[WS-Client][handleHeader] RX: Date: Mon, 06 Nov 2017 18:37:33 GMT
[WS-Client][handleHeader] RX: Connection: upgrade
[WS-Client][handleHeader] RX: Upgrade: websocket
[WS-Client][handleHeader] RX: Sec-WebSocket-Accept: 48/cF7aSWs6T0U2An2+dT6In7RA=
[WS-Client][handleHeader] Header read fin.
[WS-Client][handleHeader] Client settings:
[WS-Client][handleHeader]  - cURL: /socket.io/?EIO=3
[WS-Client][handleHeader]  - cKey: +Cl0vnK+C0iCPo21aGncnw==
[WS-Client][handleHeader] Server header:
[WS-Client][handleHeader]  - cCode: 200
[WS-Client][handleHeader]  - cIsUpgrade: 1
[WS-Client][handleHeader]  - cIsWebsocket: 1
[WS-Client][handleHeader]  - cAccept: 48/cF7aSWs6T0U2An2+dT6In7RA=
[WS-Client][handleHeader]  - cProtocol: 
[WS-Client][handleHeader]  - cExtensions: 
[WS-Client][handleHeader]  - cVersion: 0
[WS-Client][handleHeader]  - cSessionId: tRG-3xScLwPhYEVNAACr
[WS-Client][handleHeader] Websocket connection init done.
[WS][0][headerDone] Header Handling Done (126us).
[WSWc] Connected to server[WS][0][sendFrame] ------- send massage frame -------
[WS][0][sendFrame] fin: 1 opCode: 1 mask: 1 length: 1 headerToPayload: 0
[WS][0][sendFrame] text: 5
[WS][0][sendFrame] pack to one TCP package...
[write] n: 7 t: 66453
[WS][0][sendFrame] sending Frame Done (247531us).
[WS][0][sendFrame] ------- send massage frame -------
[WS][0][sendFrame] fin: 1 opCode: 1 mask: 1 length: 70 headerToPayload: 0
[WS][0][sendFrame] text: 42["online",{"serial":"2562","firmwareVersion":"2.4"}]
[write] n: 6 t: 66714
[write] n: 70 t: 67006
[WS][0][sendFrame] sending Frame Done (599622us).
[WS][0][sendFrame] ------- send massage frame -------
[WS][0][sendFrame] fin: 1 opCode: 1 mask: 1 length: 1 headerToPayload: 0
[WS][0][sendFrame] text: 2
[WS][0][sendFrame] pack to one TCP package...
[write] n: 7 t: 69321
[WS][0][sendFrame] sending Frame Done (229583us).
[WS][0][sendFrame] ------- send massage frame -------
[WS][0][sendFrame] fin: 1 opCode: 1 mask: 1 length: 70 headerToPayload: 0
[WS][0][sendFrame] text: 42["deviceOnline",{"serial":"25626271458376","firmwareVersion":"2.4"}]
[write] n: 6 t: 69564
[write] n: 70 t: 69836
[WS][0][sendFrame] sending Frame Done (516583us).
[WS][0][handleWebsocketWaitFor] size: 2 cWsRXsize: 0
[readCb] n: 2 t: 70082
[WS][0][handleWebsocketWaitFor][readCb] size: 2 ok: 1
[WS][0][handleWebsocket] ------- read massage frame -------
[WS][0][handleWebsocket] fin: 0 rsv1: 1 rsv2: 1 rsv3 1  opCode: 8
[WS][0][handleWebsocket] mask: 0 payloadLen: 73
[readCb] n: 73 t: 70101
[readCb] receive TIMEOUT! 2001
[WS][0][handleWebsocket] missing data!
[WS][0][handleWebsocket] clientDisconnect code: 1002
[WS][0][sendFrame] ------- send massage frame -------
[WS][0][sendFrame] fin: 1 opCode: 8 mask: 0 length: 2 headerToPayload: 0
[WS][0][sendFrame] pack to one TCP package...
[write] n: 4 t: 72120
[WS][0][sendFrame] sending Frame Done (317862us).
[WS-Client] client disconnected.
[WSWc] Disconnected!
[WS-Client] connect wss...

Do you have any idea of what could be happening?

@Links2004
Copy link
Owner

Links2004 commented Nov 11, 2017

there is a know bug in the SSL lib on the ESP.
have you the newest ESP core?

ESP issue:
esp8266/Arduino#3002

Possible Patch:
esp8266/Arduino#3019

will close this Issue since we have one here:
#235

feel free to comment there if you have some more inside.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants