Lines Matching +full:attr +full:- +full:max +full:- +full:name
1 # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
3 ---
4 $id: http://kernel.org/schemas/netlink/netlink-raw.yaml#
5 $schema: https://json-schema.org/draft-07/schema
12 len-or-define:
14 pattern: ^[0-9A-Za-z_-]+( - 1)?$
21 required: [ name, doc, attribute-sets, operations ]
24 name:
25 description: Name of the netlink family.
31 enum: [ netlink-raw ] # Trim
32 # Start netlink-raw
34 description: Protocol number to use for netlink-raw
36 # End netlink-raw
37 uapi-header:
38 description: Path to the uAPI header, default is linux/${family-name}.h
40 # Start genetlink-c
41 c-family-name:
42 description: Name of the define for the family name.
44 c-version-name:
45 description: Name of the define for the version of the family.
47 max-by-define:
50 cmd-max-name:
51 description: Name of the define for the last operation in the list.
53 cmd-cnt-name:
54 … description: The explicit name for constant holding the count of operations (last operation + 1).
56 # End genetlink-c
57 # Start genetlink-legacy
58 kernel-policy:
60 … Defines if the input policy in the kernel is global, per-operation, or split per operation type.
62 enum: [ split, per-op, global ]
63 # End genetlink-legacy
70 required: [ type, name ]
73 name:
76 description: For C-compatible languages, header which already defines this value.
84 description: For const - the value.
87 value-start:
95 - type: string
96 - type: object
97 required: [ name ]
100 name:
106 render-max:
107 description: Render the max members for this enum.
109 # Start genetlink-c
110 enum-name:
111 description: Name for enum, if empty no name will be used.
113 name-prefix:
116 # End genetlink-c
117 # Start genetlink-legacy
123 required: [ name, type ]
126 name:
134 $ref: '#/$defs/len-or-define'
135 byte-order:
136 enum: [ little-endian, big-endian ]
141 description: Name of the enum type used for the attribute.
143 enum-as-flags:
149 display-hint: &display-hint
156 description: Name of the nested struct type.
170 - required: [ len ]
171 - required: [ struct ]
172 # End genetlink-legacy
174 attribute-sets:
180 required: [ name, attributes ]
183 name:
185 … Name used when referring to this space in other definitions, not used outside of the spec.
187 name-prefix:
189 Prefix for the C enum name of the attributes. Default family[name]-set[name]-a-
191 enum-name:
193 Name for the enum type of the attribute, if empty no name will be used.
198 subset-of:
200 Name of another space which this is a logical part of. Sub-spaces can be used to define
203 # Start genetlink-c
204 attr-cnt-name:
205 … description: The explicit name for constant holding the count of attributes (last attr + 1).
207 attr-max-name:
208 description: The explicit name for last member of attribute enum.
210 # End genetlink-c
216 required: [ name ]
219 name:
221 type: &attr-type
225 string, nest, indexed-array, nest-type-value,
226 sub-message ]
233 type-value:
234 … description: Name of the value extracted from the type of a nest-type-value attribute.
238 byte-order:
239 enum: [ little-endian, big-endian ]
240 multi-attr:
242 nested-attributes:
243 description: Name of the space (sub-space) used inside the attribute.
246 description: Name of the enum type used for the attribute.
248 enum-as-flags:
259 flags-mask:
260 … description: Name of the flags constant on which to base mask (unsigned scalar types only).
265 min-len:
267 $ref: '#/$defs/len-or-define'
268 max-len:
269 description: Max length for a string or a binary attribute.
270 $ref: '#/$defs/len-or-define'
271 exact-len:
273 $ref: '#/$defs/len-or-define'
274 unterminated-ok:
279 sub-type: *attr-type
280 display-hint: *display-hint
281 # Start genetlink-c
282 name-prefix:
284 # End genetlink-c
285 # Start genetlink-legacy
287 description: Name of the struct type used for the attribute.
289 # End genetlink-legacy
290 # Start netlink-raw
291 sub-message:
293 Name of the sub-message definition to use for the attribute.
297 Name of the attribute to use for dynamic selection of sub-message
300 # End netlink-raw
302 # Make sure name-prefix does not appear in subsets (subsets inherit naming)
304 name-prefix:
306 required: [ subset-of ]
307 subset-of:
309 required: [ name-prefix ]
314 subset-of:
323 # Start netlink-raw
324 sub-messages:
330 required: [ name, formats ]
332 name:
333 description: Name of the sub-message definition
345 Value to match for dynamic selection of sub-message format
348 fixed-header:
350 Name of the struct definition to use as the fixed header
353 attribute-set:
355 Name of the attribute space from which to resolve attributes
358 # End netlink-raw
366 enum-model:
374 name-prefix:
376 Prefix for the C enum name of the command. The name is formed by concatenating
377 the prefix with the upper case name of the command, with dashes replaced by underscores.
379 enum-name:
381 Name for the enum type with commands, if empty no name will be used.
383 async-prefix:
384 … description: Same as name-prefix but used to render notifications and events to separate enum.
386 async-enum:
388 Name for the enum type with commands, if empty no name will be used.
390 # Start genetlink-legacy
391 fixed-header: &fixed-header
393 Name of the structure defining the optional fixed-length protocol
397 # End genetlink-legacy
404 required: [ name, doc ]
406 name:
407 description: Name of the operation, also defining its C enum value in uAPI.
415 attribute-set:
424 enum: [ admin-perm ]
425 dont-validate:
430 # Start genetlink-legacy
431 fixed-header: *fixed-header
432 # End genetlink-legacy
433 do: &subop-type
438 request: &subop-attr-list
445 Names of attributes from the attribute-set (not full attribute
450 # Start genetlink-legacy
456 # End genetlink-legacy
457 reply: *subop-attr-list
464 dump: *subop-type
466 description: Name of the command sharing the reply type with this notification.
478 description: Name of the multicast group generating given notification.
480 mcast-groups:
491 required: [ name ]
494 name:
496 The name for the group, used to form the define and the value of the define.
498 # Start genetlink-c
499 c-define-name:
500 description: Override for the name of the define in C uAPI.
502 # End genetlink-c
504 # Start netlink-raw
508 # End netlink-raw