ParseFromString returns true

Am Montag, 18. November 2019 21:49:03 UTC+1 schrieb Bowfish:
>
>
> void ArcaCryptoNewKey::on_responseSuccessful(const QByteArray length, 
> const QByteArray message)
> {
>     Q_UNUSED(length)
>
>     // Parse the message and convert it to a std::string
>     m_cryptoNewKeyResponse->ParseFromString(message.toStdString());
>
>     qDebug() << "response length :" << length.toHex();
>     qDebug() << "response length :" << message.toStdString().length();
>     qDebug() << "response message:" << QString::fromStdString(message.
> toStdString());
>
>     // Extract the header of the response
>     ar_firmware::FirmwareMessageHeader header = m_cryptoNewKeyResponse->
> header();
>
>     this->printHeader(header);
>
>     QByteArray publicKey(m_cryptoNewKeyResponse->public_key().c_str());
>     qDebug() << "public key raw:" <<  publicKey;
>
>     emit responseReceivedNewKey();
> }
>
>
>
>
> Am Montag, 18. November 2019 21:08:20 UTC+1 schrieb Adam Cozzette:
>
>> Could you post a snippet of your C++ code that calls ParseFromString()?
>>
>> On Mon, Nov 18, 2019 at 11:57 AM Bowfish <[email protected]> wrote:
>>
>>> I want to parse a string with the c++ ParseFromString function. The 
>>> string contains \x00. It seems that this function cuts the string at \x00. 
>>> Is this possible?
>>>
>>> Here is some debug output which I used to investigate this:
>>>
>>> // This is before ParseFromString
>>>
>>> response message: 
>>> "\n\x0F\b\x01\x10\x04\x19\x8D\xD2z\xBF\x00\x00\x00\x00(\x01\x10\x02\x1AX0V0\x10\x06\x07*\x86H\xCE=\x02\x01\x06\x05+\x81\x04\x00\n\x03""B\x00\x04\x87W\xBBw\xF3\xE8\xAD\xA8y\n\x9E\xA0\xC5\xF0.\xFD""e>L\xD1k\xE6\x80\xCBZ\xD2\x8E\x89?\xD6#\xFF(\xAF#J\x12\xB5\x17""db\xD8\xDCY?\x8B\x98\xFE\x15NL\x9B;\x8A\xE3\xC0\xF1\xC4\xA5;\x07\x86\xE6\xD5"
>>> response length : "6d000000"
>>> response length : 109
>>> response message: 
>>> "\n\u000F\b\u0001\u0010\u0004\u0019��z�\u0000\u0000\u0000\u0000(\u0001\u0010\u0002\u001AX0V0\u0010\u0006\u0007*�H�=\u0002\u0001\u0006\u0005+�\u0004\u0000\n\u0003B\u0000\u0004�W�w�譨y\n����.�e>L�k���ZҎ�?�#�(�#J\u0012�\u0017db��Y?���\u0015NL�;����ĥ;\u0007���"
>>>
>>>
>>>
>>> // This is after I call the function from the protobuf Object which 
>>> should extract the public key
>>> // But the public key should be much longer. It shows only the part 
>>> which is before \x00
>>> 0V0*�H�=+�
>>> public key raw: "0V0\x10\x06\x07*\x86H\xCE=\x02\x01\x06\x05+\x81\x04"
>>> 0V0*�H�=+�
>>> public key raw: "0V0\x10\x06\x07*\x86H\xCE=\x02\x01\x06\x05+\x81\x04"
>>> public key hex: "3056301006072a8648ce3d020106052b8104"
>>>
>>> Thanks for your 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 [email protected].
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/protobuf/475d2744-ed86-458a-a78e-263e38b22366%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/protobuf/475d2744-ed86-458a-a78e-263e38b22366%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/protobuf/41c70578-ed58-4acb-a1a3-5fe66975aa15%40googlegroups.com.

Reply via email to