aboutsummaryrefslogtreecommitdiffstats
path: root/tools/net/ynl/ynl-gen-c.py
AgeCommit message (Expand)AuthorFilesLines
2024-03-22tools: ynl: fix setting presence bits in simple nestsJakub Kicinski1-2/+5
2024-03-11netlink: specs: support generating code for genl socket privJakub Kicinski1-0/+10
2024-03-11tools: ynl-gen: support using pre-defined values in attr checksHangbin Liu1-0/+2
2024-03-07tools/net/ynl: Fix c codegen for array-nestDonald Hunter1-1/+1
2024-02-28tools: ynl: remove the libmnl dependencyJakub Kicinski1-1/+0
2024-02-28tools: ynl: switch away from MNL_CB_*Jakub Kicinski1-7/+7
2024-02-28tools: ynl: switch away from mnl_cb_tJakub Kicinski1-2/+1
2024-02-28tools: ynl-gen: remove unused parse codeJakub Kicinski1-8/+0
2024-02-28tools: ynl: make yarg the first member of struct ynl_dump_stateJakub Kicinski1-2/+3
2024-02-28tools: ynl: create local ARRAY_SIZE() helperJakub Kicinski1-2/+2
2024-02-28tools: ynl: create local nlmsg access helpersJakub Kicinski1-3/+3
2024-02-28tools: ynl: create local for_each helpersJakub Kicinski1-4/+4
2024-02-28tools: ynl: create local attribute helpersJakub Kicinski1-38/+23
2023-12-14tools: ynl-gen: print prototypes for recursive stuffJakub Kicinski1-5/+39
2023-12-14tools: ynl-gen: store recursive nests by a pointerJakub Kicinski1-2/+14
2023-12-14tools: ynl-gen: re-sort ignoring recursive nestsJakub Kicinski1-21/+31
2023-12-14tools: ynl-gen: record information about recursive nestsJakub Kicinski1-2/+17
2023-12-14tools: ynl-gen: fill in implementations for TypeUnusedJakub Kicinski1-0/+9
2023-12-14tools: ynl-gen: support fixed headers in genetlinkJakub Kicinski1-4/+40
2023-12-14tools: ynl-gen: use enum user type for members and argsJakub Kicinski1-3/+2
2023-12-14tools: ynl-gen: add missing request free helpers for dumpsJakub Kicinski1-0/+1
2023-11-30Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/netJakub Kicinski1-6/+4
2023-11-29tools: ynl: don't skip regeneration from make targetsJakub Kicinski1-4/+8
2023-11-29tools: ynl-gen: always construct struct ynl_req_stateJakub Kicinski1-6/+4
2023-11-24tools: ynl-gen: use enum name from the specJakub Kicinski1-5/+9
2023-11-24tools: ynl-get: use family c-nameJakub Kicinski1-23/+23
2023-11-24tools: ynl-gen: always append ULL/LL to range typesJakub Kicinski1-2/+3
2023-11-23tools: ynl: fix duplicate op name in devlinkJakub Kicinski1-0/+6
2023-11-01tools: ynl-gen: don't touch the output file if content is the sameJakub Kicinski1-1/+6
2023-10-26tools: ynl-gen: respect attr-cnt-name at the attr set levelJakub Kicinski1-3/+4
2023-10-26netlink: specs: support conditional operationsJakub Kicinski1-0/+22
2023-10-26netlink: make range pointers in policies constJakub Kicinski1-1/+1
2023-10-24tools: ynl-gen: add support for exact-len validationDavide Caratti1-11/+17
2023-10-23Merge branch 'devlink-finish-conversion-to-generated-split_ops'Jakub Kicinski1-4/+46
2023-10-23tools: ynl-gen: render rsp_parse() helpers if cmd has only dump opJiri Pirko1-4/+7
2023-10-23tools: ynl-gen: introduce support for bitfield32 attribute typeJiri Pirko1-0/+39
2023-10-23tools: ynl-gen: change spacing around __attribute__Jakub Kicinski1-1/+1
2023-10-20netlink: specs: add support for auto-sized scalarsJakub Kicinski1-2/+4
2023-10-20tools: ynl-gen: make the mnl_type() method publicJakub Kicinski1-20/+18
2023-10-19tools: ynl-gen: support limit namesJakub Kicinski1-11/+34
2023-10-19tools: ynl-gen: support full range of min/max checks for integer valuesJakub Kicinski1-7/+59
2023-10-19tools: ynl-gen: track attribute useJakub Kicinski1-0/+20
2023-10-09tools: ynl-gen: handle do ops with no input attrsJakub Kicinski1-6/+11
2023-10-06tools: ynl-gen: use uapi header name for the header guardJakub Kicinski1-1/+5
2023-08-25tools: ynl-gen: fix uAPI generation after tempfile changesJakub Kicinski1-10/+20
2023-08-24tools: ynl-gen: support empty attribute listsJakub Kicinski1-2/+9
2023-08-24tools: ynl-gen: fix collecting global policy attrsJakub Kicinski1-1/+3
2023-08-24tools: ynl-gen: set length of binary fieldsJakub Kicinski1-0/+1
2023-08-19tools: ynl-gen: use temporary file for renderingJiri Pirko1-2/+8
2023-08-09tools: ynl-gen: add missing empty line between policiesJakub Kicinski1-0/+1
2023-08-09tools: ynl-gen: avoid rendering empty validate fieldJiri Pirko1-3/+4
2023-08-04ynl-gen-c.py: render netlink policies static for split opsJiri Pirko1-2/+6
2023-08-04ynl-gen-c.py: allow directional model for kernel modeJiri Pirko1-1/+1
2023-08-04ynl-gen-c.py: filter rendering of validate field values for split opsJiri Pirko1-1/+9
2023-07-28ynl: mark max/mask as private for kdocStanislav Fomichev1-0/+1
2023-06-13tools: ynl-gen: inherit policy in multi-attrJakub Kicinski1-18/+24
2023-06-13tools: ynl-gen: correct enum policiesJakub Kicinski1-2/+13
2023-06-12tools: ynl-gen: resolve enum vs struct name conflictsJakub Kicinski1-5/+20
2023-06-12tools: ynl-gen: don't generate enum types if unnamedJakub Kicinski1-2/+10
2023-06-12netlink: specs: support setting prefix-name per attributeJakub Kicinski1-2/+5
2023-06-12tools: ynl-gen: record extra args for regenJakub Kicinski1-0/+5
2023-06-12tools: ynl-gen: support excluding tricky opsJakub Kicinski1-3/+7
2023-06-09tools: ynl-gen: support / skip pads on the way to kernelJakub Kicinski1-0/+6
2023-06-09tools: ynl-gen: don't pass op_name to RenderInfoJakub Kicinski1-19/+18
2023-06-09tools: ynl-gen: support code gen for eventsJakub Kicinski1-5/+12
2023-06-09tools: ynl-gen: sanitize notification trackingJakub Kicinski1-42/+23
2023-06-09tools: ynl-gen: stop generating common notification handlersJakub Kicinski1-73/+0
2023-06-09tools: ynl-gen: get attr type outside of if()Jakub Kicinski1-1/+3
2023-06-09tools: ynl-gen: combine else with closing bracketJakub Kicinski1-4/+19
2023-06-09tools: ynl-gen: complete the C keyword listJakub Kicinski1-1/+34
2023-06-09tools: ynl-gen: cleanup user space header includesJakub Kicinski1-4/+1
2023-06-08tools: ynl-gen: don't generate forward declarations for policiesJakub Kicinski1-9/+3
2023-06-08tools: ynl-gen: walk nested types in depthJakub Kicinski1-12/+29
2023-06-08tools: ynl-gen: inherit struct use infoJakub Kicinski1-0/+8
2023-06-08tools: ynl-gen: try to sort the types more intelligentlyJakub Kicinski1-2/+24
2023-06-08tools: ynl-gen: enable code gen for directional specsJakub Kicinski1-3/+7
2023-06-08tools: ynl-gen: refactor strmap helper generationJakub Kicinski1-19/+17
2023-06-08tools: ynl-gen: use enum names in op strmap more carefullyJakub Kicinski1-1/+5
2023-06-07tools: ynl-gen: improve unwind on parsing errorsJakub Kicinski1-5/+17
2023-06-07tools: ynl-gen: fill in support for MultiAttr scalarsJakub Kicinski1-5/+42
2023-06-06tools: ynl-gen: clean up stray new lines at the end of reply-less requestsJakub Kicinski1-3/+4
2023-06-02tools: ynl-gen: generate static descriptions of notificationsJakub Kicinski1-10/+42
2023-06-02tools: ynl-gen: switch to family structJakub Kicinski1-0/+15
2023-06-02tools: ynl-gen: generate alloc and free helpers for reqJakub Kicinski1-0/+17
2023-06-02tools: ynl-gen: move the response reading logic into YNLJakub Kicinski1-36/+27
2023-06-02tools: ynl-gen: generate enum-to-string helpersJakub Kicinski1-0/+66
2023-06-02tools: ynl-gen: add error checking for nested structsJakub Kicinski1-1/+2
2023-06-02tools: ynl-gen: loosen type consistency check for eventsJakub Kicinski1-7/+8
2023-06-02tools: ynl-gen: don't override pure nested structJakub Kicinski1-1/+2
2023-06-02tools: ynl-gen: fix unused / pad attribute handlingJakub Kicinski1-3/+17
2023-06-02tools: ynl-gen: add extra headers for user spaceJakub Kicinski1-0/+7
2023-05-26net: ynl: prefix uAPI header include with uapi/Jakub Kicinski1-1/+3
2023-03-27tools: ynl: default to treating enums as flags for mask generationJakub Kicinski1-1/+2
2023-03-21tools: ynl: skip the explicit op array size when not neededJakub Kicinski1-1/+3
2023-03-16ynl: make the tooling check the licenseJakub Kicinski1-6/+7
2023-03-16ynl: broaden the license even moreJakub Kicinski1-4/+4
2023-03-10tools: ynl: fix render-max for flags definitionLorenzo Bianconi1-3/+8
2023-03-08tools: ynl: move the enum classes to shared codeJakub Kicinski1-86/+21
2023-03-07ynl: re-license uniformly under GPL-2.0 OR BSD-3-ClauseJakub Kicinski1-3/+4
2023-03-03tools: ynl: use 1 as the default for first entry in attrs/opsJakub Kicinski1-2/+5
2023-02-24tools: ynl-gen: fix single attribute structs with attr 0 onlyJakub Kicinski1-1/+1
2023-01-31tools: net: use python3 explicitlyJakub Kicinski1-1/+1
2023-01-31tools: ynl: use the common YAML loading and validation codeJakub Kicinski1-139/+117
2023-01-31tools: ynl-gen: prevent do / dump reorderingJakub Kicinski1-2/+2
2023-01-26tools: ynl: store ops in ordered dict to avoid random orderingJakub Kicinski1-1/+2
2023-01-26tools: ynl: rename ops_list -> msg_listJakub Kicinski1-4/+6
2023-01-26tools: ynl: support kdocs for flags in code generationJakub Kicinski1-17/+20
2023-01-24net: add basic C code generators for NetlinkJakub Kicinski1-0/+2373