xref: /linux/Documentation/netlink/specs/nfsd.yaml (revision 86634fa4e6aeff2e190616c304156899beb4d76b)
1# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
2
3name: nfsd
4protocol: genetlink
5uapi-header: linux/nfsd_netlink.h
6
7doc: NFSD configuration over generic netlink.
8
9attribute-sets:
10  -
11    name: rpc-status
12    attributes:
13      -
14        name: xid
15        type: u32
16        byte-order: big-endian
17      -
18        name: flags
19        type: u32
20      -
21        name: prog
22        type: u32
23      -
24        name: version
25        type: u8
26      -
27        name: proc
28        type: u32
29      -
30        name: service_time
31        type: s64
32      -
33        name: pad
34        type: pad
35      -
36        name: saddr4
37        type: u32
38        byte-order: big-endian
39        display-hint: ipv4
40      -
41        name: daddr4
42        type: u32
43        byte-order: big-endian
44        display-hint: ipv4
45      -
46        name: saddr6
47        type: binary
48        display-hint: ipv6
49      -
50        name: daddr6
51        type: binary
52        display-hint: ipv6
53      -
54        name: sport
55        type: u16
56        byte-order: big-endian
57      -
58        name: dport
59        type: u16
60        byte-order: big-endian
61      -
62        name: compound-ops
63        type: u32
64        multi-attr: true
65  -
66    name: server
67    attributes:
68      -
69        name: threads
70        type: u32
71        multi-attr: true
72      -
73        name: gracetime
74        type: u32
75      -
76        name: leasetime
77        type: u32
78      -
79        name: scope
80        type: string
81  -
82    name: version
83    attributes:
84      -
85        name: major
86        type: u32
87      -
88        name: minor
89        type: u32
90      -
91        name: enabled
92        type: flag
93  -
94    name: server-proto
95    attributes:
96      -
97        name: version
98        type: nest
99        nested-attributes: version
100        multi-attr: true
101  -
102    name: sock
103    attributes:
104      -
105        name: addr
106        type: binary
107      -
108        name: transport-name
109        type: string
110  -
111    name: server-sock
112    attributes:
113      -
114        name: addr
115        type: nest
116        nested-attributes: sock
117        multi-attr: true
118
119operations:
120  list:
121    -
122      name: rpc-status-get
123      doc: dump pending nfsd rpc
124      attribute-set: rpc-status
125      dump:
126        reply:
127          attributes:
128            - xid
129            - flags
130            - prog
131            - version
132            - proc
133            - service_time
134            - saddr4
135            - daddr4
136            - saddr6
137            - daddr6
138            - sport
139            - dport
140            - compound-ops
141    -
142      name: threads-set
143      doc: set the number of running threads
144      attribute-set: server
145      flags: [ admin-perm ]
146      do:
147        request:
148          attributes:
149            - threads
150            - gracetime
151            - leasetime
152            - scope
153    -
154      name: threads-get
155      doc: get the number of running threads
156      attribute-set: server
157      do:
158        reply:
159          attributes:
160            - threads
161            - gracetime
162            - leasetime
163            - scope
164    -
165      name: version-set
166      doc: set nfs enabled versions
167      attribute-set: server-proto
168      flags: [ admin-perm ]
169      do:
170        request:
171          attributes:
172            - version
173    -
174      name: version-get
175      doc: get nfs enabled versions
176      attribute-set: server-proto
177      do:
178        reply:
179          attributes:
180            - version
181    -
182      name: listener-set
183      doc: set nfs running sockets
184      attribute-set: server-sock
185      flags: [ admin-perm ]
186      do:
187        request:
188          attributes:
189            - addr
190    -
191      name: listener-get
192      doc: get nfs running listeners
193      attribute-set: server-sock
194      do:
195        reply:
196          attributes:
197            - addr
198