Merge tag 'dt-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
[linux-2.6-microblaze.git] / security / selinux / ss / symtab.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * A symbol table (symtab) maintains associations between symbol
4  * strings and datum values.  The type of the datum values
5  * is arbitrary.  The symbol table type is implemented
6  * using the hash table type (hashtab).
7  *
8  * Author : Stephen Smalley, <sds@tycho.nsa.gov>
9  */
10 #ifndef _SS_SYMTAB_H_
11 #define _SS_SYMTAB_H_
12
13 #include "hashtab.h"
14
15 struct symtab {
16         struct hashtab table;   /* hash table (keyed on a string) */
17         u32 nprim;              /* number of primary names in table */
18 };
19
20 int symtab_init(struct symtab *s, unsigned int size);
21
22 int symtab_insert(struct symtab *s, char *name, void *datum);
23 void *symtab_search(struct symtab *s, const char *name);
24
25 #endif  /* _SS_SYMTAB_H_ */
26
27