summaryrefslogtreecommitdiffstats
path: root/ulogd/include/ulogd/ulogd.h
diff options
context:
space:
mode:
Diffstat (limited to 'ulogd/include/ulogd/ulogd.h')
-rw-r--r--ulogd/include/ulogd/ulogd.h162
1 files changed, 0 insertions, 162 deletions
diff --git a/ulogd/include/ulogd/ulogd.h b/ulogd/include/ulogd/ulogd.h
deleted file mode 100644
index 36816dc..0000000
--- a/ulogd/include/ulogd/ulogd.h
+++ /dev/null
@@ -1,162 +0,0 @@
-#ifndef _ULOGD_H
-#define _ULOGD_H
-/* ulogd, Version $Revision$
- *
- * userspace logging daemon for netfilter ULOG target
- * of the linux 2.4 netfilter subsystem.
- *
- * (C) 2000 by Harald Welte <laforge@gnumonks.org>
- *
- * this code is released under the terms of GNU GPL
- *
- * $Id$
- */
-
-#include <libipulog/libipulog.h>
-#include <stdio.h>
-#include <signal.h> /* need this because of extension-sighandler */
-
-/* All types with MSB = 1 make use of value.ptr
- * other types use one of the union's member */
-
-/* types without length */
-#define ULOGD_RET_NONE 0x0000
-
-#define ULOGD_RET_INT8 0x0001
-#define ULOGD_RET_INT16 0x0002
-#define ULOGD_RET_INT32 0x0003
-#define ULOGD_RET_INT64 0x0004
-
-#define ULOGD_RET_UINT8 0x0011
-#define ULOGD_RET_UINT16 0x0012
-#define ULOGD_RET_UINT32 0x0013
-#define ULOGD_RET_UINT64 0x0014
-
-#define ULOGD_RET_BOOL 0x0050
-
-#define ULOGD_RET_IPADDR 0x0100
-
-/* types with length field */
-#define ULOGD_RET_STRING 0x8020
-#define ULOGD_RET_RAW 0x8030
-
-
-/* FLAGS */
-#define ULOGD_RETF_NONE 0x0000
-#define ULOGD_RETF_VALID 0x0001 /* contains a valid result */
-#define ULOGD_RETF_FREE 0x0002 /* ptr needs to be free()d */
-
-
-/* maximum length of ulogd key */
-#define ULOGD_MAX_KEYLEN 32
-
-#define ULOGD_DEBUG 1 /* debugging information */
-#define ULOGD_INFO 3
-#define ULOGD_NOTICE 5 /* abnormal/unexpected condition */
-#define ULOGD_ERROR 7 /* error condition, requires user action */
-#define ULOGD_FATAL 8 /* fatal, program aborted */
-
-typedef struct ulog_iret {
- /* next interpreter return (key) in the global list */
- struct ulog_iret *next;
- /* next interpreter in linked list for current result */
- struct ulog_iret *cur_next;
- /* length of the returned value (only for lengthed types */
- u_int32_t len;
- /* type of the returned value (ULOGD_IRET_...) */
- u_int16_t type;
- /* flags (i.e. free, ...) */
- u_int16_t flags;
- /* name of this key */
- char key[ULOGD_MAX_KEYLEN];
- /* and finally the returned value */
- union {
- u_int8_t b;
- u_int8_t ui8;
- u_int16_t ui16;
- u_int32_t ui32;
- u_int64_t ui64;
- int8_t i8;
- int16_t i16;
- int32_t i32;
- int64_t i64;
- void *ptr;
- } value;
-} ulog_iret_t;
-
-typedef struct ulog_interpreter {
- /* next interpreter in old-style linked list */
- struct ulog_interpreter *next;
- /* name of this interpreter (predefined by plugin) */
- char name[ULOGD_MAX_KEYLEN];
- /* ID for this interpreter (dynamically assigned) */
- unsigned int id;
- /* function to call for each packet */
- ulog_iret_t* (*interp)(struct ulog_interpreter *ip,
- ulog_packet_msg_t *pkt);
- /* number of keys this interpreter has */
- unsigned int key_num;
- /* keys of this particular interpreter */
- ulog_iret_t *result;
-} ulog_interpreter_t;
-
-typedef struct ulog_output {
- /* next output in the linked list */
- struct ulog_output *next;
- /* name of this ouput plugin */
- char name[ULOGD_MAX_KEYLEN];
- /* callback for initialization */
- int (*init)(void);
- /* callback for de-initialization */
- void (*fini)(void);
- /* callback function */
- int (*output)(ulog_iret_t *ret);
- /* callback function for signals (SIGHUP, ..) */
- void (*signal)(int signal);
-} ulog_output_t;
-
-/* entries of the key hash */
-struct ulogd_keyh_entry {
- ulog_interpreter_t *interp; /* interpreter for this key */
- unsigned int offset; /* offset within interpreter */
- const char *name; /* name of this particular key */
-};
-
-/***********************************************************************
- * PUBLIC INTERFACE
- ***********************************************************************/
-
-/* register a new interpreter plugin */
-void register_interpreter(ulog_interpreter_t *me);
-
-/* register a new output target */
-void register_output(ulog_output_t *me);
-
-/* allocate a new ulog_iret_t */
-ulog_iret_t *alloc_ret(const u_int16_t type, const char*);
-
-/* write a message to the daemons' logfile */
-void __ulogd_log(int level, char *file, int line, const char *message, ...);
-/* macro for logging including filename and line number */
-#define ulogd_log(level, format, args...) \
- __ulogd_log(level, __FILE__, __LINE__, format, ## args)
-/* backwards compatibility */
-#define ulogd_error(format, args...) ulogd_log(ULOGD_ERROR, format, ## args)
-
-/* get an interpreter hash id by name */
-unsigned int interh_getid(const char *name);
-
-/* get a key id if you have the name */
-unsigned int keyh_getid(const char *name);
-
-/* get a result for a given key id */
-ulog_iret_t *keyh_getres(unsigned int id);
-
-/* the key hash itself */
-extern struct ulogd_keyh_entry *ulogd_keyh;
-
-#define IS_VALID(x) (x.flags & ULOGD_RETF_VALID)
-
-#define SET_VALID(x) (x.flags |= ULOGD_RETF_VALID)
-
-#endif /* _ULOGD_H */