Commit Graph

4074 Commits

Author SHA1 Message Date
Herbert Xu fc2d02069b Add NAT action
Here's a patch to add support for the nat action which is now
in the kernel.

Thanks,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-12-11 09:33:55 -08:00
Stephen Hemminger 7ca30b789d rlim qdisc support
Add support for new rate limit qdisc

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-12-10 13:10:20 -08:00
Stephen Hemminger 037c635eee Fix off by one in nested attribute management.
Fixes segv in:
  tc qdisc show dev eth1
due to uninitialized attribute table.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-12-10 11:34:40 -08:00
Stephen Hemminger be8d89d3bf Fix breakage from netfilter/ip_tables header change.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-12-10 09:45:39 -08:00
Stephen Hemminger ece02ea0a3 Fix breakage from netfilter/ip_tables header change.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-12-10 09:40:45 -08:00
Stephen Hemminger 70e6e38aad Merge header file changes from net-2.6.25
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-12-10 09:36:07 -08:00
Stephen Hemminger 5472ac6f9f 2.6.24-rc3 headers
Resync santized headers with 2.6.24-rc3

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-11-29 13:56:15 -08:00
Patrick McHardy 66e529f579 iproute 2.6.23 incompatibility
Arkadiusz Miskiewicz wrote:
> People are reporting that
>> ip link set multicast on dev eth0 (Invalid argument)
>> no longer works when using iproute 2.6.23 on kernel 2.6.21.
>>
>> On my testing machine it also fails:
>> # ./ip link set eth0 multicast on
>> RTNETLINK answers: Invalid argument

