aboutsummaryrefslogtreecommitdiff
path: root/dpid/dpid_common.h
diff options
context:
space:
mode:
Diffstat (limited to 'dpid/dpid_common.h')
-rw-r--r--dpid/dpid_common.h61
1 files changed, 61 insertions, 0 deletions
diff --git a/dpid/dpid_common.h b/dpid/dpid_common.h
new file mode 100644
index 00000000..4311a8a8
--- /dev/null
+++ b/dpid/dpid_common.h
@@ -0,0 +1,61 @@
+#ifndef DPID_COMMON_H
+#define DPID_COMMON_H
+
+/*! \file
+ * Declares common functions, global variables, and types.
+ *
+ * \todo
+ * The dpid error codes will be used in
+ * the next patch
+ */
+
+#include <stdio.h>
+#include <errno.h>
+#include <sys/types.h>
+#include <dirent.h>
+
+#include "../dlib/dlib.h"
+
+/*
+ * Debugging macros
+ */
+#define _MSG(...)
+#define MSG(...) printf("[dpid]: " __VA_ARGS__)
+#define _MSG_ERR(...)
+#define MSG_ERR(...) fprintf(stderr, "[dpid]: " __VA_ARGS__)
+
+#define dotDILLO_DPI ".dillo/dpi"
+#define dotDILLO_DPIDRC ".dillo/dpidrc"
+#define ERRMSG(CALLER, CALLED, ERR)\
+ errmsg(CALLER, CALLED, ERR, __FILE__, __LINE__)
+#define _ERRMSG(CALLER, CALLED, ERR)
+
+
+/*!
+ * Macro for calling the ckd_write function
+ */
+#define CKD_WRITE(fd, msg) ckd_write(fd, msg, __FILE__, __LINE__)
+
+
+/*! Error codes for dpid */
+enum {
+ no_errors,
+ dpid_srs_addrinuse /* dpid service request socket address already in use */
+} dpi_errno;
+
+/*! Intended for identifying dillo plugins
+ * and related files
+ */
+enum file_type {
+ DPI_FILE, /*! Any file name containing .dpi */
+ UNKNOWN_FILE
+};
+
+
+void errmsg(char *caller, char *called, int errornum, char *file, int line);
+
+int no_dotfiles(const struct dirent *filedat);
+
+ssize_t ckd_write(int fd, char *msg, char *file, int line);
+
+#endif