linux-stable/tools/net/ynl
Hangbin Liu 8d0c314c30 tools: ynl-gen: support using pre-defined values in attr checks
Support using pre-defined values in checks so we don't need to use hard
code number for the string, binary length. e.g. we have a definition like

 #define TEAM_STRING_MAX_LEN 32

Which defined in yaml like:

 definitions:
   -
     name: string-max-len
     type: const
     value: 32

It can be used in the attribute-sets like

attribute-sets:
  -
    name: attr-option
    name-prefix: team-attr-option-
    attributes:
      -
        name: name
        type: string
        checks:
          len: string-max-len

With this patch it will be converted to

[TEAM_ATTR_OPTION_NAME] = { .type = NLA_STRING, .len = TEAM_STRING_MAX_LEN, }

Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Link: https://lore.kernel.org/r/20240311140727.109562-1-liuhangbin@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2024-03-11 13:07:48 -07:00
..
generated tools: ynl: rename make hardclean -> distclean 2024-03-06 12:05:10 +00:00
lib tools: ynl: Fix spelling mistake "Constructred" -> "Constructed" 2024-03-08 19:58:13 -08:00
samples ynl: samples: fix recycling rate calculation 2024-03-11 10:22:06 +00:00
cli.py tools/net/ynl: Report netlink errors without stacktrace 2024-03-07 20:28:26 -08:00
ethtool.py tools: ynl: Rename ethtool to ethtool.py 2023-04-13 22:18:29 -07:00
Makefile tools: ynl: add distclean to .PHONY in all makefiles 2024-03-06 12:05:10 +00:00
Makefile.deps tools: ynl: protect from old OvS headers 2024-02-28 15:24:11 -08:00
requirements.txt tools: ynl: add the Python requirements.txt file 2023-03-24 19:11:02 -07:00
ynl-gen-c.py tools: ynl-gen: support using pre-defined values in attr checks 2024-03-11 13:07:48 -07:00
ynl-gen-rst.py tools/net/ynl: Add type info to struct members in generated docs 2024-01-31 21:19:19 -08:00
ynl-regen.sh tools: ynl: don't skip regeneration from make targets 2023-11-29 16:07:00 -08:00