38 #ifndef OPENAPI_ROUTING_H_INCLUDED
39 #define OPENAPI_ROUTING_H_INCLUDED
49 #define OPEN_RPPI_CLIENT_NAME_MAX_LEN (32)
54 #define RPPI_BRC_ADDR "/tmp/rppi_brc.%04u"
56 #define ROUTER_EVENT_CLIENT_ADDR "/tmp/rppi_rec.%04u"
59 #define RPPI_POLICY_CLIENT_ADDR "/tmp/rppi_pc.%04u"
62 #define RPPI_MSG_SIZE_MAX 256
65 #define OPENR_BRC_NAME_LEN 16
68 #define OPENR_POLICY_CLIENT_NAME_LEN 16
70 #define OPENR_RTR_GBL_MSG_LEN (sizeof(openrRouterEventMsg_t))
71 #define OPENR_RTR_INTF_MSG_LEN (sizeof(openrRouterEventMsg_t))
74 #define OPENR_ROUTING_PROTOCOL_NAME_LEN 10
77 #define OPENR_NUM_BEST_ROUTES_PER_GET 50
83 #define OPENR_PLAT_MAX_ECMP_NEXTHOPS 48
86 #define OPEN_VRF_MAX_NAME_LEN 64
102 OPEN_DELETE_ROUTE = 1,
103 OPEN_CHANGE_ROUTE = 2
111 OPEN_POLICY_ROUTE_MAP = 1,
112 OPEN_POLICY_PREFIX_LIST = 2,
113 OPEN_POLICY_AS_PATH_LIST = 4,
114 OPEN_POLICY_ACL_ROUTE_FILTER = 8
131 OPENR_BEST_ROUTE_CHANGE = 10,
134 OPENR_RTR_ENABLE = 101,
135 OPENR_RTR_DISABLE = 102,
136 OPENR_RTR_STARTUP_DONE = 103,
137 OPENR_RTR_INTF_CREATE = 104,
138 OPENR_RTR_INTF_DELETE = 105,
139 OPENR_RTR_INTF_ENABLE = 106,
140 OPENR_RTR_INTF_ENABLE_PENDING = 107,
141 OPENR_RTR_INTF_DISABLE = 108,
142 OPENR_RTR_INTF_DISABLE_PENDING = 109,
143 OPENR_RTR_INTF_ADDR_CHANGE = 110,
144 OPENR_RTR_INTF_MTU = 111,
145 OPENR_RTR_INTF_BW_CHANGE = 112,
146 OPENR_RTR_INTF_HOST_MODE = 113,
147 OPENR_RTR_INTF_CFG_CHANGE = 114,
148 OPENR_RTR_VRF_CREATE = 115,
149 OPENR_RTR_VRF_DELETE = 116,
151 OPENR_RTR6_ENABLE = 201,
152 OPENR_RTR6_DISABLE = 202,
153 OPENR_RTR6_STARTUP_DONE = 203,
154 OPENR_RTR6_INTF_CREATE = 204,
155 OPENR_RTR6_INTF_DELETE = 205,
156 OPENR_RTR6_INTF_ENABLE = 206,
157 OPENR_RTR6_INTF_DISABLE = 207,
158 OPENR_RTR6_INTF_ADDR_CHANGE = 208,
159 OPENR_RTR6_INTF_MTU = 209,
160 OPENR_RTR6_INTF_BW_CHANGE = 210,
161 OPENR_RTR6_INTF_HOST_MODE = 211,
163 OPENR_POLICY_CHANGE = 300
172 OPEN_NSF_PROTOCOL_OSPF = 0x1,
173 OPEN_NSF_PROTOCOL_RIP = 0x2,
174 OPEN_NSF_PROTOCOL_BGP = 0x4,
175 OPEN_NSF_PROTOCOL_LAST = 0x8
176 } OPEN_NSF_PROTOCOL_t;
204 uint32_t eventSeqNumber;
251 uint32_t
label[OPEN_MAX_MPLS_IMPOSE_LABELS];
300 uint8_t rfc5549Route;
303 uint8_t unnumberedRoute;
365 OPEN_BFD_DISABLE = 0,
367 } OPEN_BFD_ADMIN_MODE_t;
385 uint32_t override_config;
388 uint32_t bfdMultiplier;
389 uint32_t bfdEchoMode;
390 uint32_t bfdSlowTimer;
395 #define OPEN_BFD_MAX_REG_PROT 2
398 #define OPEN_BFD_SESSION_ID_INVALID (~0)
403 OPEN_BFD_SESSION_STATE_ADMIN_DOWN = 0,
404 OPEN_BFD_SESSION_STATE_DOWN = 1,
405 OPEN_BFD_SESSION_STATE_INIT = 2,
406 OPEN_BFD_SESSION_STATE_UP = 3,
407 } OPEN_BFD_SESSION_STATE_t;
411 OPEN_BFD_DIAG_CODE_NONE,
412 OPEN_BFD_DIAG_CODE_CTRL_DETECT_TIME_EXPIRED,
413 OPEN_BFD_DIAG_CODE_ECHO_FAILED,
414 OPEN_BFD_DIAG_CODE_NEIGHBOR_SIGNALED_SESSION_DOWN,
415 OPEN_BFD_DIAG_CODE_FORWARDING_PLANE_RESET,
416 OPEN_BFD_DIAG_CODE_PATH_DOWN,
417 OPEN_BFD_DIAG_CODE_CONCATENATED_PATH_DOWN,
418 OPEN_BFD_DIAG_CODE_ADMIN_DOWN,
419 OPEN_BFD_DIAG_CODE_REVERSE_CONCATENATED_PATH_DOWN,
420 OPEN_BFD_DIAG_CODE_MIS_CONNECTIVITY_DEFECT
421 } OPEN_BFD_DIAG_CODE_t;
424 OPEN_BFD_TUNNEL_TYPE_RAW,
425 OPEN_BFD_TUNNEL_TYPE_UDP,
426 OPEN_BFD_TUNNEL_TYPE_COUNT
427 } openBfdTunnelType_t;
429 #define SYNCDB_OPENAPI_BFD "OpEN API BFD"
430 #define SYNCDB_OPENAPI_BFD_VERSION 1
465 uint32_t
id[OPEN_BFD_MAX_REG_PROT];
477 uint32_t echoOutPkts;
560 uint32_t *routeType);
583 uint32_t addressFamily,
606 uint32_t addressFamily,
695 uint32_t *protoNameLen);
715 uint32_t *routeTypeNameLen);
1057 uint32_t numChanges,
1081 uint32_t clientId, uint32_t intIfNum,
1082 uint32_t numChanges,
1104 uint32_t *maxNextHops);
1133 uint32_t *clientId);
1194 uint32_t *routingIntfMax);
1216 uint32_t *nextIntf);
1236 uint32_t *nextIntf);
1366 uint32_t *loopbackId);
1383 uint32_t loopbackId,
1402 uint32_t *ifNameSize);
1439 uint32_t ifIndex, uint32_t *intIfNum);
1707 uint32_t *bandwidth);
1762 uint32_t *burstSize,
1763 uint32_t *interval);
1836 uint32_t *complete);
1875 uint32_t *complete);
1961 uint32_t policyTypeMask,
1962 uint32_t *clientId);
2047 uint32_t *nextProtoId);
2124 uint32_t *clientId);
2359 uint32_t *rtoFreeRouteCount);
2487 uint32_t intIfNum, uint32_t peerIp,
OPEN_BOOL_t isAdd, uint32_t flag);
2536 int32_t stkIfIndex);