ByteArrayOutputStream buff = new ByteArrayOutputStream();
DataOutputStream dataOut = new DataOutputStream(buff);
if (state == STATE_INIT_CLIENT) {
state = STATE_REGULAR;
int len = dataIn.readInt();
dataOut.writeInt(len);
len -= 4;
byte[] data = new byte[len];
dataIn.readFully(data, 0, len);
dataOut.write(data);
dataIn = new DataInputStream(new ByteArrayInputStream(data, 0, len));