Go to file
Michal Kubeček 6ec14f1abb routel: fix infinite loop in line parser
As noticed by one of the few users of routel script, it ends up in an
infinite loop when they pull out the cable from the NIC used for some
route. This is caused by its parser expecting the line of "ip route show"
output consists of "key value" pairs (except for the initial target range),
together with an old trap of Bourne style shells that "shift 2" does
nothing if there is only one argument left. Some keywords, e.g. "linkdown",
are not followed by a value.

Improve the parser to

  (1) only set variables for keywords we care about
  (2) recognize (currently) known keywords without value

This is still far from perfect (and certainly not future proof) but to
fully fix the script, one would probably have to rewrite the logic
completely (and I'm not sure it's worth the effort).

Signed-off-by: Michal Kubecek <mkubecek@suse.cz>
2017-04-27 16:42:29 -07:00
bash-completion tc: bash-completion: Add support for matchall 2017-02-07 11:44:53 -08:00
bridge bridge: fdb: add state filter support 2017-01-12 17:38:55 -08:00
devlink devlink: Add json and pretty options to help and man 2017-03-08 17:59:01 -08:00
doc doc/tc-filters.tex: Drop overly subjective paragraphs 2016-03-27 10:34:40 -07:00
etc/iproute2 whitespace cleanup 2017-01-12 17:31:20 -08:00
examples tc, bpf: add support for map pre/allocation 2016-04-11 21:54:47 +00:00
genl Replace malloc && memset by calloc 2016-07-20 12:05:24 -07:00
include ip vrf: Add command name next to pid 2017-04-16 10:06:33 -07:00
ip routel: fix infinite loop in line parser 2017-04-27 16:42:29 -07:00
lib ip vrf: Add command name next to pid 2017-04-16 10:06:33 -07:00
man man: ip-rule.8: Further clarify how to interpret priority value 2017-04-24 11:43:09 -07:00
misc netlink route attribute cleanup 2017-02-24 08:56:38 -08:00
netem netem: fix out of bounds access in maketable 2017-04-12 10:13:14 -07:00
schema bridge: add json schema for bridge fdb show 2016-07-20 12:02:02 -07:00
tc actions: Add support for user cookies 2017-04-23 09:10:02 -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
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
configure configure: fix elftest when warnings enabled 2016-12-14 19:11:02 -08:00

README

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