iproute2/lib
Hangbin Liu 503e9229b0 iproute2: add check_libbpf() and get_libbpf_version()
This patch aim to add basic checking functions for later iproute2
libbpf support.

First we add check_libbpf() in configure to see if we have bpf library
support. By default the system libbpf will be used, but static linking
against a custom libbpf version can be achieved by passing libbpf DESTDIR
to variable LIBBPF_DIR for configure.

Another variable LIBBPF_FORCE is used to control whether to build iproute2
with libbpf. If set to on, then force to build with libbpf and exit if
not available. If set to off, then force to not build with libbpf.

When dynamically linking against libbpf, we can't be sure that the
version we discovered at compile time is actually the one we are
using at runtime. This can lead to hard-to-debug errors. So we add
a new file lib/bpf_glue.c and a helper function get_libbpf_version()
to get correct libbpf version at runtime.

Signed-off-by: Hangbin Liu <haliu@redhat.com>
Signed-off-by: David Ahern <dsahern@gmail.com>
2020-11-24 22:14:02 -07:00
..
Makefile iproute2: add check_libbpf() and get_libbpf_version() 2020-11-24 22:14:02 -07:00
bpf.c bpf: Fixes a snprintf truncation warning 2020-05-27 15:05:25 -07:00
bpf_glue.c iproute2: add check_libbpf() and get_libbpf_version() 2020-11-24 22:14:02 -07:00
cg_map.c lib: ignore invalid mounts in cg_init_map 2020-10-11 23:02:35 -07:00
color.c lib/color: make local functions static 2018-11-19 11:42:44 -08:00
coverity_model.c scrub out whitespace issues 2016-03-27 10:50:14 -07:00
exec.c netns: switch netns in the child when executing commands 2019-06-20 14:30:41 -07:00
fs.c lib: fix checking of returned file handle size for cgroup 2020-07-06 11:05:54 -07:00
inet_proto.c ip: add a new parameter -Numeric 2019-06-18 08:37:47 -07:00
json_print.c lib: json_print: Add print_on_off() 2020-11-13 19:43:15 -07:00
json_writer.c json: fix backslash escape typo in jsonw_puts 2019-07-19 10:48:38 -07:00
libgenl.c SPDX license identifiers 2017-11-24 12:21:35 -08:00
libnetlink.c libnetlink: define __aligned conditionally 2020-10-28 10:24:02 -07:00
ll_addr.c lib/ll_addr: whitespace and indent cleanup 2018-11-19 11:42:44 -08:00
ll_map.c ip: allow to use alternative names as handle 2019-10-28 07:35:29 -07:00
ll_proto.c m_mpls: add mac_push action 2020-10-20 08:57:08 -06:00
ll_types.c ip: add a new parameter -Numeric 2019-06-18 08:37:47 -07:00
mnl_utils.c lib: Extract from devlink/mnlg a helper, mnlu_socket_recv_run() 2020-11-13 19:43:15 -07:00
mpls_ntop.c SPDX license identifiers 2017-11-24 12:21:35 -08:00
mpls_pton.c SPDX license identifiers 2017-11-24 12:21:35 -08:00
names.c tc: drop unused name_to_id function 2018-11-19 11:42:44 -08:00
namespace.c netns: make netns_{save,restore} static 2019-06-20 14:30:41 -07:00
rt_names.c iplink: add support for protodown reason 2020-09-01 19:52:13 -06:00
utils.c lib: parse_mapping: Recognize a keyword "all" 2020-11-13 19:43:15 -07:00