[Ndn-interest] jndn Library

Thompson, Jeff jefft0 at remap.ucla.edu
Mon Jul 8 08:54:38 PDT 2019


The meaning of “critical type code” is explained here:
https://named-data.net/doc/NDN-packet-spec/current/tlv.html#considerations-for-evolvability-of-tlv-based-encoding

Type code 129 is critical because its least-significant bit is 1. "if the least significant bit of element’s TLV-TYPE number is 1, abort decoding and report an error.” The enforcement of critical type codes was added after jNDN version 0.16.

The application is using the JNDN ProtobufTlv class which uses a protobuf description file to decode TLV. It was decoding a TLV that has type code 129, but the corresponding Protobuf description does not have an field with this “critical" type code, and so the decoding is aborted because the application doesn’t know how to handle it.

Is there anyone on this mailing list that is familiar with the TLV definitions used in MailSync?

Thanks,
- Jeff T

From: Ndn-interest <ndn-interest-bounces at lists.cs.ucla.edu<mailto:ndn-interest-bounces at lists.cs.ucla.edu>> on behalf of Avakash Bhat via Ndn-interest <ndn-interest at lists.cs.ucla.edu<mailto:ndn-interest at lists.cs.ucla.edu>>
Reply-To: Avakash Bhat <bhatavakash at gmail.com<mailto:bhatavakash at gmail.com>>
Date: Thursday, July 4, 2019 at 2:35:00
To: "ndn-interest at lists.cs.ucla.edu<mailto:ndn-interest at lists.cs.ucla.edu>" <ndn-interest at lists.cs.ucla.edu<mailto:ndn-interest at lists.cs.ucla.edu>>
Subject: [Ndn-interest] jndn Library

I was working on a MailSync one of the open source projects that uses jndn and had some difficulty with upgrading the jndn library. The original jndn version was 0.16 and it was upgraded to 0.22 which is the most recent one. This resulted in the laptop side application giving a protobuf error which I can't seem to solve or understand. It is giving a "Unrecognized critical type code 129" exception. The exception is occurring at the ProtobufTlv.decode line given in the below code snippet. The protobuf-java version is 2.6.1.Are there any breaking changes that need to be considered with regards to ProtobufTlv when upgraded? Any help would be appreciated in this matter.
ControlParametersResponseMessage.BuilderdecodedControlResponse=
ControlParametersResponseMessage.newBuilder();
ProtobufTlv.decode(decodedControlResponse, encodedControlResponse);
ControlParametersResponsecontrolResponse=
decodedControlResponse.getControlResponse();



Thank you

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/ndn-interest/attachments/20190708/d6592ef0/attachment.html>


More information about the Ndn-interest mailing list