Wie muss ich den Code umschreiben, dass er nicht in fremde Datenbereiche schreibt?
Hier:
if (nCommandPos>-1) {
sReturnCommand[nCommandPos++] = c;
}
... solltest du, nach jurs' Meinung, eine Bremse einbauen.
z.B.
if (nCommandPos>-1 && nCommandPos < 31) {
sReturnCommand[nCommandPos++] = c;
}
Aber wenn der server nicht von einem x-beliebigen client mit zu großen Kommandos gequält werden kann, ist das halb so wild.
Falls 31 Zeichen sicher reichen.