I sent a question yesterday, but I don't see it as having been posted, much 
responded to. My apologies for the redundancy if my original message is in 
queue somewhere.


I'm trying to determine the utility of Valgrind in an app. The app uses 
protocol buffers.

I am seeing a message from Valgrind

Syscall param write(buf) points to uninitialised byte(s)

with the following info

Address 0x11c7fa02 is 2 bytes inside a block of size 8,192 alloc'd

At first, I thought it might be one of the fields in a message declared 
optional, but 
when I filled out the field, I got the same warning. In the process of 
looking into this 
more closely I was able to dump the buffer:

0x00    0x01    0xc1    0x09    0x00    0x00    0x00    0x10 <---- secret, 
0x08    0x00    0x10    0xa5    0xcb    0x96    0xad    0x0a
0x1a    0x06    0x61    0x70    0x61    0x63    0x68    0x65

The latter 16 bytes are the message proper with three fields and I 
understand how 
they are created and interpreted from the Encoding spec (very helpful). It 
is the first 
eight bytes I don't  understand.

These first bytes are almost like a secret pre-header. It looks to me as if 
the last four 
bytes are a 32-bit length field. The number matches in this case and in the 
other case in 
which the optional field was left unset. I can't figure what the first four 
bytes indicate. In
particular, the bytes 0xc1 and 0x09, which would start the area of the 
uninitialized bytes.

Is there somewhere in the code I can look to see how this pre-header is 
created. Or I 
would be happy to research this myself if some documentation exists, but I 
don't know
where to start looking.

Thanks for any help,

You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to protobuf+unsubscr...@googlegroups.com.
To post to this group, send email to protobuf@googlegroups.com.
Visit this group at http://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/d/optout.

Reply via email to