mirror_frr/lib
Renato Westphal 5b5d66c431 lib, ospfd, ospf6d, zebra: add OSPF opaque route attributes
Update ospfd and ospf6d to send opaque route attributes to
zebra. Those attributes are stored in the RIB and can be viewed
using the "show ip[v6] route" commands (other than that, they are
completely ignored by zebra).

Example:
```
debian# show ip route 192.168.1.0/24
Routing entry for 192.168.1.0/24
  Known via "ospf", distance 110, metric 20, best
  Last update 01:57:08 ago
  * 10.0.1.2, via eth-rt2, weight 1
    OSPF path type        : External-2
    OSPF tag              : 0

debian#
debian# show ip route 192.168.1.0/24 json
{
  "192.168.1.0\/24":[
    {
      "prefix":"192.168.1.0\/24",
      "prefixLen":24,
      "protocol":"ospf",
      "vrfId":0,
      "vrfName":"default",
      "selected":true,
      [snip]
      "ospfPathType":"External-2",
      "ospfTag":"0"
    }
  ]
}
```

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2022-01-15 17:22:27 +01:00
..
assert lib: rework how we "override" assert() 2021-05-02 16:27:17 +02:00
printf Merge pull request #8350 from opensourcerouting/printfrr-revamp 2021-03-31 09:10:30 -04:00
.gitignore
agentx.c *: don't pass pointers to a local variables to thread_add_* 2021-10-07 16:01:03 +03:00
agg_table.c lib: make some variables static 2019-12-13 06:22:34 +01:00
agg_table.h *: Create/Use accessor functions for lock count 2020-10-17 13:39:10 -04:00
atomlist.c lib: avoid include loop with assert.h 2021-11-10 12:36:50 +01:00
atomlist.h lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
bfd.c lib: rename bfd function to reflect real functionality 2021-11-15 18:16:30 +03:00
bfd.h lib: remove confusing bfd TTL API 2021-11-11 14:56:04 +03:00
bitfield.h lib: add an MTYPE for bitfields 2021-06-18 09:34:43 +01:00
buffer.c lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
buffer.h
checksum.c lib: add internet checksum with pseudoheaders 2019-05-17 00:27:08 +00:00
checksum.h lib: add internet checksum with pseudoheaders 2019-05-17 00:27:08 +00:00
clippy.c lib: rework how we "override" assert() 2021-05-02 16:27:17 +02:00
clippy.h lib/clippy: add libelf wrapper 2021-02-23 16:56:58 +01:00
command_graph.c lib: assign CLI varnames while parsing 2021-10-18 19:48:11 +02:00
command_graph.h lib: assign CLI varnames while parsing 2021-10-18 19:48:11 +02:00
command_lex.l lib: add ![...] syntax for easy "no" forms 2021-08-26 21:03:44 +02:00
command_match.c lib: fix segfault on question mark on empty line 2021-09-14 15:12:23 +03:00
command_match.h lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
command_parse.y lib: assign CLI varnames while parsing 2021-10-18 19:48:11 +02:00
command_py.c lib: fix indentation trainwreck in command_py 2021-08-26 21:08:51 +02:00
command.c lib: rework vty_check_node_for_xpath_decrement 2021-11-16 18:51:22 +01:00
command.h lib: rework vty_check_node_for_xpath_decrement 2021-11-16 18:51:22 +01:00
compiler.h Merge pull request #8888 from dlqs/lua-call 2021-07-05 04:13:20 +00:00
csv.c lib: Avoid using assignments within checks 2021-06-29 22:27:49 +03:00
csv.h
db.c lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
db.h
debug.c *: require semicolon after DEFINE_<typesafe...> 2021-03-17 06:18:39 +01:00
debug.h *: require semicolon after DEFINE_<typesafe...> 2021-03-17 06:18:39 +01:00
defaults.c build: make builddir include path consistent 2021-04-21 15:42:33 +02:00
defaults.h *: require semicolon after FRR_CFG_DEFAULT_* 2021-03-17 06:18:39 +01:00
defun_lex.l lib: fix some misc SA warnings 2021-02-17 17:01:06 -05:00
distribute.c lib: Remove dead code 2021-05-04 16:23:37 -04:00
distribute.h lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
elf_py.c lib: fix elf_py TLS section handling 2021-11-10 15:30:56 +01:00
ferr.c lib: use vty_json() 2021-11-17 16:01:30 +01:00
ferr.h lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
filter_cli.c lib: Add autocomplete for access-lists 2021-10-31 20:26:06 +02:00
filter_nb.c lib: fix prefix-list duplication check 2021-08-10 22:31:42 +03:00
filter.c lib: use json-printf in filter code 2021-11-17 16:01:30 +01:00
filter.h lib: northbound cli show/cmd functions must not modify data nodes 2021-10-13 20:12:35 +03:00
freebsd-queue.h
frr_pthread.c lib: hard-fail creating threads before fork() 2021-04-22 13:25:38 +02:00
frr_pthread.h *: generously apply const 2019-12-02 15:01:29 +01:00
frr_zmq.c Merge pull request #9751 from ewlumpkin/comment_spelling_fixes 2021-10-14 02:05:44 +03:00
frr_zmq.h lib: avoid double-free in zmq wrapper callbacks 2021-08-19 13:31:33 -04:00
frratomic.h lib/atomlist: make C++ compatible 2020-04-21 21:38:07 +02:00
frrcu.c *: require semicolon after DEFINE_<typesafe...> 2021-03-17 06:18:39 +01:00
frrcu.h lib: avoid include loop with assert.h 2021-11-10 12:36:50 +01:00
frrlua.c lib: Add encoder/decoder for nexthop/nexthop group 2021-10-20 00:56:00 +08:00
frrlua.h lib: Add encoder/decoder for nexthop/nexthop group 2021-10-20 00:56:00 +08:00
frrscript.c lib: Return Null when we have an empty string for script name 2021-11-01 07:29:10 -04:00
frrscript.h lib: Add frrscript names hash 2021-10-20 00:56:00 +08:00
frrstr.c lib: add frrstr_hex to hexdump buffers 2021-08-12 16:25:57 -04:00
frrstr.h lib: add frrstr_hex to hexdump buffers 2021-08-12 16:25:57 -04:00
getopt1.c
getopt.c *: fix for -Wstrict-prototypes 2021-09-02 13:00:35 +02:00
getopt.h treewide: fix some issues found with -Werror=undef 2020-03-10 16:53:13 +01:00
gitversion.pl build: fix auto git ID length 2020-01-17 15:54:50 +01:00
grammar_sandbox_main.c lib: adapt to version 2 of libyang 2021-05-13 16:24:48 -04:00
grammar_sandbox.c vtysh: defer CLI tree building 2021-10-18 19:48:11 +02:00
graph.c lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
graph.h
hash.c *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
hash.h lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
hook.c *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
hook.h lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
iana_afi.h lib, zebra: add missing extern "C" {} blocks to new header files 2020-04-22 23:49:22 -03:00
id_alloc.c *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
id_alloc.h
if_rmap.c *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
if_rmap.h
if.c *: cleanup ifp->vrf_id 2021-11-22 20:47:23 +03:00
if.h *: cleanup ifp->vrf_id 2021-11-22 20:47:23 +03:00
imsg-buffer.c *: Remove parenthesis on return for constants 2020-02-09 14:21:56 +02:00
imsg.c *: Remove parenthesis on return for constants 2020-02-09 14:21:56 +02:00
imsg.h
ipaddr.h lib, zebra: Add SR-TE policy infrastructure to zebra 2020-08-07 11:08:49 +02:00
jhash.c
jhash.h
json.c lib: add printfrr to json string helpers 2021-11-17 16:01:30 +01:00
json.h lib: add printfrr to json string helpers 2021-11-17 16:01:30 +01:00
keychain.c *: explicitly print "exit" at the end of every node config 2021-08-23 22:08:20 +03:00
keychain.h *: require semicolon after DEFINE_QOBJ & co. 2021-03-17 06:18:37 +01:00
ldp_sync.c *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
ldp_sync.h ldpd, isisd, ospfd: Remove periodic ldp-sync hello message 2020-12-09 14:11:38 -05:00
lib_errors.c lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
lib_errors.h lib: Differentiate between real and cpu bound processes 2021-03-26 11:41:57 -04:00
lib_vty.c northbound: KISS always batch yang config (file read), it's faster 2021-06-02 14:05:26 +00:00
lib_vty.h lib: rename memory_vty.c to lib_vty.c 2019-12-06 15:13:29 +01:00
libfrr_trace.c *: make sure config.h or zebra.h is first 2021-04-23 12:06:35 +02:00
libfrr_trace.h lib, bgpd: convert lttng tracepoints to frrtrace() 2020-10-23 15:13:51 -04:00
libfrr.c lib/module.c and callers of frrmod_load(): fix error messages 2021-09-14 09:51:49 -07:00
libfrr.h *: Convert quagga_signal_X to frr_signal_X 2021-11-11 14:41:27 -05:00
libospf.h lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
link_state.c lib: use _safe iteration during link_state/ted cleanup 2021-11-18 11:23:39 -05:00
link_state.h lib: Fix comparison function in link_state.c 2021-10-29 10:16:12 +02:00
linklist.c lib: kill unused list_filter_out_nodes() 2021-05-03 20:56:55 +02:00
linklist.h lib: kill unused list_filter_out_nodes() 2021-05-03 20:56:55 +02:00
log_filter.c lib: include \n in zlog_msg_text() 2021-06-18 21:05:21 +02:00
log_vty.c vtysh: dispatch unique-id backtrace cmd properly 2021-11-16 18:51:22 +01:00
log_vty.h lib: make a few log symbols accessible 2021-06-18 21:05:21 +02:00
log.c *: Rename quagga_timestamp with frr_timestamp 2021-11-11 14:41:27 -05:00
log.h *: Rename quagga_timestamp with frr_timestamp 2021-11-11 14:41:27 -05:00
Makefile
md5.c *: Do not cast to the same type 2020-04-08 17:15:06 +03:00
md5.h
memory.c lib: add an MTYPE for bitfields 2021-06-18 09:34:43 +01:00
memory.h *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
mlag.c lib: Ensure pointer exists before using in mlag 2020-03-20 18:17:40 -04:00
mlag.h lib, pimd, zebra: Provide some insurance against reading bad stream data 2020-03-06 16:03:59 -05:00
module.c lib/module.c and callers of frrmod_load(): fix error messages 2021-09-14 09:51:49 -07:00
module.h lib/module.c and callers of frrmod_load(): fix error messages 2021-09-14 09:51:49 -07:00
monotime.h lib, *: add a common time interval formatting api 2020-03-09 11:12:32 -04:00
mpls.c zebra,lib: use const in more apis 2020-03-27 09:37:02 -04:00
mpls.h ldpd: Fix issue when starting up LDP with no configuration. 2020-09-04 09:24:47 -04:00
netns_linux.c lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
netns_other.c *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
network.c lib: Avoid using assignments within checks 2021-06-29 22:27:49 +03:00
network.h *: frr-format with unmodified GCC 2021-09-28 11:20:32 +02:00
nexthop_group_private.h lib,zebra: use nhg_hash_entry pointer in route_entry 2019-12-04 08:13:52 -05:00
nexthop_group.c *: Remove unused variables 2021-11-18 18:45:41 +02:00
nexthop_group.h *: require semicolon after DEFINE_QOBJ & co. 2021-03-17 06:18:37 +01:00
nexthop.c Merge pull request #9596 from LabNConsulting/ziemba/printfrr-nexthop 2021-09-15 20:23:30 -04:00
nexthop.h bgpd: VRF-Lite fix nexthop type 2021-09-07 01:50:06 -07:00
northbound_cli.c lib: northbound cli show/cmd functions must not modify data nodes 2021-10-13 20:12:35 +03:00
northbound_cli.h lib: northbound cli show/cmd functions must not modify data nodes 2021-10-13 20:12:35 +03:00
northbound_confd.c *: don't pass pointers to a local variables to thread_add_* 2021-10-07 16:01:03 +03:00
northbound_db.c lib: libyang2 add missed conversion 2021-05-17 22:13:59 -04:00
northbound_db.h
northbound_grpc.cpp lib: prevent gRPC assert on missing YANG node 2021-10-05 10:22:27 -03:00
northbound_sysrepo.c *: don't pass pointers to a local variables to thread_add_* 2021-10-07 16:01:03 +03:00
northbound.c lib: Do not use sizeof() on size_t errmsg_len. 2021-11-18 22:44:00 +08:00
northbound.h lib: northbound cli show/cmd functions must not modify data nodes 2021-10-13 20:12:35 +03:00
ns.h vrf: VRF_DEFAULT must be 0, remove useless code 2020-09-21 10:17:35 +02:00
ntop.c lib: Avoid using assignments within checks 2021-06-29 22:27:49 +03:00
openbsd-queue.h
openbsd-tree.c *: Remove parenthesis on return for constants 2020-02-09 14:21:56 +02:00
openbsd-tree.h
pbr.h pbrd: add vlan actions to vty 2021-10-07 09:14:59 -04:00
pid_output.c build: make builddir include path consistent 2021-04-21 15:42:33 +02:00
plist_int.h *: cleanup number-named access-lists and prefix-lists 2021-04-14 17:18:13 +03:00
plist.c lib: use vty_json() 2021-11-17 16:01:30 +01:00
plist.h lib, pimd: add address match mode to prefix lists 2021-07-06 01:44:34 +02:00
prefix.c lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
prefix.h lib,zebra: use more const 2021-09-14 10:31:45 -04:00
printfrr.h tests: fix build warning 2021-04-29 03:28:04 +03:00
privs.c lib: Add ZCAP_IPC_LOCK 2021-05-11 19:54:40 -04:00
privs.h lib: Add ZCAP_IPC_LOCK 2021-05-11 19:54:40 -04:00
ptm_lib.c *: sprintf -> snprintf 2020-04-20 19:14:33 -04:00
ptm_lib.h
pullwr.c *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
pullwr.h lib, zebra: add missing extern "C" {} blocks to new header files 2020-04-22 23:49:22 -03:00
pw.h ldpd: Relay data plane pseudowire status in LDP notification 2020-06-01 13:21:37 -04:00
qobj.c *: require semicolon after DEFINE_<typesafe...> 2021-03-17 06:18:39 +01:00
qobj.h *: require semicolon after DEFINE_<typesafe...> 2021-03-17 06:18:39 +01:00
queue.h
resolver.c lib: fix c-ares thread misuse 2021-11-08 14:06:21 +01:00
resolver.h lib, zebra: add missing extern "C" {} blocks to new header files 2020-04-22 23:49:22 -03:00
ringbuf.c Revert "lib: add ringbuf socket read function" 2021-04-29 12:12:32 -04:00
ringbuf.h Revert "lib: add ringbuf socket read function" 2021-04-29 12:12:32 -04:00
route_opaque.h lib, ospfd, ospf6d, zebra: add OSPF opaque route attributes 2022-01-15 17:22:27 +01:00
route_types.pl lib: restore blank line after show route header 2021-01-27 12:19:52 +00:00
route_types.txt lib: remove quagga from route_types.txt 2021-07-19 08:43:48 -04:00
routemap_cli.c bgpd: Add an ability to match ipv6 next-hop by access-list 2021-11-23 13:47:26 +02:00
routemap_northbound.c bgpd: Add an ability to match ipv6 next-hop by access-list 2021-11-23 13:47:26 +02:00
routemap.c bgpd: Add an ability to match ipv6 next-hop by access-list 2021-11-23 13:47:26 +02:00
routemap.h bgpd: Add an ability to match ipv6 next-hop by access-list 2021-11-23 13:47:26 +02:00
routing_nb_config.c *: make sure config.h or zebra.h is first 2021-04-23 12:06:35 +02:00
routing_nb.c *: make sure config.h or zebra.h is first 2021-04-23 12:06:35 +02:00
routing_nb.h tests: add grpc unit test 2021-06-06 18:03:17 +00:00
sbuf.c lib: use snprintfrr() in "hidden" printfs 2019-06-12 19:35:43 +02:00
sbuf.h lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
seqlock.c treewide: fix some issues found with -Werror=undef 2020-03-10 16:53:13 +01:00
seqlock.h lib, zebra: add missing extern "C" {} blocks to new header files 2020-04-22 23:49:22 -03:00
sha256.c build: remove deprecated AC_WORDS_BIGENDIAN 2021-04-21 15:42:37 +02:00
sha256.h
sigevent.c *: Convert quagga_signal_X to frr_signal_X 2021-11-11 14:41:27 -05:00
sigevent.h *: Convert quagga_signal_X to frr_signal_X 2021-11-11 14:41:27 -05:00
skiplist.c lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
skiplist.h lib: fix spelling nits in more lib files 2021-10-05 21:42:57 +00:00
smux.h lib, bgpd: add a specific oid_copy function for IPv6 addrs 2021-03-25 15:24:50 +00:00
snmp.c *: use compiler.h MIN/MAX macros instead of everyone having one 2021-11-11 09:39:52 -05:00
sockopt.c lib: finish fixing spelling in lib files 2021-10-22 03:06:16 +00:00
sockopt.h bgpd: Support tcp-mss for bgp neighbors 2021-05-04 06:21:24 +00:00
sockunion.c lib: use in6addr comparator in test 2021-06-23 00:58:04 +08:00
sockunion.h lib: use in6addr comparator in test 2021-06-23 00:58:04 +08:00
spf_backoff.c *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
spf_backoff.h *: use the current project name (FRRouting) 2020-03-25 17:38:56 -04:00
srcdest_table.c lib: put printfrr extension args into struct 2021-03-30 22:32:55 +02:00
srcdest_table.h staticd : Configuration northbound implementation 2020-07-16 08:33:00 -07:00
srte.h lib, zebra: Add SR-TE policy infrastructure to zebra 2020-08-07 11:08:49 +02:00
srv6.c lib: add dtor for srv6 locator chunk list 2021-06-07 09:52:33 -04:00
srv6.h lib,sharpd,zebra: update nexthop object with nh_srv6 2021-06-02 10:24:48 -04:00
stream.c lib: Avoid using assignments within checks 2021-06-29 22:27:49 +03:00
stream.h lib: add new stream function to reorganize buffer 2020-11-24 07:54:07 -03:00
strformat.c lib: add %pSQ and %pSE string escape formats 2021-03-30 22:34:56 +02:00
strlcat.c *: require ISO C11 (or C++11) 2021-03-17 06:18:17 +01:00
strlcpy.c
subdir.am build: fix duplicate yang.c file inclusions 2021-11-11 15:49:40 +01:00
systemd.c lib: fix coverity unused result warning 2021-07-07 14:58:14 +02:00
systemd.h lib, watchfrr: remove HAVE_SYSTEMD, use own code 2021-06-29 17:57:04 +02:00
table.c lib: finish fixing spelling in lib files 2021-10-22 03:06:16 +00:00
table.h lib: remove pure attribute from functions that modify memory 2021-06-18 19:54:40 +03:00
termtable.c *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
termtable.h *: generously apply const 2019-12-02 15:01:29 +01:00
thread.c *: Convert quagga_signal_X to frr_signal_X 2021-11-11 14:41:27 -05:00
thread.h lib: change thread_add_* API 2021-10-20 20:07:15 +03:00
trace.h lib: add trace.h, frrtrace(), support for USDT 2020-10-23 15:13:51 -04:00
typerb.c lib: typesafe *_member() 2021-10-19 14:55:39 +02:00
typerb.h lib: add missing include in typerb.h 2021-11-10 10:39:17 +01:00
typesafe.c lib: avoid include loop with assert.h 2021-11-10 12:36:50 +01:00
typesafe.h lib: avoid include loop with assert.h 2021-11-10 12:36:50 +01:00
vector.c lib: remove vector_get_index() 2021-11-08 14:07:30 +01:00
vector.h lib: remove vector_get_index() 2021-11-08 14:07:30 +01:00
version.h.in build: make builddir include path consistent 2021-04-21 15:42:33 +02:00
vlan.h
vrf_int.h
vrf.c *: cleanup ifp->vrf_id 2021-11-22 20:47:23 +03:00
vrf.h *: cleanup ifp->vrf_id 2021-11-22 20:47:23 +03:00
vty.c Merge pull request #10084 from opensourcerouting/json-sugar 2021-11-18 10:33:52 +02:00
vty.h lib: add vty_json() helper 2021-11-17 16:01:30 +01:00
vxlan.h lib: finish fixing spelling in lib files 2021-10-22 03:06:16 +00:00
wheel.c *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
wheel.h
workqueue.c *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
workqueue.h *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
xref.c lib: stuff xrefs into a tree for lookup 2021-11-10 10:39:17 +01:00
xref.h lib: stuff xrefs into a tree for lookup 2021-11-10 10:39:17 +01:00
yang_translator.c lib: adapt to version 2 of libyang 2021-05-13 16:24:48 -04:00
yang_translator.h
yang_wrappers.c lib: adapt to version 2 of libyang 2021-05-13 16:24:48 -04:00
yang_wrappers.h lib: yang wrapper for getting empty type 2020-08-11 17:06:23 -07:00
yang.c lib: adapt to version 2 of libyang 2021-05-13 16:24:48 -04:00
yang.h lib: finish fixing spelling in lib files 2021-10-22 03:06:16 +00:00
zclient.c *: cleanup ifp->vrf_id 2021-11-22 20:47:23 +03:00
zclient.h lib: rename bfd function to reflect real functionality 2021-11-15 18:16:30 +03:00
zebra.h zebra: Add dplane hook point 2021-10-20 00:56:00 +08:00
zlog_targets.c lib: make a few log symbols accessible 2021-06-18 21:05:21 +02:00
zlog_targets.h lib, zebra: add missing extern "C" {} blocks to new header files 2020-04-22 23:49:22 -03:00
zlog.c lib: add debug uid XXXXX-XXXXX backtrace 2021-11-10 12:36:50 +01:00
zlog.h lib: add debug uid XXXXX-XXXXX backtrace 2021-11-10 12:36:50 +01:00