<div dir="ltr"><div dir="auto">Hi Zhiyi<div dir="auto"><br></div><div dir="auto">I can see that the NFD on suns was last restarted at <span style="text-align:center">2021-02-05 03:05:02 UTC, which explains the "end of file" message.</span></div><div dir="auto"><span style="text-align:center"><br></span></div><div dir="auto"><span style="text-align:center">"request time out" likely came from ndn::nfd::Controller for failing to register prefixes, because NFD-RIB is not yet ready.</span></div><div dir="auto"><span style="text-align:center">I think you need to add some delay (a RestartSec directive) in the systemd unit.</span></div><div dir="auto"><span style="text-align:center">Also, it's missing BindsTo=nfd.service , unless you are leaving it off because you are using user systemd rather than system-wide systemd.</span></div></div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><br><div><span style="text-align:center">Anyway, I've tested the service.</span></div><div><span style="text-align:center">CA profile retrieval is working now.</span></div><div><span style="text-align:center"><br></span></div><div><span style="text-align:center">However, the NewResponse packet is encoded incorrectly - it contains an unrecognized TLV element of critical type 0x9B.</span></div><div><span style="text-align:center">Packet capture is attached.<br></span></div><div><span style="text-align:center"><br></span></div><div><span style="text-align:center">I can see that the offending line is here:</span></div><div><span style="text-align:center"><a href="https://github.com/Zhiyi-Zhang/ndncert/blob/cac27f1128883096c803d70b3c6d2cab50e1cd10/src/detail/new-renew-revoke-encoder.cpp#L91">https://github.com/Zhiyi-Zhang/ndncert/blob/cac27f1128883096c803d70b3c6d2cab50e1cd10/src/detail/new-renew-revoke-encoder.cpp#L91</a></span></div><div><span style="text-align:center">The protocol doesn't have a Status field in this packet:</span></div><div><span style="text-align:center"><a href="https://github.com/named-data/ndncert/wiki/NDNCERT-Protocol-0.3/0d11d48d9ebee022eee71dee14f1342e0905a620#232-packet-format">https://github.com/named-data/ndncert/wiki/NDNCERT-Protocol-0.3/0d11d48d9ebee022eee71dee14f1342e0905a620#232-packet-format</a></span></div><div dir="auto"><span style="text-align:center"><br></span></div><div><span style="text-align:center">Your decoding function is not implementing TLV evolvability correctly.</span></div><div><span style="text-align:center">
</span><div><span style="text-align:center"><a href="https://github.com/Zhiyi-Zhang/ndncert/blob/cac27f1128883096c803d70b3c6d2cab50e1cd10/src/detail/new-renew-revoke-encoder.cpp#L102">https://github.com/Zhiyi-Zhang/ndncert/blob/cac27f1128883096c803d70b3c6d2cab50e1cd10/src/detail/new-renew-revoke-encoder.cpp#L102</a></span></div><div><span style="text-align:center"></span></div>

<span style="text-align:center">If it encounters an unrecognized or out-of-order field of a critical TLV-TYPE. However, the current decoding function would erroneously accept any unrecognized or out-of-order fields of critical TLV-TYPEs.<br></span></div><div><span style="text-align:center">All new NDN software is expected to 
properly implement TLV evolvability. Please see ndn::Interest type in ndn-cxx for an example.<br></span></div><div dir="auto"><span style="text-align:center"><br></span></div><div><span style="text-align:center">Please reply when you have fixed the NewResponse bug, so I can re-test.<br></span></div><div dir="auto"><span style="text-align:center"><br></span></div>Yours, Junxiao<br><br><div class="gmail_quote" dir="auto"><div dir="ltr" class="gmail_attr">On Thu, Feb 4, 2021, 23:53 Zhiyi Zhang <<a href="mailto:zhiyi@cs.ucla.edu" target="_blank">zhiyi@cs.ucla.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p style="text-align:center"><font color="red"><b>External Email</b><br></font></p><div dir="ltr">It seems the network on the Suns is not stable and the service reports the following error several times:<div><br></div><div>```</div><div>Feb 05 03:05:01 <a href="http://suns.cs.ucla.edu" rel="noreferrer" target="_blank">suns.cs.ucla.edu</a> ndncert-ca-server[6005]: terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<<b>ndn::Transport::Error</b>> >'<br>Feb 05 03:05:01 <a href="http://suns.cs.ucla.edu" rel="noreferrer" target="_blank">suns.cs.ucla.edu</a> ndncert-ca-server[6005]:   what():  <b>error while receiving data from socket (End of file)</b><br></div><div>...</div><div>Feb 05 03:05:12 <a href="http://suns.cs.ucla.edu" rel="noreferrer" target="_blank">suns.cs.ucla.edu</a> ndncert-ca-server[16981]: <b>ERROR: request timed out</b><br></div><div>```</div><div><br></div><div>I restarted the service.</div><div><br></div><div>Best,</div><div>Zhiyi</div><br></div></blockquote></div></div>
</div>