It seems it fails to properly detect that your kernel is missing
RTM_NEWLINK support. Apparently the reason is that the kernels
I tested with return a different error in this situation.


Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-25 19:09:08 -07:00
Herbert Xu 4282c6c52b Fix typo in tunnel code (o_key vs. i_key).
If a dotted quad ikey is specified for GRE tunnels, it gets set as the
okey instead.  This patch fixes it. (http://bugs.debian.org/200714)

Signed-off-by: Andreas Henriksson <andreas@fatal.se>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-17 10:04:53 -07:00
Andreas Henriksson d21e88354b Fix corruption when using batch files with comments and broken lines.
The problem was that length of allocation changed but caller not told.

Anyway, the patch fixes a problem resulting in a double free
that occurs when using batch files that contains a special combination
of broken up lines and comments as reported in:
http://bugs.debian.org/398912

Thanks to Michal Pokrywka <mpokrywka@hoga.pl> for testcase and information
on which conditions problem could be reproduced under.

Signed-off-by: Andreas Henriksson <andreas@fatal.se>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-17 10:02:33 -07:00
Andreas Barth 59a3ffb004 Remove bogus reference to tc-filters(8) from tc(8) manpage.
Spotted by Aleš Kozumplík <al_es@seznam.cz>
(http://bugs.debian.org/289225)

Signed-off-by: Andreas Henriksson <andreas@fatal.se>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-17 10:00:04 -07:00
Alexander Wirt 576c63ee59 Add parameters to usage help text.
Add src option to route help text (http://bugs.debian.org/226142).
Add prio option to rule prio help text (http://bugs.debian.org/213673).

Signed-off-by: Andreas Henriksson <andreas@fatal.se>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-17 09:58:11 -07:00
Alexander Wirt b096fa5f3b Fix various typos and nitpicks
Fix typo in ss manpage.
Make the backslash visible in ip manpage (http://bugs.debian.org/285507).
Strict syntax for ip addr advice in error message.
Fix typo in libnetlink(3) manpage (writen -> written).
Fix typos in tc-prio(8) manpage.
Fix typo in tc-htb(8) manpage (mininum -> minimum).
Fix typo in tc-cbq-details(8) manpage (occured -> occurred).

Signed-off-by: Andreas Henriksson <andreas@fatal.se>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-17 09:56:11 -07:00
Stephen Hemminger 45305c2470 add q_rr to tc Makefile
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-16 14:27:42 -07:00
Stephen Hemminger efc0501501 Update snapshot for release
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-16 14:26:51 -07:00
Andreas Henriksson 64e2ad593b Also do tc_core_time2big argument (long->unsigned).
tc_core_time2big only used in tc/q_netem.c where it gets passed an unsigned.

Signed-off-by: Andreas Henriksson <andreas@fatal.se>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-12 16:06:22 -07:00
Andreas Henriksson 57a800d45a Switch helpers tc_core_{time2ktime,ktime2time} from long to unsigned as well.
Follow up patch to "Fix overflow in time2tick / tick2time." which switches
the remaining two helper functions from long to unsigned as well.
These functions are only used in "tc/q_hfsc.c" where both the passed argument
and the place the return value is stored are unsigned/u32 variables, so this
change should be safe to make but hasn't been tested as extensively as the
time2tick patch.

Signed-off-by: Andreas Henriksson <andreas@fatal.se>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-12 16:06:21 -07:00
Patrick McHardy ca78b0e7d4 Prevent renaming interfaces to empty string.
Andreas Henriksson wrote:
> From: Alexander Wirt <formorer@debian.org>
>
>
> Signed-off-by: Andreas Henriksson <andreas@fatal.se>
> ---
>  ip/iplink.c |    4 ++++
>  1 files changed, 4 insertions(+), 0 deletions(-)
>
> diff --git a/ip/iplink.c b/ip/iplink.c
> index 4060845..da1f64e 100644
> --- a/ip/iplink.c
> +++ b/ip/iplink.c
> @@ -670,6 +670,10 @@ static int do_set(int argc, char **argv)
>  	}
>
>  	if (newname && strcmp(dev, newname)) {
> +		if (strlen(newname) == 0) {
> +		    printf("\"\" is not valid device identifier\n");
> +		    return -1;
> +		}

Indentation fixed, same change for the non-ioctl case, use invarg.
While I'm at it I also fixed the error message for "name too long",
*argv is NULL at this point.

Signed-off-by: Patrick McHardy <kaber@trash.net>
2007-10-12 15:45:12 -07:00
Stephen Hemminger 5058332f3c Revert "don't allow "" for device name"
Use Patrick's instead

This reverts commit ba371d9890.
2007-10-12 15:44:44 -07:00
Stephen Hemminger 59cc4f73f2 Revert "Remove bogus reference to tc-filters(8) from tc(8) manpage."
This reverts commit 1bacc7ce75.
2007-10-12 15:44:07 -07:00
Alexander Wirt fd3877feed Drop bogus reference to tc-filters and add lartc.org link to manpage.
Signed-off-by: Andreas Henriksson <andreas@fatal.se>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-12 14:56:37 -07:00
Andreas Henriksson 4475984498 Fix overflow in time2tick / tick2time.
The helper functions gets passed an unsigned int, which gets cast to long
and overflows. See http://bugs.debian.org/175462

Signed-off-by: Andreas Henriksson <andreas@fatal.se>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-12 14:56:35 -07:00
Andreas Henriksson f7c3cefc9c Add new rtacct/nstat manpages and additional symlinks.
Symlink rtstat(8) and ctstat(8) to lnstat(8).
Add rtacct/nstat manpage based on doc/nstat.sgml as rtacct(8).
Symlink nstat(8) to rtacct(8).
Add arpd(8) symlink based on doc/arpd.sgml.

Signed-off-by: Andreas Henriksson <andreas@fatal.se>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-12 14:56:33 -07:00
Lionel Elie Mamane bc45ded42c Fix ematch cmp and nbyte syntax help text.
The help/usage screen of ematch cmp and nbyte say recognised symbolic
values for "layer FOO" are link, header and next-header, but the code
does _not_ implement that: it will recognise "next-header" as what is
supposed to be "header" and will not recognise "header". The right
symbolic values seem to be link, network, transport. Here is a patch
that changes the help/usage screen to match the code.
(http://bugs.debian.org/438653)

Signed-off-by: Andreas Henriksson <andreas@fatal.se>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-12 14:56:31 -07:00
Andreas Barth 1bacc7ce75 Remove bogus reference to tc-filters(8) from tc(8) manpage.
Spotted by Aleš Kozumplík <al_es@seznam.cz>
(http://bugs.debian.org/289225)

Signed-off-by: Andreas Henriksson <andreas@fatal.se>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-12 14:55:42 -07:00
Stephen Hemminger ba371d9890 don't allow "" for device name
If a zero-length string is given, it is not rejected by
netlink in kernel so catch it at command line.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-12 14:43:03 -07:00
Stephen Hemminger 550967eecf remove support for IP multipath
IP multipath routing was so buggy that it was dropped from the
current kernel.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-12 14:38:30 -07:00
Stephen Hemminger 88de3e0fec remove outdated netbug script.
Haven't received a bug from this script in years.
And it has several race conditions, etc.

See http://bugs.debian.org/289541, http://bugs.debian.org/313540,
http://bugs.debian.org/313541, and http://bugs.debian.org/313544.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-12 13:50:43 -07:00
YOSHIFUJI Hideaki / 吉藤英明 0b959b0f4d IPROUTE2: Support IPv4/IPv6 Tunnel
Based on patch from Yasuyuki KOZAKAI <yasuyuki.kozakai@toshiba.co.jp>.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-12 13:12:37 -07:00
Rick Jones 54e0b2e71d rto support for ip command
Enable users of ip to specify the times for rtt, rttvar and rto_min
in human-friendly terms a la "tc" while maintaining backwards
compatability with the previous "raw" mechanism.  Builds upon
David Miller's uncommited patch to set rto_min.

Signed-off-by: Rick Jones <rick.jones2@hp.com>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-11 13:04:11 -07:00
Stephen Hemminger e32d4db0a5 don't make veth a shared library
Making veth a shared library for ip caused build problems (not PIC)
and is unneeded.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-11 13:01:42 -07:00
Stephen Hemminger 7b40f0f2e1 Merge 192.168.0.5:src/iproute2 2007-10-11 12:43:27 -07:00
Eric Dumazet f50332c57a lnstat : force a flush before sleep
Hi Stephen

This small patch allows to use lnstat/rtstat with a pipe output, without a full bufferisation.

Thank you
Eric

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-11 12:40:15 -07:00
Stephen Hemminger 13010712c5 2.6.23 kernel headers
Update headers to sanitized versions of 2.6.23 final

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-10-11 12:39:12 -07:00
Stephen Hemminger dfd26e1c4c Update kernel headers to 2.6.23-rc5
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-09-05 13:05:21 +01:00
Masahide NAKAMURA efe69c1b72 ip: xfrm: Fix flush message.
Fix xfrm state or policy flush message.
And minor updates are included:
o Use static buffer to show unknown value as string.
o Show policy type (ptype) only when kernel specified it.
o Clean-up xfrm_monitor.

Signed-off-by: Masahide NAKAMURA <nakam@linux-ipv6.org>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-09-05 12:56:51 +01:00
Masahide NAKAMURA c1fa225324 ip: xfrm: Fix policy and state flags.
o Support policy flag with string format.
  Note that kernel defines only one name "localok" for the flag
  and it has not had any effect currently.
o Support state flag value XFRM_STATE_NOPMTUDISC.
o Fix to show detailed flags value when "-s" option is used.
o Fix minor typo.

Signed-off-by: Masahide NAKAMURA <nakam@linux-ipv6.org>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-09-05 12:56:32 +01:00
Masahide NAKAMURA ed01e39068 ip: xfrm: Clean-up for internal mask to filter.
Remove unused or redundant usage for xfrm_filter.

Signed-off-by: Masahide NAKAMURA <nakam@linux-ipv6.org>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-09-05 12:56:17 +01:00
Pavel Emelianov 2da55b1bbe Module for ip utility to support veth device (v.2.1)
The usage is
# ip link add [name] type veth [peer <name>] [mac <mac>] [peer_mac <mac>]

This version doesn't include the fix for ip/iplink.c as Patrick
said that he had included it into his patches already.

Signed-off-by: Pavel Emelianov <xemul@openvz.org>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-09-05 12:04:16 +01:00
Patrick McHardy 5c302d518f vlan support
This is a resend of the iproute VLAN patch with the if_link.h changes
edited out since the headers are already synced.

[IPROUTE]: VLAN support

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-09-05 12:03:46 +01:00
Stephen Hemminger 03b26ef4e8 Fix modes of test files
Signed-off-by: Jesper Dangaard Brouer <hawk@comx.dk>
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-09-05 12:00:01 +01:00
Stephen Hemminger 147da5de66 Revert "Make ip utility veth driver aware"
This reverts commit 4ed390ce43.
Newer version doesn't use genetlink.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-09-05 11:51:10 +01:00
Sridhar Samudrala 9ab4c85b9a Fix bug in display of ipv6 cloned/cached routes
This patch fixes a bug in the 'ip' command to display
IPv6 cloned routes.
  ip -6 route ls cache
returns empty even when there are cloned routes because of
of a missing else in print_route() routine.

Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
2007-08-22 10:55:47 -07:00
Patrick McHardy 6140785236 Fix meta ematch usage of 0 values
em_meta doesn't send 0 values to the kernel. breaking matching on them and
resulting in "Missing value TLV" messages on dump.

Signed-off-by: Patrick McHardy <kaber@trash.net>
2007-08-22 10:52:13 -07:00
Patrick McHardy 1d93483985 iplink: use netlink for link configuration
Add support for using netlink for link configuration. Kernel-support is
probed, when not available it falls back to using ioctls.

Signed-off-by: Patrick McHardy <kaber@trash.net>
2007-08-22 10:49:01 -07:00
Stephen Hemminger f7cd9b0354 Fix m_ipt build
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-08-22 10:33:33 -07:00
Pavel Emelianov 4ed390ce43 Make ip utility veth driver aware
The new command is called "veth" with the following syntax:
* ip veth add <dev1> <dev2>
  creates interconnected pair of veth devices.
* ip veth del <dev>
  destroys the pair of veth devices, where <dev> is either
  <dev1> or <dev2> used to create the pair.

One question that is to be solved is whether or not to create
a hard-coded netlink family for veth driver. Without it the
family resolution code has to be moved to general place in ip
utility (by now it is copy-paste-ed from one file to another
till final decision).

Signed-off-by: Pavel Emelianov <xemul@openvz.org>
2007-08-22 10:29:14 -07:00
Patrick McHardy ad1a12dbd0 Use FRA_* attributes for routing rules
Use the FRA attributes for routing rules, with exception of RTA_GATEWAY
(used for route-NAT) which isn't supported by current kernels anymore
and thus doesn't exist as FRA attribute.

Signed-off-by: Patrick McHardy <kaber@trash.net>
2007-08-22 10:26:12 -07:00
Stephen Hemminger a6ffa8b00d sanitized headers update to 2.6.23-rc3
Update headers

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2007-08-22 10:19:53 -07:00
PJ Waskiewicz 292ce96bca iproute2: sch_rr support in tc
This patch applies on top of Patrick McHardy's RTNETLINK
patches to add nested compat attributes.  This is needed to maintain
ABI for sch_{rr|prio} in the kernel with respect to tc.  A new option,
namely multiqueue, was added to sch_prio and sch_rr.  This will allow
a user to turn multiqueue support on for sch_prio or sch_rr at loadtime.
Also, tc qdisc ls will display whether or not multiqueue is enabled on
that qdisc.  When in multiqueue mode, a user can specify a value of 0 for
bands, and the number of bands will be created to match the number of
queues on the device.

This patch is to support the new sch_rr (round-robin) qdisc being proposed
in NET for multiqueue network device support in the Linux network stack.
It uses q_prio.c as the template, since the qdiscs are nearly identical,
outside of the ->dequeue() routine.

Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
2007-08-22 10:04:25 -07:00