summaryrefslogtreecommitdiff
path: root/src/inc_k/opt.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/inc_k/opt.h')
-rw-r--r--src/inc_k/opt.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/src/inc_k/opt.h b/src/inc_k/opt.h
new file mode 100644
index 0000000..028972d
--- /dev/null
+++ b/src/inc_k/opt.h
@@ -0,0 +1,56 @@
+#ifndef _OPT_H
+#define _OPT_H
+
+
+#ifndef INT64_H
+#define INT64_H
+typedef long long int64;
+#endif
+
+#ifndef U_INT8_H
+#define U_INT8_H
+typedef unsigned char uint8;
+#endif
+
+#ifndef U_INT64_H
+#define U_INT64_H
+typedef unsigned long long uint64;
+#endif
+
+#ifndef U_INT16_H
+#define U_INT16_H
+typedef unsigned short uint16;
+#endif
+
+#ifndef U_LONG64_H
+#define U_LONG64_H
+typedef unsigned long ulong64;
+#endif
+
+#ifndef U_INT32_H
+#define U_INT32_H
+typedef unsigned int uint32;
+#endif
+
+
+#define OPT_STATUS_COMPLETE 0
+#define OPT_STATUS_FRAG 1
+#define OPT_STATUS_FRAG_END 2
+
+typedef void* opt_t;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+opt_t create_opt(int opt_type, int opt_status, const char* opt_name, const void* opt_value, uint32 opt_len);
+void destroy_opt(opt_t opt);
+
+void append_nested_opt(opt_t ext_opt, opt_t inner_opt);
+uint32 get_opt_size(opt_t opt);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif