Commit Graph
64 Commits
Author SHA1 Message Date
Junxiao Shi 9ddf1b5c26 mgmt: NfdManagerBase::makeAuthorization uses CommandAuthenticator
This commit also eliminates Forwarder in Mgmt/TestFaceManager/CreateFace test suite
and uses FaceTable directly.

refs #2063

Change-Id: I596e8c2a12dad64ee75082f384955f30d574f53e
2016-08-22 03:58:55 +00:00
Junxiao Shi ae04d34c17 fw: FaceTable signals use Face& instead of shared_ptr
refs #3205

Change-Id: I53ecd0d6a13d379eb1dfb872041bdde8501f05e7
2016-07-19 13:20:22 +00:00
Junxiao Shi b84e6743be fw: FaceTable iterator dereferences to Face& instead of shared_ptr
This commit also improves the speed and reliability of
Mgmt/TestFaceManager/CreateFace test suite.

refs #3205

Change-Id: Idd013488ced2d7f8072ef8a3d910f94da2e0c8ac
2016-07-19 13:16:22 +00:00
Junxiao Shi 5b43f9a74d fw: FaceTable::get returns Face* instead of shared_ptr
refs #3205

Change-Id: I1c61493382fe065389266ff3519ab2b265fe4f79
2016-07-19 13:15:56 +00:00
Yanbiao Li df846e5904 core: allow ManagerBase be inherited by RibManager
Change-Id: Ie2613e32460fb109a9f9302a0cc4b4b3400ba9f4
refs: #2857
2016-04-12 14:10:55 -07:00
Eric Newberry c64d30aeff mgmt: re-added expiration time to FaceStatus
refs #3381

Change-Id: I57d3166fc6ed52a54c442a80faffe7a7f4051e1d
2015-12-29 13:11:47 -08:00
Junxiao Shi cde37ad608 face: face refactoring completion
* delete old Face
* rename LpFace as Face
* eliminate LpFaceWrapper and use new Face

refs #3172

Change-Id: I08c3a5dfb4cc1b9834b30cccd9ab634535d0608c
2015-12-24 01:02:05 -07:00
Junxiao Shi 0de23a29c5 face: use IncomingFaceId, NextHopFaceId, CachePolicy tags
This commit replaces all LocalControlHeader usages with these tags,
and deletes LocalFace.

This commit also does minor improvements in RIB test suites.

refs #3339

Change-Id: I14cbfc296a6723a5860bf8bd95d9804d3bac3da5
2015-12-03 20:07:02 +00:00
Davide Pesavento 35120ea2f1 face: EthernetTransport
This commit replaces NDNLPv1 fragmentation and reassembly
with NDNLPv2 fragmentation and reassembly.

Change-Id: I10751157fcced94d441167ce470aaed79c12bb54
Refs: #3170
2015-11-26 02:53:20 +01:00
Junxiao Shi da93f1fd0c face: LpFace counters
FaceCounters for LpFace consist of LinkService::Counters and
Transport::Counters. Old FaceCounters class from 2014 face architecture is
renamed as OldFaceCounters, and can be wrapped with new FaceCounters class.
OldFaceCounters is only used in old Face subclasses.

This commit also updates existing face test suites to use new FaceCounters,
updates ForwarderStatus so that it does not rely on FaceCounters,
and moves the logic of copying face properties and counters into management
structs from face system into FaceManager.

refs #3177

Change-Id: I587e8a32fa72bac3af9d750b2c88342740aa08d6
2015-11-11 06:13:16 -07:00
Davide Pesavento 1d7e7afd38 face+mgmt: simplify factories and FaceManager using C++11 features
Change-Id: I113a4c15ef82bff705f61f31b170f49727bc3794
Refs: #3258
2015-10-13 16:28:52 +02:00
Junxiao Shi 40cb61c6bd mgmt: LpFace faces/enable-local-control workaround
In this temporary workaround,
faces/enable-local-control enables all local fields in GenericLinkService,
and faces/disable-local-control disables all local fields in GenericLinkService.

