Commit Graph

10 Commits

Author SHA1 Message Date
Taku Fukushima 8bf4a3aacd Add advanced u32 match feature support
This patch adds the advanced u32 match feature support with the
selection keys. It enables the users to crate a complex filter as follow
for instance:

  $ tc filter add dev eth0 parent 1: prio 1 u32 match ip dport 80 0xff \
                match u32 0x146ca 0xffff at 32 flowid 1:46cb

To expose TcU32Sel and TcU32Key defined in nl package, this patch copies
them to filte.go and their values that require Big-endianness are
handled appropriately in FilterAdd function in filter_linux.go.

Signed-off-by: Taku Fukushima <taku@soracom.jp>
2017-04-07 11:03:16 -07:00
Alexander Morozov 63381f39fc filter: fix recursive string call (#162)
Signed-off-by: Alexander Morozov <lk4d4math@gmail.com>
2016-08-25 11:08:35 -07:00
Vish Ishaya 0bc457d244 fix darwin build by moving code (#138)
Fixes issue #135
2016-06-15 08:44:14 -07:00
Vish Ishaya 7995ff5647 add generic actions and simplify action type (#129) 2016-05-31 13:03:47 -07:00
Vishvananda Ishaya adb0f53af6 Cleanup from golint and go vet 2016-03-19 17:12:26 -07:00
Brenden Blanco 17b1e35dbc Add clsact and bpf filter support
New in kernel 4.5 is a type of qdisc for lightweight (no qdisc lock)
ingress/egress parsing, called clsact. Add support for such a qdisc
type.

One primary consumer of clsact is the bpf filter, add support for that
as well.
2016-02-28 23:20:29 -08:00
Brenden Blanco 6f0327edfd Add BPF TcAction support to U32 filter
Current U32 filter only supports redirect action, but the U32 can
support a lot more. Refactor a bit the action generating/parsing logic
to be more generic and add BPF action support.

When creating a U32 filter, one can supply an array of Actions, which
will be executed by the U32 filter in order:
* The new MirredAction implements the same functionality as RedirIndex
  field in the U32 filter, with that static field kept in the struct for
  backwards compatibility.
* A new BpfAction type is added which allows a program with an open bpf
  file descriptor (implementation is out of scope of this patch) to be
  added as well.

Add a test for the above use case which includes one of each type of
action.
2016-02-28 23:12:34 -08:00
chantra b1536bf12c Address comments
* fix package import order
* use int instead of int32 for Filter FW Attrs
2015-10-04 22:34:06 -07:00
chantra 824d7a16e5 Add FW filter support 2015-09-18 18:51:33 -07:00
Vishvananda Ishaya acc8a28738 Add basic support for redirect filter 2015-08-19 16:02:04 -07:00