apply device settings to simple devices with config specified from the interface...
[project/netifd.git] / netifd.h
index 4129af7..2167d6f 100644 (file)
--- a/netifd.h
+++ b/netifd.h
@@ -28,6 +28,14 @@ extern char *hotplug_cmd_path;
 extern unsigned int debug_mask;
 
 enum {
+       L_CRIT,
+       L_WARNING,
+       L_NOTICE,
+       L_INFO,
+       L_DEBUG
+};
+
+enum {
        DEBUG_SYSTEM    = 0,
        DEBUG_DEVICE    = 1,
        DEBUG_INTERFACE = 2,
@@ -44,6 +52,8 @@ enum {
 #define D(level, format, ...) no_debug(DEBUG_ ## level, format, ## __VA_ARGS__)
 #endif
 
+#define LOG_BUF_SIZE   256
+
 static inline void no_debug(int level, const char *fmt, ...)
 {
 }
@@ -59,8 +69,17 @@ struct netifd_process {
        struct uloop_process uloop;
        void (*cb)(struct netifd_process *, int ret);
        int dir_fd;
+
+       struct netifd_fd log_fd;
+       struct uloop_fd log_uloop;
+       const char *log_prefix;
+       char *log_buf;
+       int log_buf_ofs;
+       bool log_overflow;
 };
 
+void netifd_log_message(int priority, const char *format, ...);
+
 int netifd_start_process(const char **argv, char **env, struct netifd_process *proc);
 void netifd_kill_process(struct netifd_process *proc);