MySQLのpacketつづき
general response packet
https://dev.mysql.com/doc/internals/en/generic-response-packets.html
- OK, [00] or [fe]
- ERR, [ff]
- EOF, [fe]
OKとEOFかぶってるの厄介。 これOKは[00]使われてたりしないのか? [00]はCOM_SLEEPともかぶってる、、、、
Command Phase
[00] ~ [1f]までの31種類
Connection Phase
https://dev.mysql.com/doc/internals/en/connection-phase-packets.html
Protocol::HandshakeV10の[0a]が入ってくるが、
- 5.7.11以降ならCommand Phaseにおけるcom_process_infoは入ってこない
- それ以前でもpayloadの長さが1なのでそれで判断
payload長が2以上の[0a]ならhandshakeと判断できる
https://dev.mysql.com/doc/internals/en/com-process-info.html#packet-COM_PROCESS_INFO