aboutsummaryrefslogtreecommitdiff
path: root/gdb/xml-syscall.h
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2018-12-13 11:36:42 -0800
committerJohn Baldwin <jhb@FreeBSD.org>2018-12-13 11:36:42 -0800
commit4794efbfdc4b1497c1f47397b2a2c43382e3de78 (patch)
tree1747426f8724a8f0d3bf3c000f6906c9242df1c3 /gdb/xml-syscall.h
parentb7c8601a7f2874de1bbe0dc38ef86ea053593ad8 (diff)
downloadfsf-binutils-gdb-4794efbfdc4b1497c1f47397b2a2c43382e3de78.zip
fsf-binutils-gdb-4794efbfdc4b1497c1f47397b2a2c43382e3de78.tar.gz
fsf-binutils-gdb-4794efbfdc4b1497c1f47397b2a2c43382e3de78.tar.bz2
Change get_syscalls_by_group to append to an existing vector of integers.
This removes the need for the caller to explicitly manage the memory for the returned system call list. The sole caller only needed the system call numbers rather than the full syscall structures. get_syscalls_by_group now uses a boolean return value to indicate if the requested group exists. gdb/ChangeLog: * break-catch-syscall.c (catch_syscall_split_args): Pass 'result' to get_syscalls_by_group. * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return false. [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall numbers to an existing vector of integers and return a bool. (get_syscalls_by_group): Accept pointer to vector of integers and change return type to bool. * xml-syscall.h (get_syscalls_by_group): Likewise.
Diffstat (limited to 'gdb/xml-syscall.h')
-rw-r--r--gdb/xml-syscall.h10
1 files changed, 4 insertions, 6 deletions
diff --git a/gdb/xml-syscall.h b/gdb/xml-syscall.h
index 4429d66..012a4b7 100644
--- a/gdb/xml-syscall.h
+++ b/gdb/xml-syscall.h
@@ -51,13 +51,11 @@ void get_syscall_by_name (struct gdbarch *gdbarch,
const char **get_syscall_names (struct gdbarch *gdbarch);
/* Function used to retrieve the list of syscalls of a given group in
- the system. Return a list of syscalls that are element of the
- group, terminated by an empty element. The list is malloc'ed
- and must be freed by the caller. If group doesn't exist, return
- NULL. */
+ the system. The syscall numbers are appended to SYSCALL_NUMBERS.
+ If the group doesn't exist, return false. */
-struct syscall *get_syscalls_by_group (struct gdbarch *gdbarch,
- const char *group);
+bool get_syscalls_by_group (struct gdbarch *gdbarch, const char *group,
+ std::vector<int> *syscall_numbers);
/* Function used to retrieve the list of syscall groups in the system.
Return an array of strings terminated by a NULL element. The list