blob: 490b6daeb78d52ddbfad120b94b7de13050953be [file] [log] [blame]
Alexander Afanasyeveaf105c2014-01-30 17:40:24 -08001/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil -*- */
Alexander Afanasyevdfa52c42014-04-24 21:10:11 -07002/**
3 * Copyright (c) 2013-2014, Regents of the University of California.
4 * All rights reserved.
Alexander Afanasyeveaf105c2014-01-30 17:40:24 -08005 *
Alexander Afanasyevdfa52c42014-04-24 21:10:11 -07006 * This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).
7 * See AUTHORS.md for complete list of ndn-cxx authors and contributors.
Alexander Afanasyeveaf105c2014-01-30 17:40:24 -08008 *
Alexander Afanasyevdfa52c42014-04-24 21:10:11 -07009 * This file licensed under New BSD License. See COPYING for detailed information about
10 * ndn-cxx library copyright, permissions, and redistribution restrictions.
Alexander Afanasyeveaf105c2014-01-30 17:40:24 -080011 */
12
Alexander Afanasyev6d48bc12014-02-18 00:10:51 -080013#ifndef NDN_TLV_NFD_HPP
14#define NDN_TLV_NFD_HPP
Alexander Afanasyeveaf105c2014-01-30 17:40:24 -080015
Junxiao Shi28908b72014-03-15 23:25:45 -070016#include "../common.hpp"
17
Alexander Afanasyeveaf105c2014-01-30 17:40:24 -080018namespace ndn {
19namespace tlv {
Alexander Afanasyev6d48bc12014-02-18 00:10:51 -080020namespace nfd {
Alexander Afanasyeveaf105c2014-01-30 17:40:24 -080021
Junxiao Shi7b1ba1a2014-03-29 01:01:56 -070022// NFD Management protocol
Alexander Afanasyeveaf105c2014-01-30 17:40:24 -080023enum {
Junxiao Shibc19b372014-03-23 16:59:25 -070024 // ControlParameters
25 ControlParameters = 104,
26 FaceId = 105,
27 Uri = 114,
28 LocalControlFeature = 110,
Junxiao Shi5f6c74f2014-04-18 16:29:44 -070029 Origin = 111,
Junxiao Shibc19b372014-03-23 16:59:25 -070030 Cost = 106,
Junxiao Shi5f6c74f2014-04-18 16:29:44 -070031 Flags = 108,
Junxiao Shibc19b372014-03-23 16:59:25 -070032 Strategy = 107,
Junxiao Shi5f6c74f2014-04-18 16:29:44 -070033 ExpirationPeriod = 109,
Junxiao Shibc19b372014-03-23 16:59:25 -070034
Alexander Afanasyeveaf105c2014-01-30 17:40:24 -080035 // ControlResponse
36 ControlResponse = 101,
37 StatusCode = 102,
38 StatusText = 103,
39
Junxiao Shi5109dee2014-03-27 19:40:30 -070040 // ForwarderStatus
Junxiao Shi28908b72014-03-15 23:25:45 -070041 NfdVersion = 128,
42 StartTimestamp = 129,
43 CurrentTimestamp = 130,
44 NNameTreeEntries = 131,
45 NFibEntries = 132,
46 NPitEntries = 133,
47 NMeasurementsEntries = 134,
48 NCsEntries = 135,
Junxiao Shi5109dee2014-03-27 19:40:30 -070049 NInInterests = 144,
50 NInDatas = 145,
51 NOutInterests = 146,
Junxiao Shi7b1ba1a2014-03-29 01:01:56 -070052 NOutDatas = 147,
53
54 // Face Management
55 FaceStatus = 128,
56 LocalUri = 129,
57 FaceFlags = 194,
58 FaceEventNotification = 192,
59 FaceEventKind = 193,
60
61 // FIB Management
62 FibEntry = 128,
63 NextHopRecord = 129
Alexander Afanasyeveaf105c2014-01-30 17:40:24 -080064};
65
Alexander Afanasyev6d48bc12014-02-18 00:10:51 -080066enum {
67 // Local Control Header
68 LocalControlHeader = 80,
69 IncomingFaceId = 81,
70 NextHopFaceId = 82
71};
Alexander Afanasyeveaf105c2014-01-30 17:40:24 -080072
Alexander Afanasyev6d48bc12014-02-18 00:10:51 -080073} // namespace nfd
Alexander Afanasyeveaf105c2014-01-30 17:40:24 -080074} // namespace tlv
hilataa99e37e2014-02-15 23:52:46 -060075
76namespace nfd {
77
78const uint64_t INVALID_FACE_ID = std::numeric_limits<uint64_t>::max();
79
80} // namespace nfd
81
Alexander Afanasyeveaf105c2014-01-30 17:40:24 -080082} // namespace ndn
83
Alexander Afanasyev6d48bc12014-02-18 00:10:51 -080084#endif // NDN_TLV_NFD_HPP