fix(go): repair migration wire contracts and runtime lifecycle; document incomplete port

This commit is contained in:
CAtlas0784 committed 2026-10-29 15:35:35 +07:00
1 parent e43a310617
commit 32e47014b5
35 files changed
+16826 -438

No files matched your search

+12 -3
View File
@@ -24,7 +24,7 @@ func ReadFrame(r io.Reader, cryptor *chacha8.UxChaCha8) (*Frame, error) {
}
payloadLength := int(binary.LittleEndian.Uint32(head[0:4]))
if payloadLength < 0 || payloadLength > 16*1024*1024 {
if payloadLength < 0 || payloadLength > 8*1024*1024 {
return nil, errors.New("invalid frame payload length after decrypt")
}
@@ -54,8 +54,17 @@ func WriteFrame(w io.Writer, mode byte, payload []byte, cryptor *chacha8.UxChaCh
cryptor.XorInPlace(buf)
}
_, err := w.Write(buf)
return err
for len(buf) > 0 {
n, err := w.Write(buf)
if err != nil {
return err
}
if n <= 0 || n > len(buf) {
return io.ErrShortWrite
}
buf = buf[n:]
}
return nil
}
func ParseRpcPacket(payload []byte) RpcPacket {