Go to the documentation of this file.
40 if (eve_user_callbacks == NULL) {
41 eve_user_callbacks = cb;
44 while (current->
next != NULL) {
45 current = current->
next;
61 static bool IsBuiltinTypeName(
const char *
name)
63 const char *builtin[] = {
70 for (
int i = 0;; i++) {
71 if (builtin[i] == NULL) {
74 if (strcmp(builtin[i],
name) == 0) {
85 if (strcmp(
name, plugin->
name) == 0) {
102 if (IsBuiltinTypeName(plugin->
name)) {
103 SCLogError(
"Eve file type name conflicts with built-in type: %s", plugin->
name);
110 if (strcmp(existing->
name, plugin->
name) == 0) {
111 SCLogError(
"Eve file type name conflicts with previously registered type: %s",
struct EveUserCallback_ EveUserCallback
bool SCEveRegisterCallback(SCEveUserCallbackFn fn, void *user)
Register a callback for adding extra information to EVE logs.
SCEveUserCallbackFn Callback
#define TAILQ_FOREACH(var, head, field)
#define TAILQ_INSERT_TAIL(head, elm, field)
#define TAILQ_HEAD_INITIALIZER(head)
Per thread variable structure.
bool SCRegisterEveFileType(SCEveFileType *plugin)
Register an Eve file type.
const char * name
The name of the output, used in the configuration.
struct EveUserCallback_ * next
#define SCLogError(...)
Macro used to log ERROR messages.
#define TAILQ_HEAD(name, type)
SCEveFileType * SCEveFindFileType(const char *name)
void(* SCEveUserCallbackFn)(ThreadVars *tv, const Packet *p, Flow *f, SCJsonBuilder *jb, void *user)
Function type for EVE callbacks.
void SCEveRunCallbacks(ThreadVars *tv, const Packet *p, Flow *f, SCJsonBuilder *jb)
Structure used to define an EVE output file type.