aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/cpp/codegen/proto_utils_test.cc
Commit message (Collapse)AuthorAge
* Rename ProtoBuffer helpersGravatar ncteisen2018-04-12
|
* Make GrpcProtoBufferReaderWriter publicGravatar ncteisen2018-04-06
|
* Change grpc++ references in names to grpcppGravatar Vijay Pai2018-03-08
|
* Run clang fmtGravatar Noah Eisen2018-02-09
|
* Autofix c casts to c++ castsGravatar Noah Eisen2018-02-09
|
* Merge github.com:grpc/grpc into lfe3Gravatar Craig Tiller2017-11-10
|\
* | Enable clang-tidy as a sanity check, fix up all known failuresGravatar Craig Tiller2017-11-10
| |
| * Only allocate what we need in the last slice for proto serializationGravatar yang-g2017-11-09
|/
* auto-fix most of licensesGravatar Jan Tattermusch2017-06-08
|
* Fix read from uninitialized memory bug in GrpcBufferWriter.Gravatar Harvey Tuch2017-02-07
This commit fixes an issue in which the following sequence of operations leads to use of uninitialized memory: 1. Caller invokes GrpcBufferWriter::Next(), and then makes use of 8191 bytes in the returned buffer (which is 8192 bytes in size). 2. Caller then returns the unused single byte via GrpcBufferWriter::BackUp(). This method invokes g_core_codegen_interface->grpc_slice_split_tail(), which causes backup_slice_ to be a grpc_slice with one byte. 3. At the next invocation of GrpcBufferWriter::Next(), a reference to the single byte grpc_slice is returned to the caller. The problem here is that the returned reference is to the inlined buffer in the grpc_slice, which is resident in slice_, not the location of the buffer inside slice_buffer_ after g_core_codegen_interface->grpc_slice_buffer_add() in GrpcBufferWriter::Next(). As a result, any data the caller writes to the returned void* data is lost. The solution is to avoid inlined backup slices.