# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) | |
name: fou | |
protocol: genetlink-legacy | |
doc: | | |
Foo-over-UDP. | |
c-family-name: fou-genl-name | |
c-version-name: fou-genl-version | |
max-by-define: true | |
kernel-policy: global | |
definitions: | |
- | |
type: enum | |
name: encap_type | |
name-prefix: fou-encap- | |
enum-name: | |
entries: [ unspec, direct, gue ] | |
attribute-sets: | |
- | |
name: fou | |
name-prefix: fou-attr- | |
attributes: | |
- | |
name: unspec | |
type: unused | |
value: 0 | |
- | |
name: port | |
type: u16 | |
byte-order: big-endian | |
- | |
name: af | |
type: u8 | |
- | |
name: ipproto | |
type: u8 | |
- | |
name: type | |
type: u8 | |
- | |
name: remcsum_nopartial | |
type: flag | |
- | |
name: local_v4 | |
type: u32 | |
- | |
name: local_v6 | |
type: binary | |
checks: | |
min-len: 16 | |
- | |
name: peer_v4 | |
type: u32 | |
- | |
name: peer_v6 | |
type: binary | |
checks: | |
min-len: 16 | |
- | |
name: peer_port | |
type: u16 | |
byte-order: big-endian | |
- | |
name: ifindex | |
type: s32 | |
operations: | |
list: | |
- | |
name: unspec | |
doc: unused | |
value: 0 | |
- | |
name: add | |
doc: Add port. | |
attribute-set: fou | |
dont-validate: [ strict, dump ] | |
flags: [ admin-perm ] | |
do: | |
request: &all_attrs | |
attributes: | |
- port | |
- ipproto | |
- type | |
- remcsum_nopartial | |
- local_v4 | |
- peer_v4 | |
- local_v6 | |
- peer_v6 | |
- peer_port | |
- ifindex | |
- | |
name: del | |
doc: Delete port. | |
attribute-set: fou | |
dont-validate: [ strict, dump ] | |
flags: [ admin-perm ] | |
do: | |
request: &select_attrs | |
attributes: | |
- af | |
- ifindex | |
- port | |
- peer_port | |
- local_v4 | |
- peer_v4 | |
- local_v6 | |
- peer_v6 | |
- | |
name: get | |
doc: Get tunnel info. | |
attribute-set: fou | |
dont-validate: [ strict, dump ] | |
do: | |
request: *select_attrs | |
reply: *all_attrs | |
dump: | |
reply: *all_attrs |