Hello,
I'm hoping someone can help me out a bit here..
I've developed a C++ GRPC server (Question is protobuf specific though), that talks with a Java client. The C++ server takes data from an older C++ API and converts it to protobuf and then uses GRPC to send the data.
However it appears that there may be a bug in the older API and i'm occasionally being sent garbage in some char*, which when they get to java result in an Protocol message had invalid UTF-8.
It seems slightly odd that on the C++ side the protobuf is happy to accept and encode invalid data, but the Java side throws an exception.
Is there anyway from the C++ side to validate the messages strings before they are sent. I've noticed if i convert the message to JSON the strings just stop at the first invalid character they reach. I looked at trying to find a simple UTF8 validation in C++ but not had much luck with this (Sorry C++ is really noy my main language)
Developing in Visual Studio 2017 with C++11 support
Thanks,
Robin