Skip to content

Commit d179a3f

Browse files
committed
Avoid buffer overread when compressing messageset in KafkaProducer
1 parent 77360a1 commit d179a3f

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

kafka/producer/buffer.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -103,8 +103,9 @@ def close(self):
103103
if not self._closed:
104104
if self._compressor:
105105
# TODO: avoid copies with bytearray / memoryview
106+
uncompressed_size = self._buffer.tell()
106107
self._buffer.seek(4)
107-
msg = Message(self._compressor(self._buffer.read()),
108+
msg = Message(self._compressor(self._buffer.read(uncompressed_size - 4)),
108109
attributes=self._compression_attributes,
109110
magic=self._message_version)
110111
encoded = msg.encode()

0 commit comments

Comments
 (0)