ceph/ceph — pull request #2544 by nyov (2014-09-20 04:40:39+00:00)
Title: pybind: aio_read not escaping \0, binary-unsafe

Ioctx.aio_read() discards any part of a read chunk after a NUL.

This patch exists (existed?) on a [refactoring][1] [branch][2] `wip-pybind-fixes`, but I consider
this a **serious** bug, which may eat your data if faultily read data is trusted; and thus would propose it's singular inclusion, not wating on a refactoring to happen or not.
(Luckily my use-case was compressed files and I caught on real quick when they couldn't be decompressed.)

I would propose this patch to be merged by itself, and possibly backported to older python-rados versions.

[1]: http://tracker.ceph.com/projects/ceph/repository/revisions/31b6c4d061c5534428bbe7842aedea114fe7a2d9
[2]: https://github.com/ceph/ceph/commit/31b6c4d061c5534428bbe7842aedea114fe7a2d9