This commit also modifies FaceTable::remove to retain shared_ptr<Face>
until signal execution is complete.

refs #3226

Change-Id: I3513e97ec2af87df94dbf57a7256b895ed9d2103
2015-09-26 14:38:38 -07:00
Yukai Tu 0a49d34342 face: UdpTransport
Change-Id: I54f43248785437cdf951d50099e46e9689962a75
Refs: #3168
2015-09-26 14:38:22 -07:00
Yanbiao Li 73860e3397 mgmt refactoring: FaceManager
Change-Id: I292a3e3d702746d6e946a2844e6f88f64cd711a4
Refs: #2107
2015-09-07 19:00:07 -07:00
Yanbiao Li 36f3500d21 mgmt refactoring: Remove legacy code
Change-Id: Ib443ff3d45f9c49edee59d79c42a932017fc66ec
Refs: #2107
2015-09-07 18:58:34 -07:00
Yukai Tu 8149d1077b mgmt: Process FacePersistency in FaceManager
Change-Id:I3a93bd658d40f3d77f7790b72e8873646ecc7990
Refs: #2991
2015-09-04 10:44:24 -07:00
Spyridon Mastorakis 149e02cf7d Enhance exception throwing with Boost Exception library
Change-Id: I471023fc23ffaebe04d9668426b4c1b03e4919aa
Refs: #2541
2015-08-17 16:17:33 -07:00
Yukai Tu 7c90e6dfea face: ProtocolFactory::createFace with FacePersistency
Change-Id: If02510bd631e9aaa63b3cca89ced31a42e192ded
Refs: #2989
2015-07-29 23:50:25 +08:00
Chengyu Fan addecff68b management: clarify the inconsistency in UDP face timeouts in nfd.conf
refs #2473

Change-Id: Iceeda5f03bc426dfab1e67cf508996d3fe96ac42
2015-02-18 07:18:29 -08:00
Alexander Afanasyev 319f2c8dbc src: Update copyright notices for files modified in 2015
Change-Id: Ia52e6e891a06fcc7ace06eafd2fffecd7bd55a95
Refs: #2352
2015-01-19 21:45:21 -08:00
Alexander Afanasyev eae4f80d2c face: Limit exposure of EthernetFace implementation
It seems that gcc 4.6 on Ubuntu 12.04 has some issue with
std::unordered_map in EthernetFace implementation, causing it segfault
in some cases.

Change-Id: I0c5a3be66e357e2bd83841d833d601c2fba6936a
Refs: #2347
2015-01-06 10:48:00 -08:00
Chengyu Fan b94af7c82f mgmt: Allow only canonical FaceUri in faces/create command
refs #1910

Change-Id: I89a84cd8584d5a718bcc85db05cc337b4b4f8f73
2014-12-16 21:47:07 -08:00
Junxiao Shi 1e064171da fw: use Signal in FaceTable
refs #2272

Change-Id: I831963b8311c257178ad0da16d62e48b476bfee3
2014-12-15 11:30:55 -08:00
Steve DiBenedetto cd4ee5fcb4 mgmt,rib: check command length before accessing verb
refs: #2151

Change-Id: I0e67fd4b4df10d842648797ed42771af7c53a938
2014-12-09 00:12:43 -07:00
Davide Pesavento b499a601b5 core: ignore non-Ethernet AF_LINK addresses when enumerating NICs.
Also modernize the code with some C++11 features.

Change-Id: Ibd29b39c37fdce8f87f917ab0cf48750e631e76c
2014-11-22 20:15:28 -08:00
Chengyu Fan ab205c20e6 mgmt: respond Nack when query is invalid
refs #1993

Change-Id: I21e398cd7b2e562b7dc759a89f6e668960e72c41
2014-11-18 11:10:37 -07:00
Steve DiBenedetto dbcb1a1192 mgmt: remove listen option from unix channel configuration
refs: #2188

