Go to the documentation of this file.00001
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #pragma once
00031 #ifndef _PROBE_API_H
00032 #define _PROBE_API_H
00033
00034 #include <stdarg.h>
00035 #include "public/probe-api.h"
00036 #include "probe-cache.h"
00037 #include "encache.h"
00038 #include "common/util.h"
00039
00044 struct id_desc_t {
00045 #ifndef HAVE_ATOMIC_FUNCTIONS
00046 pthread_mutex_t item_id_ctr_lock;
00047 #endif
00048 int item_id_ctr;
00049 };
00050
00051 typedef struct {
00052 int option;
00053 int (*handler)(int, va_list);
00054 } probe_option_t;
00055
00056 extern SEAP_CTX_t *OSCAP_GSYM(ctx);
00057 extern int OSCAP_GSYM(sd);
00058 extern pcache_t *OSCAP_GSYM(pcache);
00059 extern void *OSCAP_GSYM(probe_arg);
00060 extern encache_t *OSCAP_GSYM(encache);
00061 extern struct id_desc_t OSCAP_GSYM(id_desc);
00062
00063 #define SEAP_LOCK pthread_mutex_lock (&globals.seap_lock)
00064 #define SEAP_UNLOCK pthread_mutex_unlock (&globals.seap_lock)
00065
00066 #endif