Project

General

Profile

Actions

Bug #2517

closed

NFD state is not properly cleaned up on destruction

Added by Alex Afanasyev about 9 years ago. Updated 7 months ago.

Status:
Abandoned
Priority:
Normal
Assignee:
-
Category:
Core
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:

Description

In some environments (specifically Android app), it may be necessary (at least needed for now) to start/stop NFD multiple times within the same process. This requires that Nrd/Nfd destructors properly cancel everything that was posted on io_service without requiring to stop io_service.

The current way we do thing in main() is we stopping the global io_service first, after which we call the destructors. This effectively destructs everything, however there are dangling handlers posted that will be removed when the application is terminated. This approach does not work when nfd needs to be started again within the same process---whenever global io_service is started again, it will fire up a few handlers that point to deallocated memory.


Related issues 3 (0 open3 closed)

Related to ndn-cxx - Bug #2518: Segfault when destructing face without cancelling pending interestsClosedAlex Afanasyev02/12/2015

Actions
Blocked by NFD - Task #2489: Merge nrd into nfdClosedAlex Afanasyev

Actions
Blocked by NFD - Bug #2516: UdpChannel::newPeer does not properly handle error conditionClosedAlex Afanasyev02/12/2015

Actions
Actions

Also available in: Atom PDF