Change-Id: I11adf075b03eab3d22f8160e5d619e3ed445dd29
2014-11-17 12:24:44 -07:00
Junxiao Shi a1937bf54c core: use FaceUri from ndn-cxx
refs #2143

Change-Id: Ida06daf406f941a699c9f1013450951db3cd28e9
2014-11-14 12:44:55 -08:00
Chengyu Fan 320d23334f mgmt: Implement Query Operation in FaceManager
refs #1993

Change-Id: Ieb59bb68bfe839242d1cdd0dd7e3a079a8a0c8de
2014-11-14 03:56:25 -08:00
Chengyu Fan f9c2bb19fe mgmt: replace FaceFlags with individual fields
refs #1992

Change-Id: I41d55b3227c916a253705aaeefbe66c7c18e22a9
2014-10-08 21:56:38 -06:00
Junxiao Shi 15b12e759d core: use markers in StatusDataset and NotificationStream
This commit also refactors FaceMonitor as generic NotificationSubscriber,
and refactors AutoregServer to use FaceMonitor.

refs #1837 #1838

Change-Id: I8b40dfae118853d1224c8290cf92e7cc0daa116f
2014-08-10 19:23:09 -07:00
Vince Lehman 5144f829b9 mgmt+core: Moving SegmentPublisher to core/ and removing KeyChain from nfd::AppFace
This change ensures interface uniformity between nfd::AppFace and
ndn::Face and allow now templated version of SegmentPublisher to be used
with either.

Change-Id: I82e29528b13b37bd2ae27ef47db30e8c87c15a38
Refs: #1749
2014-07-23 16:01:27 -07:00
Alexander Afanasyev e515f0a989 face: Moving idle UdpFace closing logic to UdpFace class
Change-Id: Ia7310fa18681f17d93c8214ce744da909fea7022
Refs: #1686
2014-06-30 19:54:33 -07:00
Steve DiBenedetto ef04f27892 face, mgmt: add channel status dataset publisher
Expose channel maps in protocol factories

Change-Id: I057b1bba638bfc9372867318653d71ba7d0e9888
Refs: #1631, #1653
2014-06-13 11:30:36 -07:00
Alexander Afanasyev 5959b014c5 mgmt: Reinitialize multicast faces and partially reload config file on HUP signal
The following elements from the config file are reloaded:
- effective user/group
- log levels
- multicast faces (enable/disable)
- security

Change-Id: I6ddf124702b30610dd0404d8fbaa9a9d800f02bf
Refs: #1584
2014-06-04 09:15:03 +03:00
Steve DiBenedetto 2599928409 mgmt: update face created Control Response with URI's canonical form
refs: #1619

Change-Id: I7c0304ce390de9757d2352e182a075ac902020d2
2014-05-22 15:27:06 -06:00
Alexander Afanasyev f6980284e6 src: Remove unnecessary uses of boost::cref in make_shared and replace boost::cref/boost::ref with just cref/ref
In some cases, due to argument-dependent lookup, it is necessary to use
ndn::ref, instead of just ref.

Change-Id: I682180a007609535855f77511b49622154ad4f11
Refs: #1591
2014-05-15 09:52:28 -07:00
Wentao Shang 53df163b62 face: Implement WebSocket channel, face, and factory.
Change-Id: Ic4dbb1abdbbdbec028746ba14b11be8ab9cc1edb
Refs: #1468
2014-05-08 17:16:43 -07:00
Alexander Afanasyev 4a77136894 build: == Dependency change == NFD now depends on ndn-cxx library
Change-Id: Ia9dd324a536573b5ac4fe1b73d82af772dc84923
Refs: #1536
2014-04-25 10:09:23 -07:00
Giulio Grassi 6d7176dc43 face: bugfix of MulticastUdpFace receiving packets from all available NICs on Linux
Now on Linux the creation of MulticastUdpFace requires
CAP_NET_RAW capability if the name of the interface is specified

