1# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) 2 3name: fou 4 5protocol: genetlink-legacy 6 7doc: | 8 Foo-over-UDP. 9 10c-family-name: fou-genl-name 11c-version-name: fou-genl-version 12max-by-define: true 13kernel-policy: global 14 15definitions: 16 - 17 type: enum 18 name: encap_type 19 name-prefix: fou-encap- 20 enum-name: 21 entries: [ unspec, direct, gue ] 22 23attribute-sets: 24 - 25 name: fou 26 name-prefix: fou-attr- 27 attributes: 28 - 29 name: unspec 30 type: unused 31 value: 0 32 - 33 name: port 34 type: u16 35 byte-order: big-endian 36 - 37 name: af 38 type: u8 39 - 40 name: ipproto 41 type: u8 42 - 43 name: type 44 type: u8 45 - 46 name: remcsum_nopartial 47 type: flag 48 - 49 name: local_v4 50 type: u32 51 - 52 name: local_v6 53 type: binary 54 checks: 55 min-len: 16 56 - 57 name: peer_v4 58 type: u32 59 - 60 name: peer_v6 61 type: binary 62 checks: 63 min-len: 16 64 - 65 name: peer_port 66 type: u16 67 byte-order: big-endian 68 - 69 name: ifindex 70 type: s32 71 72operations: 73 list: 74 - 75 name: unspec 76 doc: unused 77 value: 0 78 79 - 80 name: add 81 doc: Add port. 82 attribute-set: fou 83 84 dont-validate: [ strict, dump ] 85 flags: [ admin-perm ] 86 87 do: 88 request: &all_attrs 89 attributes: 90 - port 91 - ipproto 92 - type 93 - remcsum_nopartial 94 - local_v4 95 - peer_v4 96 - local_v6 97 - peer_v6 98 - peer_port 99 - ifindex 100 101 - 102 name: del 103 doc: Delete port. 104 attribute-set: fou 105 106 dont-validate: [ strict, dump ] 107 flags: [ admin-perm ] 108 109 do: 110 request: &select_attrs 111 attributes: 112 - af 113 - ifindex 114 - port 115 - peer_port 116 - local_v4 117 - peer_v4 118 - local_v6 119 - peer_v6 120 121 - 122 name: get 123 doc: Get tunnel info. 124 attribute-set: fou 125 dont-validate: [ strict, dump ] 126 127 do: 128 request: *select_attrs 129 reply: *all_attrs 130 131 dump: 132 reply: *all_attrs 133