master
h 24 lines 675 Bytes
Raw
1 // SPDX-License-Identifier: GPL-3.0-or-later
2
3 #ifndef NETDATA_CACHED_UID_GROUPNAME_H
4 #define NETDATA_CACHED_UID_GROUPNAME_H
5
6 #include "libnetdata/libnetdata.h"
7
8 struct netdata_string;
9
10 typedef struct {
11 uint32_t version;
12 gid_t gid;
13 struct netdata_string *groupname;
14 } CACHED_GROUPNAME;
15
16 void cached_groupname_populate_by_gid(gid_t gid, const char *groupname, uint32_t version);
17 CACHED_GROUPNAME cached_groupname_get_by_gid(gid_t gid);
18 void cached_groupname_release(CACHED_GROUPNAME cg);
19 void cached_groupnames_delete_old_versions(uint32_t version);
20
21 void cached_groupnames_init(void);
22 void cached_groupnames_destroy(void);
23
24 #endif //NETDATA_CACHED_UID_GROUPNAME_H