Go to file
shemminger 6d4662d4f7 From: Pablo Neira
Hi jamal,

I found some spare time to play around a bit more with you ipt action stuff.

I've tested the patch attached with the testcase here below. It works
fine here. It fixes broken target option checkings (final_check) and a
leak in the merge_options function. I've killed copy_options since I
didn't find any reason why we need it.

--- test.sh ---
tc qdisc del dev wlan0 ingress
tc qdisc add dev wlan0 ingress
tc filter add dev wlan0 parent ffff: protocol ip prio 6 u32 \
match ip src 192.168.0.2/32 flowid 1:16 \
action ipt -j TOS --set-tos Maximize-Reliability
sleep 3
tc -s filter ls dev wlan0 parent ffff:
--- end of test.sh ---

Results:

tablename: mangle hook: NF_IP_PRE_ROUTING
         target: TOS set Maximize-Reliability  index 0
filter protocol ip pref 6 u32
filter protocol ip pref 6 u32 fh 800: ht divisor 1
filter protocol ip pref 6 u32 fh 800::800 order 2048 key ht 800 bkt 0
flowid 1:16
   match c0a80002/ffffffff at 12
         action order 1: tablename: mangle  hook: NF_IP_PRE_ROUTING
         target TOS set Maximize-Reliability
         index 18 ref 1 bind 1 installed 3 sec used 0 sec
         Action statistics:
         Sent 725 bytes 7 pkt (dropped 0, overlimits 0 requeues 0)
         rate 0bit 0pps backlog 0b 0p requeues 0

Now, check if options passed to the target are correct.

# tc filter add dev wlan0 parent ffff: protocol ip prio 6 u32 \
match ip dst 192.168.0.2/32 flowid 1:16 \
action ipt -j TOS --set-tos
                             ^^^
                         missing parameter

ipt: option `--set-tos' requires an argument
tc-ipt v0.1: TOS target: Parameter --set-tos is required
Try `tc-ipt -h' or 'tc-ipt --help' for more information.

btw, how's your schedule ? did you finally get spare time to come to the
netfilter workshop in seville ?

bye,
Pablo
2005-06-23 17:36:38 +00:00
doc Don't run doc files N-up (from fedora core 3) 2005-03-10 19:01:36 +00:00
etc/iproute2 Add etc/iproute2/ematch_map 2005-06-23 17:22:43 +00:00
examples (Logical change 1.3) 2004-04-15 20:56:59 +00:00
include IPv4 multipath algorithm selection support 2005-06-23 17:31:27 +00:00
ip IPv4 multipath algorithm selection support 2005-06-23 17:31:27 +00:00
lib Device indices are unsigned and use if_nametoindex as fallback 2005-06-07 22:15:48 +00:00
man Import patch iproute2.114 2005-01-17 23:27:37 +00:00
misc Netem support for reorder 2005-06-22 18:27:49 +00:00
netem Switch to stack (rather than calloc) for tables. 2005-03-30 18:11:49 +00:00
tc From: Pablo Neira 2005-06-23 17:36:38 +00:00
testsuite Import patch iproute2.112 2005-01-17 23:27:05 +00:00
COPYING (Logical change 1.71) 2004-08-23 20:21:21 +00:00
ChangeLog From: Pablo Neira 2005-06-23 17:36:38 +00:00
ChangeSet Initial revision 2004-04-15 20:53:01 +00:00
Makefile Add cscope target to Makefile 2005-06-23 17:31:49 +00:00
README Update README with current info. 2004-06-28 20:37:23 +00:00
README.decnet Decnet documentation update 2005-06-13 18:47:56 +00:00
README.distribution Rename: tc/README.distribution -> README.distribution 2004-08-23 20:21:21 +00:00
README.iproute2+tc (Logical change 1.3) 2004-04-15 20:56:59 +00:00
README.lnstat Rename: misc/README.lnstat -> README.lnstat 2004-10-19 20:24:47 +00:00
RELNOTES (Logical change 1.3) 2004-04-15 20:56:59 +00:00
configure Import patch iproute2.111 2005-01-17 23:26:46 +00:00

README

Primary site is:
	http://developer.osdl.org/dev/iproute2

Original FTP site is:
	ftp://ftp.inr.ac.ru/ip-routing/

How to compile this.
--------------------
1. Look at start of Makefile and set correct values for:

KERNEL_INCLUDE should point to correct linux kernel include directory.
Default (/usr/src/linux/include) is right as rule.

DBM_INCLUDE points to the directory with db_185.h which
is the include file used by arpd to get to the old format Berkely
database routines.  Often this is in the db-devel package.

2. make

The makefile will automatically build a file Config 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.

Stephen Hemminger
shemminger@osdl.org

Alexey Kuznetsov
kuznet@ms2.inr.ac.ru