Lines Matching +full:multi +full:- +full:attr

1 .. SPDX-License-Identifier: BSD-3-Clause
9 the ``genetlink-legacy`` protocol level.
15 --------------------
17 New Netlink families should use ``multi-attr`` to define arrays.
21 For reference the ``multi-attr`` array may look like this::
23 [ARRAY-ATTR]
27 [SOME-OTHER-ATTR]
28 [ARRAY-ATTR]
33 where ``ARRAY-ATTR`` is the array entry type.
35 array-nest
38 ``array-nest`` creates the following structure::
40 [SOME-OTHER-ATTR]
41 [ARRAY-ATTR]
53 type-value
56 ``type-value`` is a construct which uses attribute types to carry
58 entry-by-entry).
60 ``type-value`` can have multiple levels of nesting, for example
63 [POLICY-IDX]
64 [ATTR-IDX]
65 [POLICY-INFO-ATTR1]
66 [POLICY-INFO-ATTR2]
70 type. Inside the attr-index nest are the policy attributes. Modern
78 -----------------------
89 .. code-block:: yaml
91 -
95 -
98 -
102 -
107 the requests and responses of ``b`` - 2 (since there is no explicit
123 only allocates a ``reply`` (i.e. a "from-kernel" ID). Let's look
126 .. code-block:: yaml
128 -
137 -
140 -
144 -
150 a "from-kernel" ID which is 2. ``c`` allocates "from-kernel" ID of 7.
154 the previous operation in the "from-kernel" direction).
160 ----------
169 - ``name`` - The attribute name of the struct member
170 - ``type`` - One of the scalar types ``u8``, ``u16``, ``u32``, ``u64``, ``s8``,
172 - ``byte-order`` - ``big-endian`` or ``little-endian``
173 - ``doc``, ``enum``, ``enum-as-flags``, ``display-hint`` - Same as for
179 .. code-block:: c
187 Any padding must be explicitly added and C-like languages should infer the
192 .. code-block:: yaml
195 -
196 name: message-header
199 -
202 -
205 -
212 Fixed message headers can be added to operations using ``fixed-header``.
213 The default ``fixed-header`` can be set in ``operations`` and it can be set
216 .. code-block:: yaml
219 fixed-header: message-header
221 -
223 fixed-header: custom-header
224 attribute-set: message-attrs
231 ``struct`` property implies ``sub-type: struct`` so it is not necessary to
232 specify a sub-type.
234 .. code-block:: yaml
236 attribute-sets:
237 -
238 name: stats-attrs
240 -
243 struct: vport-stats
246 --------
249 ``sub-type`` is used to identify the type of scalar to extract.
251 .. code-block:: yaml
254 -
257 sub-type: u32
259 Multi-message DO
260 ----------------
266 perhaps with values of ``combine`` and ``multi-object`` depending