24 #ifndef _SEAP_DESCRIPTOR_H
25 #define _SEAP_DESCRIPTOR_H
31 #include "generic/bitmap.h"
32 #include "generic/rbt/rbt.h"
33 #include "_sexp-types.h"
34 #include "_seap-packetq.h"
35 #include "_sexp-output.h"
36 #include "_seap-command.h"
37 #include "../../../common/util.h"
39 typedef uint8_t SEAP_scheme_t;
56 pthread_mutex_t w_lock;
57 pthread_mutex_t r_lock;
59 SEAP_cmdid_t next_cid;
66 #define SEAP_DESC_FDIN 0x00000001
67 #define SEAP_DESC_FDOUT 0x00000002
68 #define SEAP_DESC_SELF -1
70 #define SEAP_DESCTBL_INITIALIZER { NULL, NULL }
72 #define SEAP_BUFFER_SIZE 2*4096
73 #define SEAP_MAX_OPENDESC 128
74 #define SDTABLE_REALLOC_ADD 4
76 int SEAP_desc_add(
SEAP_desctable_t *sd_table, SEAP_scheme_t scheme,
void *scheme_data);
84 static inline int SEAP_desc_trylock (pthread_mutex_t *m)
86 switch (pthread_mutex_trylock (m)) {
99 static inline int SEAP_desc_lock (pthread_mutex_t *m)
101 switch (pthread_mutex_lock (m)) {
109 static inline int SEAP_desc_unlock (pthread_mutex_t *m)
111 switch (pthread_mutex_unlock (m)) {
119 #define DESC_TRYRLOCK(d) SEAP_desc_trylock (&((d)->r_lock))
120 #define DESC_RLOCK(d) SEAP_desc_lock (&((d)->r_lock))
121 #define DESC_RUNLOCK(d) SEAP_desc_unlock (&((d)->r_lock))
123 #define DESC_TRYWLOCK(d) SEAP_desc_trylock (&((d)->w_lock))
124 #define DESC_WLOCK(d) SEAP_desc_lock (&((d)->w_lock))
125 #define DESC_WUNLOCK(d) SEAP_desc_unlock (&((d)->w_lock))
oval_subtype_t
Unknown subtypes.
Definition: oval_types.h:120
Definition: _seap-packetq.h:16
Definition: probe_main.h:26
Definition: _sexp-output.h:36
Definition: seap-descriptor.h:44
Definition: _seap-types.h:41
Definition: _seap-types.h:36
Definition: rbt_common.h:129
Definition: sexp-types.h:82
Definition: err_queue.c:30