Open SCAP Library
Loading...
Searching...
No Matches
src
OVAL
probes
probe
ncache.h
1
/*
2
* Copyright 2011 Red Hat Inc., Durham, North Carolina.
3
* All Rights Reserved.
4
*
5
* This library is free software; you can redistribute it and/or
6
* modify it under the terms of the GNU Lesser General Public
7
* License as published by the Free Software Foundation; either
8
* version 2.1 of the License, or (at your option) any later version.
9
*
10
* This library is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
* Lesser General Public License for more details.
14
*
15
* You should have received a copy of the GNU Lesser General Public
16
* License along with this library; if not, write to the Free Software
17
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
*
19
* Authors:
20
* Daniel Kopecek <dkopecek@redhat.com>
21
*/
22
#ifndef PROBE_NCACHE_H
23
#define PROBE_NCACHE_H
24
25
#include <stddef.h>
26
#include <pthread.h>
27
#include <sexp.h>
28
29
#define PROBE_NCACHE_INIT_SIZE 24
30
#define PROBE_NCACHE_ADD_SIZE 8
31
36
typedef
struct
{
37
pthread_rwlock_t
lock
;
38
SEXP_t
**
name
;
39
size_t
real
;
40
size_t
size
;
41
}
probe_ncache_t
;
42
47
probe_ncache_t
*probe_ncache_new (
void
);
48
57
void
probe_ncache_free (
probe_ncache_t
*cache);
58
69
void
probe_ncache_clear (
probe_ncache_t
*cache);
70
80
SEXP_t
*probe_ncache_add (
probe_ncache_t
*cache,
const
char
*name);
81
90
SEXP_t
*probe_ncache_get (
probe_ncache_t
*cache,
const
char
*name);
91
100
SEXP_t
*probe_ncache_ref (
probe_ncache_t
*cache,
const
char
*name);
101
102
#endif
/* PROBE_NCACHE_H */
SEXP
Definition
sexp-types.h:82
probe_ncache_t
Element name cache structure.
Definition
ncache.h:36
probe_ncache_t::lock
pthread_rwlock_t lock
pthread read-write lock
Definition
ncache.h:37
probe_ncache_t::real
size_t real
number of cached names
Definition
ncache.h:39
probe_ncache_t::size
size_t size
pre-allocated size
Definition
ncache.h:40
probe_ncache_t::name
SEXP_t ** name
array of S-exp refs
Definition
ncache.h:38
Generated by
1.10.0