Go to file
Hangbin Liu fa1e658e84 iplink: fix incorrect any address handling for ip tunnels
After commit d42c7891d2 ("utils: Do not reset family for default, any,
all addresses"), when call get_addr() for any/all addresses, we will set
addr->flags to ADDRTYPE_INET_UNSPEC if family is AF_INET/AF_INET6, which
makes is_addrtype_inet() checking passed and assigns incorrect address
to kernel. The ip link cmd will return error like:

]# ip link add ipip1 type ipip local any remote 1.1.1.1
RTNETLINK answers: Numerical result out of range

Fix it by using is_addrtype_inet_not_unspec() to avoid unspec addresses.

geneve, vxlan are not affected as they use AF_UNSPEC family when call
get_addr()

Reported-by: Jianlin Shi <jishi@redhat.com>
Fixes: d42c7891d2 ("utils: Do not reset family for default, any, all addresses")
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
2018-09-21 11:28:33 -07:00
bash-completion tc: bash-completion: add missing 'classid' keyword 2017-12-12 12:11:37 -08:00
bridge bridge/mdb: fix missing new line when show bridge mdb 2018-09-13 16:02:33 -07:00
devlink devlink: trivial: Make help text consistent 2018-08-16 10:25:01 -07:00
doc/actions doc: drop old ip command documentation 2017-09-29 10:51:02 -07:00
etc/iproute2 iproute2: Add support for a few routing protocols 2018-06-11 11:18:30 -07:00
examples SPDX license identifiers 2017-11-24 12:21:35 -08:00
genl genl: drop extern from function prototypes 2018-08-20 16:01:01 -07:00
include lib: introduce print_nl 2018-09-11 08:29:33 -07:00
ip iplink: fix incorrect any address handling for ip tunnels 2018-09-21 11:28:33 -07:00
lib libnetlink: fix leak and using unused memory on error 2018-09-17 08:58:21 -07:00
man man: Change numtc to num_tc 2018-09-10 11:47:11 -07:00
misc iproute: make clang happy 2018-08-30 07:58:09 -07:00
netem SPDX license identifiers 2017-11-24 12:21:35 -08:00
rdma rdma: Fix representation of PortInfo CapabilityMask 2018-09-17 08:59:13 -07:00
schema bridge: add json schema for bridge fdb show 2016-07-20 12:02:02 -07:00
tc q_cake: Also print nonat, nowash and no-ack-filter keywords 2018-09-14 11:32:46 -07:00
testsuite testsuite: Warn about empty $(IPVERS) 2018-09-21 08:59:52 -07:00
tipc tipc: JSON support for tipc link printouts 2018-06-13 20:45:59 -07:00
.gitignore Remove leftovers from removed Latex documentation 2018-02-13 16:43:19 -08:00
COPYING Update address of FSF in license 2008-03-08 13:31:03 -08:00
Makefile Makefile: add help target 2018-09-21 09:15:26 -07:00
README README: update libdb build dependency information 2018-05-01 19:29:03 -07:00
README.decnet Decnet documentation update 2005-06-13 18:47:56 +00:00
README.devel README: update location of git repositories, remove broken info link 2018-02-13 16:42:51 -08:00
README.distribution README cleanup's 2012-01-03 15:04:55 -08:00
README.iproute2+tc tc, bpf: finalize eBPF support for cls and act front-end 2015-04-10 13:31:19 -07:00
README.lnstat Rename: misc/README.lnstat -> README.lnstat 2004-10-19 20:24:47 +00:00
configure Drop capabilities if not running ip exec vrf with libcap 2018-03-27 11:48:23 -07:00

README

This is a set of utilities for Linux networking.

Information:
    https://wiki.linuxfoundation.org/networking/iproute2

Download:
    http://www.kernel.org/pub/linux/utils/net/iproute2/

Stable version repository:
    git://git.kernel.org/pub/scm/network/iproute2/iproute2.git

Development repository:
    git://git.kernel.org/pub/scm/network/iproute2/iproute2-next.git

How to compile this.
--------------------
1. libdbm

arpd needs to have the berkeleydb development libraries. For Debian
users this is the package with a name like libdbX.X-dev.
DBM_INCLUDE points to the directory with db_185.h which
is the include file used by arpd to get to the old format Berkeley
database routines.  Often this is in the db-devel package.

2. make

The makefile will automatically build a config.mk file which
contains definitions of libraries that may or may not be available
on the system such as: ATM, ELF, MNL, and SELINUX.

3. To make documentation, cd to doc/ directory , then
   look at start of Makefile and set correct values for
   PAGESIZE=a4		, ie: a4 , letter ...	(string)
   PAGESPERPAGE=2	, ie: 1 , 2 ...		(numeric)
   and make there. It assumes, that latex, dvips and psnup
   are in your path.

4. This package includes matching sanitized kernel headers because
   the build environment may not have up to date versions. See Makefile
   if you have special requirements and need to point at different
   kernel include files.

Stephen Hemminger
stephen@networkplumber.org

Alexey Kuznetsov
kuznet@ms2.inr.ac.ru