Change-Id: Iff53035371fb26c6ee40e1065a0935e5ed16dc60
Refs: #1475
2014-04-18 00:13:05 +02:00
Alexander Afanasyev 613e2a9ba3 src: Reorganizing source code in preparation to merge NRD code
Note that as of this commit, there are several changes in location of
compiled binaries in `build/` folder:

* `nfd` has been moved to `build/bin/nfd`
* `unit-tests` has been split into `unit-tests-core` and `unit-tests-daemon`

Change-Id: I2c830c117879edbaa5457d6423c13f0273285919
Refs: #1486
2014-04-16 11:54:35 -07:00
Alexander Afanasyev 885a85bf90 build+face: Fixing regression that broke ethernet support
As of this commit, libpcap is required unless specifically disabled
using --without-libpcap parameter during configure stage.

Change-Id: Iec6f8bd9babfe4da193c98a49043b08319311106
Refs: #1472
2014-04-13 21:15:31 -07:00
Steve DiBenedetto 9515287da7 mgmt: add support for enabling/disabling IPv4 or v6 channels
refs: #1461

Change-Id: I00bda4098c9a7722bce9d498acce339809af3f01
2014-04-11 13:36:54 -06:00
Davide Pesavento 52a18f9428 all: cleanup common.hpp and import typenames from ndn namespace.
This allows us to compile NFD in C++11 mode, making use of std::shared_ptr,
std::function, std::bind, etc. rather than their boost equivalents
(provided that ndn-cpp-dev is also compiled in C++11 mode). This is an
experimental feature and may not work properly.

Change-Id: I310529f78e1e428a8530b087983130d1ef3a9d88
2014-04-10 15:14:15 -07:00
Alexander Afanasyev 9bcbc7c130 docs: Update of copyright and license statement in all .hpp and .cpp files
Change-Id: I4082db67f2390482615a780d91a513f09d57a9a4
Refs: #1266
2014-04-07 09:18:25 -07:00
Steve DiBenedetto ca53ac6b00 face, mgmt: improve face creation failure and bad URI handling
Prevent creation of faces to endpoints owned by NFD instance

Prevent creation of UDP broadcast faces (255.255.255.255 and
those belonging to machine's interfaces) in response to
face creation command

Sanity check configuration file port numbers in face manager

refs: #1414, #1427

Change-Id: Ia3f0a9337f3d97c34388773eab05bc39ad6dd804
2014-04-06 10:54:20 -07:00
Junxiao Shi 6e69432262 face/mgmt/fw/tools: add localUri to FaceStatus and FaceEventNotification
refs #1396

Change-Id: I6084745c62c44a409ecbd4a795cb712475e32416
2014-04-03 10:27:13 -07:00
Alexander Afanasyev bf9edeeaee logging: Reducing log level in several places
INFO level is suppose to be used for informational messages that are
useful for ordinary user, but in several places we used it as a DEBUG
output.

In CS the level is reduced even more, to TRACE.

Change-Id: I9058e25d95de79661099dd4624d802cc33420983
2014-04-01 22:24:50 -07:00
Steve DiBenedetto bf6a93da4e core: change logging from environment variable to configuration file-based
GlobalConfigurationFixture uses unit-tests.conf to determine default
and module specific logging levels. Logging will gracefully default to
INFO if unit-tests.conf is not found. See unit-tests.conf.sample for a
sample configuration file.

refs: #1375, #1267

Change-Id: Ib0c4eb4149748e6658f94ef1afa23ddd3072c0fa
2014-03-31 20:46:51 -06:00
Steve DiBenedetto 51d242a281 mgmt: refactor management modules to use ControlCommand
Change-Id: Icf5e10f2f2d0b95c85fd871e6484c3ed58ed6c46
2014-03-31 18:18:47 -07:00