123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- /* Functions that provide the mechanism to parse a syscall XML file
- and get its values.
- Copyright (C) 2009-2022 Free Software Foundation, Inc.
- This file is part of GDB.
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>. */
- #ifndef XML_SYSCALL_H
- #define XML_SYSCALL_H 1
- /* Function used to set the name of the file which contains
- information about the system calls present in the current
- architecture.
-
- This function *should* be called before anything else, otherwise
- GDB won't be able to find the correct XML file to open and get
- the syscalls definitions. */
- void set_xml_syscall_file_name (struct gdbarch *gdbarch,
- const char *name);
- /* Function that retrieves the syscall name corresponding to the given
- number. It puts the requested information inside 'struct syscall'. */
- void get_syscall_by_number (struct gdbarch *gdbarch,
- int syscall_number, struct syscall *s);
- /* Function that retrieves the syscall numbers corresponding to the
- given name. The numbers of all syscalls with either a name or
- alias equal to SYSCALL_NAME are appended to SYSCALL_NUMBERS. If no
- matching syscalls are found, return false. */
- bool get_syscalls_by_name (struct gdbarch *gdbarch, const char *syscall_name,
- std::vector<int> *syscall_numbers);
- /* Function used to retrieve the list of syscalls in the system. This list
- is returned as an array of strings. Returns the list of syscalls in the
- system, or NULL otherwise. */
- const char **get_syscall_names (struct gdbarch *gdbarch);
- /* Function used to retrieve the list of syscalls of a given group in
- the system. The syscall numbers are appended to SYSCALL_NUMBERS.
- If the group doesn't exist, return false. */
- 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
- must be freed by the caller. Return NULL if there is no syscall
- information available. */
- const char **get_syscall_group_names (struct gdbarch *gdbarch);
- #endif /* XML_SYSCALL_H */
|