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
|
||
|---|---|---|
| doc | ||
| etc/iproute2 | ||
| examples | ||
| include | ||
| ip | ||
| lib | ||
| man | ||
| misc | ||
| netem | ||
| tc | ||
| testsuite | ||
| COPYING | ||
| ChangeLog | ||
| ChangeSet | ||
| Makefile | ||
| README | ||
| README.decnet | ||
| README.distribution | ||
| README.iproute2+tc | ||
| README.lnstat | ||
| RELNOTES | ||
| configure | ||
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