Go to file
Phil Sutter 34705c807a Really fix get_addr() and get_prefix() error messages
Both functions take the desired address family as a parameter. So using
that to notify the user what address family was expected is correct,
unlike using dst->family which will tell the user only what address
family was specified.

The situation which commit 334af76143 tried to fix was when 'ip'
would accept addresses from multiple families. In that case, the family
parameter is set to AF_UNSPEC so that get_addr_1() may accept any valid
address.

This patch introduces a wrapper around family_name() which returns the
string "any valid" for AF_UNSPEC instead of the three question marks
unsuitable for use in error messages.

Tests for AF_UNSPEC:

| # ip a a 256.10.166.1/24 dev d0
| Error: any valid prefix is expected rather than "256.10.166.1/24".

| # ip neighbor add proxy 2001:db8::g dev d0
| Error: any valid address is expected rather than "2001:db8::g".

Tests for explicit address family:

| # ip -6 addrlabel add prefix 1.1.1.1/24 label 123
| Error: inet6 prefix is expected rather than "1.1.1.1/24".

| # ip -4 addrlabel add prefix dead:beef::1/24 label 123
| Error: inet prefix is expected rather than "dead:beef::1/24".

Reported-by: Jaroslav Aster <jaster@redhat.com>
Fixes: 334af76143 ("fix get_addr() and get_prefix() error messages")
Signed-off-by: Phil Sutter <phil@nwl.cc>
2017-08-03 16:01:03 -07:00
bash-completion tc: bash-completion: Add support for matchall 2017-02-07 11:44:53 -08:00
bridge bridge: Distinguish between externally learned vs offloaded FDBs 2017-06-14 09:50:25 -07:00
devlink devlink: Add option to set and show eswitch encapsulation support 2017-05-30 17:36:52 -07:00
doc iproute2: add support for GRE ignore-df knob 2017-07-20 17:25:54 -07:00
etc/iproute2 whitespace cleanup 2017-01-12 17:31:20 -08:00
examples bpf: support loading map in map from obj 2017-07-18 17:20:45 -07:00
genl Replace malloc && memset by calloc 2016-07-20 12:05:24 -07:00
include update headers from 4.13-rc4 2017-08-03 15:57:26 -07:00
ip ip: change flag names to an array 2017-08-01 08:37:53 -07:00
lib Really fix get_addr() and get_prefix() error messages 2017-08-03 16:01:03 -07:00
man iproute2: add support for GRE ignore-df knob 2017-07-20 17:25:54 -07:00
misc netlink route attribute cleanup 2017-02-24 08:56:38 -08:00
netem remove duplicated #include's 2017-07-18 17:17:15 -07:00
schema bridge: add json schema for bridge fdb show 2016-07-20 12:02:02 -07:00
tc bpf: dump id/jited info for cls/act programs 2017-07-18 17:20:45 -07:00
testsuite testsuite: search for kernel config in /boot 2017-02-17 15:26:30 -08:00
tipc tipc: cleanup style issues 2016-09-20 09:25:42 -07:00
.gitignore testsuite: Generate nlmsg blob at runtime 2017-02-09 17:28:48 -08:00
configure configure: fix elftest when warnings enabled 2016-12-14 19:11:02 -08:00
COPYING Update address of FSF in license 2008-03-08 13:31:03 -08:00
Makefile Makefile: really suppress printing of directories 2016-12-09 12:49:44 -08:00
README README: update mail address and download location 2013-01-18 09:54:58 -08:00
README.decnet Decnet documentation update 2005-06-13 18:47:56 +00:00
README.devel iproute2: fix minor typo in comments 2011-07-11 10:11:09 -07: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

This is a set of utilities for Linux networking.

Information:
    http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2

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

Repository:
    git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git

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

arpd needs to have the db4 development libraries. For Debian
users this is the package with a name like libdb4.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 file which
contains whether or not ATM is available, etc.

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