xref: /linux/tools/perf/util/syscalltbl.h (revision a1ff5a7d78a036d6c2178ee5acd6ba4946243800)
1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
2fd0db102SArnaldo Carvalho de Melo #ifndef __PERF_SYSCALLTBL_H
3fd0db102SArnaldo Carvalho de Melo #define __PERF_SYSCALLTBL_H
4fd0db102SArnaldo Carvalho de Melo 
5fd0db102SArnaldo Carvalho de Melo struct syscalltbl {
6fd0db102SArnaldo Carvalho de Melo 	int audit_machine;
75af56fabSArnaldo Carvalho de Melo 	struct {
830a910d7SArnaldo Carvalho de Melo 		int max_id;
95af56fabSArnaldo Carvalho de Melo 		int nr_entries;
105af56fabSArnaldo Carvalho de Melo 		void *entries;
115af56fabSArnaldo Carvalho de Melo 	} syscalls;
12fd0db102SArnaldo Carvalho de Melo };
13fd0db102SArnaldo Carvalho de Melo 
14fd0db102SArnaldo Carvalho de Melo struct syscalltbl *syscalltbl__new(void);
15fd0db102SArnaldo Carvalho de Melo void syscalltbl__delete(struct syscalltbl *tbl);
16fd0db102SArnaldo Carvalho de Melo 
17fd0db102SArnaldo Carvalho de Melo const char *syscalltbl__name(const struct syscalltbl *tbl, int id);
18fd0db102SArnaldo Carvalho de Melo int syscalltbl__id(struct syscalltbl *tbl, const char *name);
19*7a2fb561SHoward Chu int syscalltbl__id_at_idx(struct syscalltbl *tbl, int idx);
20fd0db102SArnaldo Carvalho de Melo 
2189be3f8aSArnaldo Carvalho de Melo int syscalltbl__strglobmatch_first(struct syscalltbl *tbl, const char *syscall_glob, int *idx);
2289be3f8aSArnaldo Carvalho de Melo int syscalltbl__strglobmatch_next(struct syscalltbl *tbl, const char *syscall_glob, int *idx);
2389be3f8aSArnaldo Carvalho de Melo 
24fd0db102SArnaldo Carvalho de Melo #endif /* __PERF_SYSCALLTBL_H */
25