24 #ifndef CORRELATION_RADIX_H_INCLUDED
25 #define CORRELATION_RADIX_H_INCLUDED
54 typedef struct _RParserMatch
68 typedef struct _RParserNode
83 gboolean (*parse)(gchar *str, gint *len,
const gchar *param, gpointer
state,
RParserMatch *match);
84 void (*free_state)(gpointer
state);
87 typedef gchar *(*RNodeGetValueFunc) (gpointer
value);
89 typedef struct _RNode RNode;
105 typedef struct _RDebugInfo
114 static inline const gchar *
115 r_parser_type_name(guint8 type)
159 const gchar *capture_prefix,
RNodeGetValueFunc value_func,
const gchar *location);
160 RNode *
r_find_node(RNode *root, gchar *
key, gint keylen, GArray *matches);
161 RNode *
r_find_node_dbg(RNode *root, gchar *
key, gint keylen, GArray *matches, GArray *dbg_list);
NVType LogMessageValueType
Definition: logmsg.h:195
guint32 NVHandle
Definition: nvtable.h:35
@ RPT_PCRE
Definition: radix.h:46
@ RPT_MACADDR
Definition: radix.h:45
@ RPT_IPV4
Definition: radix.h:38
@ RPT_EMAIL
Definition: radix.h:47
@ RPT_NUMBER
Definition: radix.h:39
@ RPT_ANYSTRING
Definition: radix.h:40
@ RPT_NLSTRING
Definition: radix.h:50
@ RPT_IPV6
Definition: radix.h:41
@ RPT_LLADDR
Definition: radix.h:49
@ RPT_SET
Definition: radix.h:44
@ RPT_OPTIONALSET
Definition: radix.h:51
@ RPT_IP
Definition: radix.h:42
@ RPT_HOSTNAME
Definition: radix.h:48
@ RPT_STRING
Definition: radix.h:35
@ RPT_QSTRING
Definition: radix.h:36
@ RPT_ESTRING
Definition: radix.h:37
@ RPT_FLOAT
Definition: radix.h:43
gchar ** r_find_all_applicable_nodes(RNode *root, gchar *key, gint keylen, RNodeGetValueFunc value_func)
Definition: radix.c:1574
void r_insert_node(RNode *root, gchar *key, gpointer value, const gchar *capture_prefix, RNodeGetValueFunc value_func, const gchar *location)
Definition: radix.c:1010
void r_free_node(RNode *node, void(*free_fn)(gpointer data))
Definition: radix.c:1621
RNode * r_find_node_dbg(RNode *root, gchar *key, gint keylen, GArray *matches, GArray *dbg_list)
Definition: radix.c:1561
gchar *(* RNodeGetValueFunc)(gpointer value)
Definition: radix.h:87
RNode * r_new_node(const gchar *key, gpointer value)
Definition: radix.c:1602
RNode * r_find_node(RNode *root, gchar *key, gint keylen, GArray *matches)
Definition: radix.c:1549
gint match_len
Definition: radix.h:111
RParserNode * pnode
Definition: radix.h:108
gint match_off
Definition: radix.h:110
RNode * node
Definition: radix.h:107
gint i
Definition: radix.h:109
guint8 type
Definition: radix.h:65
guint16 len
Definition: radix.h:63
guint16 ofs
Definition: radix.h:64
gchar * match
Definition: radix.h:60
NVHandle handle
Definition: radix.h:62
LogMessageValueType value_type
Definition: radix.h:80
gchar last
Definition: radix.h:78
gchar first
Definition: radix.h:77
NVHandle handle
Definition: radix.h:81
gchar * param
Definition: radix.h:73
guint8 parser_type
Definition: radix.h:79
gpointer state
Definition: radix.h:75
gchar * pdb_location
Definition: radix.h:97
gchar * key
Definition: radix.h:93
gpointer value
Definition: radix.h:96
RNode ** pchildren
Definition: radix.h:102
guint num_pchildren
Definition: radix.h:101
RNode ** children
Definition: radix.h:99
guint num_children
Definition: radix.h:98
RParserNode * parser
Definition: radix.h:95
gint keylen
Definition: radix.h:94
void free_fn(CacheResolver *self)
Definition: test_cache.c:38
GString * value
Definition: test_decode.c:28
struct tm key
Definition: cache.c:63