Go to file
Simon Horman b75e0f6f4b tc actions: store and dump correct length of user cookies
Correct two errors which cancel each other out:
* Do not send twice the length of the actual provided by the user to the kernel
* Do not dump half the length of the cookie provided by the kernel

As the cookie is now stored in the kernel at its correct length rather
than double the that length cookies of up to the maximum size of 16 bytes
may now be stored rather than a maximum of half that length.

Output of dump is the same before and after this change,
but the data stored in the kernel is now exactly the cookie
rather than the cookie + as many trailing zeros.

Before:
 # tc filter add dev eth0 protocol ip parent ffff: \
       flower ip_proto udp action drop \
       cookie 0123456789abcdef0123456789abcdef
 RTNETLINK answers: Invalid argument

After:
 # tc filter add dev eth0 protocol ip parent ffff: \
       flower ip_proto udp action drop \
       cookie 0123456789abcdef0123456789abcdef
 # tc filter show dev eth0 ingress
   eth_type ipv4
   ip_proto udp
   not_in_hw
	 action order 1: gact action drop
	  random type none pass val 0
	  index 1 ref 1 bind 1 installed 1 sec used 1 sec
	 Action statistics:
	 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
	 backlog 0b 0p requeues 0
	 cookie len 16 0123456789abcdef0123456789abcdef

Fixes: fd8b3d2c1b ("actions: Add support for user cookies")
Cc: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: Simon Horman <simon.horman@netronome.com>
2017-09-05 09:25:46 -07:00
bash-completion tc: bash-completion: Add support for matchall 2017-02-07 11:44:53 -08:00
bridge change how Config is used in Makefile's 2017-08-09 09:10:52 -07:00
devlink devlink: Check return code of strslashrsplit() 2017-08-21 17:28:03 -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 examples: Some shell fixes to cbq.init 2017-08-18 09:11:00 -07:00
genl Convert harmful calls to strncpy() to strlcpy() 2017-09-01 12:10:54 -07:00
include utils: Implement strlcpy() and strlcat() 2017-09-01 12:10:54 -07:00
ip iplink: double the buffer size also in iplink_get() 2017-09-01 14:15:00 -07:00
lib lib/bpf: Fix bytecode-file parsing 2017-09-04 12:06:50 -07:00
man ss: fix help/man TCP-STATE description for listening 2017-08-24 11:01:34 -07:00
misc lnstat_util: Make sure buffer is NUL-terminated 2017-09-01 12:10:54 -07:00
netem netem/maketable: Check return value of fscanf() 2017-08-24 15:22:10 -07:00
rdma rdma: fix duplicate initialization in port_names 2017-08-24 15:02:16 -07:00
schema bridge: add json schema for bridge fdb show 2016-07-20 12:02:02 -07:00
tc tc actions: store and dump correct length of user cookies 2017-09-05 09:25:46 -07:00
testsuite testsuite: search for kernel config in /boot 2017-02-17 15:26:30 -08:00
tipc tipc/bearer: Prevent NULL pointer dereference 2017-08-24 14:49:44 -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 rdma: Add basic infrastructure for RDMA tool 2017-08-21 17:07:44 -07: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