[Nfd-dev] expressInterest when Nack received without a NackCallback

Junxiao Shi shijunxiao at email.arizona.edu
Sat Apr 30 15:40:25 PDT 2016


Hi JeffT

In ndn-cxx, all Face::expressInterest overloads that do not have
NackCallback parameter are marked as @deprecated.
Since the current logic seems working with existing applications, I think
it's acceptable.

I have reported bugs for any application that use the deprecated overloads.
In other words, every application is required to handle Nacks.
The deprecated overloads will be marked as DEPRECATED in #3334
<http://redmine.named-data.net/issues/3334> once the bugs in existing
applications are resolved. Afterwards, any new attempt to use the
deprecated overloads will cause a compiler warning or error.

Yours, Junxiao

On Wed, Apr 27, 2016 at 1:31 PM, Thompson, Jeff <jefft0 at remap.ucla.edu>
wrote:

> Hello.
>
> A question came up while studying network Nack support in ndn-cxx. Suppose
> someone has an application which calls expressInterest with only the OnData
> and OnTimeout callbacks. Normally, if the library doesn’t call OnData, it
> calls OnTimeout after the interest lifetime.
>
> However, if the library receives a network Nack, it calls OnTimeout
> immediately, regardless of the interest lifetime. Could this cause
> confusion? I ask because it’s not deterministic whether the network will
> reply with a Nack or not. If the application is not set up to handle Nacks,
> would it be better to just let the interest time out, even if the library
> receives a Nack?
>
> Thanks for any feedback,
> - Jeff T
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/nfd-dev/attachments/20160430/361337cf/attachment.html>


More information about the Nfd-dev mailing list