lukaszzborek opened a new pull request, #4072: URL: https://github.com/apache/iggy/pull/4072
Identifier, Partitioning and header types checked string.Length, so a non-ASCII name under 255 characters could exceed 255 bytes and be truncated into the one byte length prefix, sending a frame the server parses as a shorter name followed by garbage. Most TcpContracts skipped the check entirely. Identifier also compared and hashed Value by reference. Every length-prefixed name, credential, token and header field now goes through one WireName rule mirroring the server's 1 to 255 byte bound. Identifier and Partitioning derive Length from Value and reject oversize arrays in the initializer. Identifier equality uses byte contents. User contracts validate credentials against CredentialBounds before serializing. Contract tests cover empty, at-limit, over-limit and non-ASCII inputs for each entry point. #4056 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
