Project

General

Profile

Bug #2188

FaceManager creates UnixStreamChannel when listen=no

Added by Junxiao Shi almost 5 years ago. Updated almost 5 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
Management
Target version:
Start date:
11/17/2014
Due date:
% Done:

100%

Estimated time:
1.00 h

Description

Code snippet from mgmt/face-manager.cpp:

shared_ptr<UnixStreamChannel> unixChannel = factory->createChannel(path);

if (needToListen) {
  unixChannel->listen(bind(&FaceTable::add, &m_faceTable, _1),
                      UnixStreamChannel::ConnectFailedCallback());
}

UnixStreamChannel is useless when not listening, so its creation should be skipped altogether.


Related issues

Related to NFD - Bug #2190: NRD cannot start when NFD disables UNIX facesClosed

Related to NFD - Bug #2360: Multiple scenarios: ERROR: error while connecting to the forwarder (No such file or directory)Closed2015-01-08

History

#1 Updated by Anonymous almost 5 years ago

  • Status changed from New to In Progress
  • Assignee set to Anonymous

I vaguely remember us having a similar problem with UDP faces. Should we just get rid of the "listen" option? (UDP also lacks a listen option after an earlier change).

#2 Updated by Junxiao Shi almost 5 years ago

I agree with deleting unix.listen option. To disable UnixStreamFace, operator must comment out the unix section.

Remember to update sample configuration file and NFD Developer Guide.

#3 Updated by Anonymous almost 5 years ago

  • % Done changed from 0 to 80

I just noticed that disabling unix sockets prevents NRD from connecting to NFD. Should there be a way to configure the type of transport NRD uses? If so, should this be a separate change?

#4 Updated by Junxiao Shi almost 5 years ago

I just noticed that disabling unix sockets prevents NRD from connecting to NFD. Should there be a way to configure the type of transport NRD uses? If so, should this be a separate change?

I know the problem with NRD. I'll create a separate Bug.

#5 Updated by Alex Afanasyev almost 5 years ago

I would say it is neither NFD or NRD problem. The issue is with default transport for Face class in ndn-cxx. I think the most straightforward way to solve this problem would be to have a compile-time option for ndn-cxx to select default transport. Or simply provide an option to disable unix socket support, which would make tcp/localhost a default transport.

#6 Updated by Anonymous almost 5 years ago

  • Status changed from In Progress to Code review

Also pushed changes to developer guide.

#7 Updated by Junxiao Shi almost 5 years ago

  • Related to Feature #2189: Pick Transport type with client.conf added

#8 Updated by Lan Wang almost 5 years ago

I agree with Alex's comment in Note #5.

#9 Updated by Junxiao Shi almost 5 years ago

  • Related to Bug #2190: NRD cannot start when NFD disables UNIX faces added

#10 Updated by Junxiao Shi almost 5 years ago

  • Related to deleted (Feature #2189: Pick Transport type with client.conf)

#11 Updated by Junxiao Shi almost 5 years ago

  • Status changed from Code review to Closed
  • % Done changed from 80 to 100

#12 Updated by Junxiao Shi over 4 years ago

  • Related to Bug #2360: Multiple scenarios: ERROR: error while connecting to the forwarder (No such file or directory) added

Also available in: Atom PDF