[Ndn-interest] jndn Library

Ju Pan pjokk722 at email.arizona.edu
Tue Jul 9 10:48:31 PDT 2019


Hi Jeff T,

Yeah, It works for me now. Both the example file
TestRegisterRoute.java and MailSync works well with the updated proto
files.

I am currently using the latest jNDN as local library for maven
dependencies. Once the new release comes out, I'll replace that.

Thank you for your help

Regards,
Ju

On Tue, Jul 9, 2019 at 2:59 AM Thompson, Jeff <jefft0 at remap.ucla.edu> wrote:
>
> Hello Ju,
>
> I updated the protobuf files for ControlParameters. Can you pull from GitHub and try again?
> https://github.com/named-data/jndn/commit/c57b13ef451ad568750c530e57eeefbaefb3f456
>
> Thanks,
> - Jeff T
>
> On 2019/7/8, 10:20:46, "Ju Pan" <pjokk722 at email.arizona.edu> wrote:
>
> Hi Jeff T,
>
> Thanks for your reply.
> The "Unrecognized critical type code 129" exception happened in
> registering route process. I almost copied your TestRegisterRoute.java
> file in jndn/example/tests directory.
> I tried to run the standalone TestRegisterRoute.java in jNDN/example
> directory, I got the same complain - "exception: Unrecognized critical
> type code 129".
> So I guess it's not the MailSync TLV def problem? And MailSync doesn't
> have any TLV definitions as far as I know.
>
> Let me know if I missed anything. Thanks!
>
> Regards,
> Ju
>
> Here is the log:
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> jupan-mac:examples jupan$ mvn exec:java
> -Dexec.mainClass="net.named_data.jndn.tests.TestRegisterRoute"
> [INFO] Scanning for projects...
> [WARNING]
> [WARNING] Some problems were encountered while building the effective
> model for net.named-data:jndn-examples:jar:test
> [WARNING] 'dependencies.dependency.version' for
> net.named-data:jndn:jar is either LATEST or RELEASE (both of them are
> being deprecated) @ line 33, column 13
> [WARNING]
> [WARNING] It is highly recommended to fix these problems because they
> threaten the stability of your build.
> [WARNING]
> [WARNING] For this reason, future Maven versions might no longer
> support building such malformed projects.
> [WARNING]
> [INFO]
> [INFO] --------------------< net.named-data:jndn-examples >--------------------
> [INFO] Building jndn-examples test
> [INFO] --------------------------------[ jar ]---------------------------------
> [INFO]
> [INFO] >>> exec-maven-plugin:1.1.1:java (default-cli) > validate @
> jndn-examples >>>
> [INFO]
> [INFO] <<< exec-maven-plugin:1.1.1:java (default-cli) < validate @
> jndn-examples <<<
> [INFO]
> [INFO]
> [INFO] --- exec-maven-plugin:1.1.1:java (default-cli) @ jndn-examples ---
> exception: Unrecognized critical type code 129
> [INFO] ------------------------------------------------------------------------
> [INFO] BUILD SUCCESS
> [INFO] ------------------------------------------------------------------------
> [INFO] Total time:  0.802 s
> [INFO] Finished at: 2019-07-08T10:14:10-07:00
> [INFO] ------------------------------------------------------------------------
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> On Mon, Jul 8, 2019 at 8:54 AM Thompson, Jeff <jefft0 at remap.ucla.edu> wrote:
>
>
> 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> on behalf of Avakash Bhat via Ndn-interest <ndn-interest at lists.cs.ucla.edu>
> Reply-To: Avakash Bhat <bhatavakash at gmail.com>
> Date: Thursday, July 4, 2019 at 2:35:00
> To: "ndn-interest at lists.cs.ucla.edu" <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
>
> _______________________________________________
> Ndn-interest mailing list
> Ndn-interest at lists.cs.ucla.edu
> http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest
>
>


More information about the Ndn-interest mailing list