Lines Matching +full:enum +full:- +full:as +full:- +full:flags

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 ]
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:
44 c-version-name:
47 max-by-define:
48 …description: Makes the number of attributes and commands be specified by a define, not an enum val…
50 cmd-max-name:
53 cmd-cnt-name:
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
66 description: List of type and constant definitions (enums, flags, defines).
76 description: For C-compatible languages, header which already defines this value.
79 enum: [ const, enum, flags, struct ] # Trim
84 description: For const - the value.
86 # For enum and flags
87 value-start:
88 description: For enum or flags the literal initializer for the first value.
91 description: For enum or flags array of values.
95 - type: string
96 - type: object
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:
114 description: For enum the prefix of the values, optional.
116 # End genetlink-c
117 # Start genetlink-legacy
132 enum: [ u8, u16, u32, u64, s8, s16, s32, s64, string, binary, pad ]
134 $ref: '#/$defs/len-or-define'
135 byte-order:
136 enum: [ little-endian, big-endian ]
140 enum:
141 description: Name of the enum type used for the attribute.
143 enum-as-flags:
145 Treat the enum as flags. In most cases enum is either used as flags or as values.
146 … Sometimes, however, both forms are necessary, in which case header contains the enum
149 display-hint: &display-hint
154 enum: [ hex, mac, fddi, ipv4, ipv6, uuid ]
159 - const: binary
160 - const: pad
163 # End genetlink-legacy
165 attribute-sets:
178 name-prefix:
180 Prefix for the C enum name of the attributes. Default family[name]-set[name]-a-
182 enum-name:
183 description: Name for the enum type of the attribute.
188 subset-of:
190 Name of another space which this is a logical part of. Sub-spaces can be used to define
193 # Start genetlink-c
194 attr-cnt-name:
197 attr-max-name:
198 description: The explicit name for last member of attribute enum.
200 # End genetlink-c
211 type: &attr-type
213 enum: [ unused, pad, flag, binary, bitfield32,
215 string, nest, array-nest, nest-type-value,
216 sub-message ]
221 description: Value for the enum item representing this attribute in the uAPI.
223 type-value:
224 … description: Name of the value extracted from the type of a nest-type-value attribute.
228 byte-order:
229 enum: [ little-endian, big-endian ]
230 multi-attr:
232 nested-attributes:
233 description: Name of the space (sub-space) used inside the attribute.
235 enum:
236 description: Name of the enum type used for the attribute.
238 enum-as-flags:
240 Treat the enum as flags. In most cases enum is either used as flags or as values.
241 … Sometimes, however, both forms are necessary, in which case header contains the enum
249 flags-mask:
250 … description: Name of the flags constant on which to base mask (unsigned scalar types only).
255 min-len:
257 $ref: '#/$defs/len-or-define'
258 max-len:
260 $ref: '#/$defs/len-or-define'
261 exact-len:
263 $ref: '#/$defs/len-or-define'
264 sub-type: *attr-type
265 display-hint: *display-hint
266 # Start genetlink-c
267 name-prefix:
269 # End genetlink-c
270 # Start genetlink-legacy
274 # End genetlink-legacy
275 # Start netlink-raw
276 sub-message:
278 Name of the sub-message definition to use for the attribute.
282 Name of the attribute to use for dynamic selection of sub-message
285 # End netlink-raw
287 # Make sure name-prefix does not appear in subsets (subsets inherit naming)
289 name-prefix:
291 required: [ subset-of ]
292 subset-of:
294 required: [ name-prefix ]
299 subset-of:
308 # Start netlink-raw
309 sub-messages:
318 description: Name of the sub-message definition
330 Value to match for dynamic selection of sub-message format
333 fixed-header:
335 Name of the struct definition to use as the fixed header
338 attribute-set:
343 # End netlink-raw
351 enum-model:
355 to a single enum.
358 enum: [ unified, directional ] # Trim
359 name-prefix:
361 Prefix for the C enum name of the command. The name is formed by concatenating
364 enum-name:
365 description: Name for the enum type with commands.
367 async-prefix:
368 … description: Same as name-prefix but used to render notifications and events to separate enum.
370 async-enum:
371 description: Name for the enum type with notifications/events.
373 # Start genetlink-legacy
374 fixed-header: &fixed-header
376 Name of the structure defining the optional fixed-length protocol
380 # End genetlink-legacy
390 description: Name of the operation, also defining its C enum value in uAPI.
396 description: Value for the enum in the uAPI.
398 attribute-set:
403 flags: &cmd_flags
404 description: Command flags.
407 enum: [ admin-perm ]
408 dont-validate:
409 description: Kernel attribute validation flags.
412 enum: [ strict, dump ]
413 # Start genetlink-legacy
414 fixed-header: *fixed-header
415 # End genetlink-legacy
416 do: &subop-type
421 request: &subop-attr-list
428 Names of attributes from the attribute-set (not full attribute
433 # Start genetlink-legacy
439 # End genetlink-legacy
440 reply: *subop-attr-list
447 dump: *subop-type
463 mcast-groups:
481 # Start genetlink-c
482 c-define-name:
485 # End genetlink-c
486 flags: *cmd_flags
487 # Start netlink-raw
491 # End netlink-raw