Fix an issue where the log option is not applied properly
[platform/upstream/connman.git] / include / log.h
old mode 100644 (file)
new mode 100755 (executable)
index cf5d190..9403633
@@ -2,7 +2,7 @@
  *
  *  Connection Manager
  *
- *  Copyright (C) 2007-2010  Intel Corporation. All rights reserved.
+ *  Copyright (C) 2007-2013  Intel Corporation. All rights reserved.
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License version 2 as
 #ifndef __CONNMAN_LOG_H
 #define __CONNMAN_LOG_H
 
+#if defined TIZEN_EXT
+#include <stdbool.h>
+#endif
+
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -41,10 +45,22 @@ void connman_error(const char *format, ...)
 void connman_debug(const char *format, ...)
                                __attribute__((format(printf, 1, 2)));
 
+#define connman_warn_once(fmt, arg...) do {            \
+       static bool printed;                            \
+       if (!printed) {                                 \
+               connman_warn(fmt, ## arg);              \
+               printed = true;                         \
+       }                                               \
+} while (0)
+
 struct connman_debug_desc {
        const char *name;
        const char *file;
+#if defined TIZEN_EXT
+#define CONNMAN_DEBUG_FLAG_DEFAULT (1)
+#else
 #define CONNMAN_DEBUG_FLAG_DEFAULT (0)
+#endif
 #define CONNMAN_DEBUG_FLAG_PRINT   (1 << 0)
 #define CONNMAN_DEBUG_FLAG_ALIAS   (1 << 1)
        unsigned int flags;
@@ -65,15 +81,23 @@ struct connman_debug_desc {
  * name it is called in.
  */
 #define DBG(fmt, arg...) do { \
-       static struct connman_debug_desc desc \
+       static struct connman_debug_desc __connman_debug_desc \
        __attribute__((used, section("__debug"), aligned(8))) = { \
                .file = __FILE__, .flags = CONNMAN_DEBUG_FLAG_DEFAULT, \
        }; \
-       if (desc.flags & CONNMAN_DEBUG_FLAG_PRINT) \
+       if (__connman_debug_desc.flags & CONNMAN_DEBUG_FLAG_PRINT) \
                connman_debug("%s:%s() " fmt, \
                                        __FILE__, __FUNCTION__ , ## arg); \
 } while (0)
 
+#if defined TIZEN_EXT
+#define simplified_log get_simple_log_option()
+bool get_simple_log_option(void);
+void set_simple_log_option(bool option);
+void set_dlog_logging_option(bool option);
+void set_file_logging_option(bool option);
+#endif
+
 #ifdef __cplusplus
 }
 #endif