World server crash bug
Posted: Wed Mar 04, 2020 5:43 am
There was an issue with out of order packets (sequencing code in EQStream) that caused an infinite loop and crashed if you were in a zone for too long...:
[204.204.204.204:52428->204.204.204.204:52428] [Seq=0] [OpCode 0x0009 (OP_Unknow
n) Size=16]
eg. that seq number would go up to the uint16 cap then crash.
This fixes us to not indefinitely keep sequencing the same packet over and over (preventing said crash):
http://cutpon.com:3000/devn00b/EQ2EMu/c ... cb9caec3c0
Edit: To note there are some eqemu log calls commented out in the new functions. I was hoping at a later time to revisit EQStream to touch up some other things. But this was crashing the entire world server when the client did this so seemed important to push out (least in my git for the team we have).
[204.204.204.204:52428->204.204.204.204:52428] [Seq=0] [OpCode 0x0009 (OP_Unknow
n) Size=16]
eg. that seq number would go up to the uint16 cap then crash.
This fixes us to not indefinitely keep sequencing the same packet over and over (preventing said crash):
http://cutpon.com:3000/devn00b/EQ2EMu/c ... cb9caec3c0
Edit: To note there are some eqemu log calls commented out in the new functions. I was hoping at a later time to revisit EQStream to touch up some other things. But this was crashing the entire world server when the client did this so seemed important to push out (least in my git for the team we have).