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/genetlink-c.yaml#
5 $schema: https://json-schema.org/draft-07/schema
12 len-or-define:
14 pattern: ^[0-9A-Za-z_]+( - 1)?$
16 len-or-limit:
17 # literal int or limit based on fixed-width type e.g. u8-min, u16-max, etc.
19 pattern: ^[su](8|16|32|64)-(min|max)$
26 required: [ name, doc, attribute-sets, operations ]
29 name:
30 description: Name of the genetlink family.
36 enum: [ genetlink, genetlink-c ]
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
63 required: [ type, name ]
66 name:
69 description: For C-compatible languages, header which already defines this value.
77 description: For const - the value.
80 value-start:
88 - type: string
89 - type: object
90 required: [ name ]
93 name:
99 render-max:
100 description: Render the max members for this enum.
102 # Start genetlink-c
103 enum-name:
104 description: Name for enum, if empty no name will be used.
106 name-prefix:
109 # End genetlink-c
111 attribute-sets:
117 required: [ name, attributes ]
120 name:
122Name used when referring to this space in other definitions, not used outside of the spec.
124 name-prefix:
126 Prefix for the C enum name of the attributes. Default family[name]-set[name]-a-
128 enum-name:
129 description: Name for the enum type of the attribute.
134 subset-of:
136 Name of another space which this is a logical part of. Sub-spaces can be used to define
139 # Start genetlink-c
140 attr-cnt-name:
141 … description: The explicit name for constant holding the count of attributes (last attr + 1).
143 attr-max-name:
144 description: The explicit name for last member of attribute enum.
146 # End genetlink-c
152 required: [ name ]
155 name:
157 type: &attr-type
160 string, nest, array-nest, nest-type-value ]
167 type-value:
168 … description: Name of the value extracted from the type of a nest-type-value attribute.
172 byte-order:
173 enum: [ little-endian, big-endian ]
174 multi-attr:
176 nested-attributes:
177 description: Name of the space (sub-space) used inside the attribute.
180 description: Name of the enum type used for the attribute.
182 enum-as-flags:
193 flags-mask:
194 … description: Name of the flags constant on which to base mask (unsigned scalar types only).
198 $ref: '#/$defs/len-or-limit'
199 max:
200 description: Max value for an integer attribute.
201 $ref: '#/$defs/len-or-limit'
202 min-len:
204 $ref: '#/$defs/len-or-define'
205 max-len:
206 description: Max length for a string or a binary attribute.
207 $ref: '#/$defs/len-or-define'
208 exact-len:
210 $ref: '#/$defs/len-or-define'
211 sub-type: *attr-type
212 display-hint: &display-hint
218 # Start genetlink-c
219 name-prefix:
221 # End genetlink-c
223 # Make sure name-prefix does not appear in subsets (subsets inherit naming)
225 name-prefix:
227 required: [ subset-of ]
228 subset-of:
230 required: [ name-prefix ]
235 subset-of:
250 enum-model:
258 name-prefix:
260 Prefix for the C enum name of the command. The name is formed by concatenating
261 the prefix with the upper case name of the command, with dashes replaced by underscores.
263 enum-name:
264 description: Name for the enum type with commands.
266 async-prefix:
267 … description: Same as name-prefix but used to render notifications and events to separate enum.
269 async-enum:
270 description: Name for the enum type with notifications/events.
278 required: [ name, doc ]
280 name:
281 description: Name of the operation, also defining its C enum value in uAPI.
289 attribute-set:
298 enum: [ admin-perm ]
299 dont-validate:
303 enum: [ strict, dump, dump-strict ]
304 config-cond:
306 Name of the kernel config option gating the presence of
309 do: &subop-type
314 request: &subop-attr-list
321 Names of attributes from the attribute-set (not full attribute
326 reply: *subop-attr-list
333 dump: *subop-type
335 description: Name of the command sharing the reply type with this notification.
347 description: Name of the multicast group generating given notification.
349 mcast-groups:
360 required: [ name ]
363 name:
365 The name for the group, used to form the define and the value of the define.
367 # Start genetlink-c
368 c-define-name:
369 description: Override for the name of the define in C uAPI.
371 # End genetlink-c