Skip to content

Commit

Permalink
bpf: fix script for generating man page on BPF helpers
Browse files Browse the repository at this point in the history
The script broke on parsing function prototype for bpf_strtoul(). This
is because the last argument for the function is a pointer to an
"unsigned long". The current version of the script only accepts "const"
and "struct", but not "unsigned", at the beginning of argument types
made of several words.

One solution could be to add "unsigned" to the list, but the issue could
come up again in the future (what about "long int"?). It turns out we do
not need to have such restrictions on the words: so let's simply accept
any series of words instead.

Reported-by: Yonghong Song <[email protected]>
Signed-off-by: Quentin Monnet <[email protected]>
Acked-by: Jakub Kicinski <[email protected]>
Signed-off-by: Daniel Borkmann <[email protected]>
  • Loading branch information
qmonnet authored and borkmann committed May 12, 2019
1 parent 9858381 commit 748c7c8
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions scripts/bpf_helpers_doc.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/usr/bin/python3
# SPDX-License-Identifier: GPL-2.0-only
#
# Copyright (C) 2018 Netronome Systems, Inc.
# Copyright (C) 2018-2019 Netronome Systems, Inc.

# In case user attempts to run with Python 2.
from __future__ import print_function
Expand Down Expand Up @@ -39,7 +39,7 @@ def proto_break_down(self):
Break down helper function protocol into smaller chunks: return type,
name, distincts arguments.
"""
arg_re = re.compile('((const )?(struct )?(\w+|...))( (\**)(\w+))?$')
arg_re = re.compile('((\w+ )*?(\w+|...))( (\**)(\w+))?$')
res = {}
proto_re = re.compile('(.+) (\**)(\w+)\(((([^,]+)(, )?){1,5})\)$')

Expand All @@ -54,8 +54,8 @@ def proto_break_down(self):
capture = arg_re.match(a)
res['args'].append({
'type' : capture.group(1),
'star' : capture.group(6),
'name' : capture.group(7)
'star' : capture.group(5),
'name' : capture.group(6)
})

return res
Expand Down

0 comments on commit 748c7c8

Please sign in to comment.