allow_use_of_lwsl_logging in user code 42/2942/1
authorAndy Green <andy.green@linaro.org>
Sat, 19 Jan 2013 03:58:07 +0000 (11:58 +0800)
committerKevron Rees <kevron_m_rees@linux.intel.com>
Thu, 7 Mar 2013 21:01:27 +0000 (13:01 -0800)
Signed-off-by: Andy Green <andy.green@linaro.org>
README-test-server
lib/libwebsockets.h
lib/private-libwebsockets.h

index 4f0926c..4f1cbdc 100644 (file)
@@ -430,6 +430,17 @@ A helper function lwsl_emit_syslog() is exported from the library to simplify
 logging to syslog.  You still need to use setlogmask, openlog and closelog
 in your user code.
 
+The logging apis are made available for user code.
+
+lwsl_err(...)
+lwsl_warn(...)
+lwsl_notice(...)
+lwsl_info(...)
+lwsl_debug(...)
+
+The difference between notice and info is that notice will be logged by default
+whereas info is ignored by default.
+
 
 Websocket version supported
 ---------------------------
index a5e283d..bc9b0cb 100644 (file)
@@ -80,6 +80,36 @@ enum lws_log_levels {
        LLL_COUNT = 9 /* set to count of valid flags */
 };
 
+extern void _lws_log(int filter, const char *format, ...);
+
+/* warn and log are always compiled in */
+#define lwsl_notice(...) _lws_log(LLL_NOTICE, __VA_ARGS__)
+#define lwsl_warn(...) _lws_log(LLL_WARN, __VA_ARGS__)
+#define lwsl_err(...) _lws_log(LLL_ERR, __VA_ARGS__)
+
+/*
+ *  weaker logging can be deselected at configure time using disable_debug
+ *  that gets rid of the overhead of checking while keeping _warn and _err
+ *  active
+ */
+#ifdef _DEBUG
+#define lwsl_info(...) _lws_log(LLL_INFO, __VA_ARGS__)
+#define lwsl_debug(...) _lws_log(LLL_DEBUG, __VA_ARGS__)
+#define lwsl_parser(...) _lws_log(LLL_PARSER, __VA_ARGS__)
+#define lwsl_header(...)  _lws_log(LLL_HEADER, __VA_ARGS__)
+#define lwsl_ext(...)  _lws_log(LLL_HEADER, __VA_ARGS__)
+#define lwsl_client(...) _lws_log(LLL_CLIENT, __VA_ARGS__)
+extern void lwsl_hexdump(void *buf, size_t len);
+#else /* no debug */
+#define lwsl_info(...)
+#define lwsl_debug(...)
+#define lwsl_parser(...)
+#define lwsl_header(...)
+#define lwsl_ext(...)
+#define lwsl_client(...)
+#define lwsl_hexdump(a, b)
+#endif
+
 enum libwebsocket_context_options {
        LWS_SERVER_OPTION_DEFEAT_CLIENT_MASK = 1,
        LWS_SERVER_OPTION_REQUIRE_VALID_OPENSSL_CLIENT_CERT = 2,
index d70bd33..db8d5e7 100644 (file)
 
 #include "libwebsockets.h"
 
-extern void _lws_log(int filter, const char *format, ...);
-
-/* notice, warn and log are always compiled in */
-#define lwsl_notice(...) _lws_log(LLL_NOTICE, __VA_ARGS__)
-#define lwsl_warn(...) _lws_log(LLL_WARN, __VA_ARGS__)
-#define lwsl_err(...) _lws_log(LLL_ERR, __VA_ARGS__)
-
-/*
- *  weaker logging can be deselected at configure time using disable_debug
- *  that gets rid of the overhead of checking while keeping _warn and _err
- *  active
- */
-#ifdef _DEBUG
-#define lwsl_info(...) _lws_log(LLL_INFO, __VA_ARGS__)
-#define lwsl_debug(...) _lws_log(LLL_DEBUG, __VA_ARGS__)
-#define lwsl_parser(...) _lws_log(LLL_PARSER, __VA_ARGS__)
-#define lwsl_header(...)  _lws_log(LLL_HEADER, __VA_ARGS__)
-#define lwsl_ext(...)  _lws_log(LLL_HEADER, __VA_ARGS__)
-#define lwsl_client(...) _lws_log(LLL_CLIENT, __VA_ARGS__)
-extern void lwsl_hexdump(void *buf, size_t len);
-#else /* no debug */
-#define lwsl_info(...)
-#define lwsl_debug(...)
-#define lwsl_parser(...)
-#define lwsl_header(...)
-#define lwsl_ext(...)
-#define lwsl_client(...)
-#define lwsl_hexdump(a, b)
-#endif
-
 /*
  * Mac OSX as well as iOS do not define the MSG_NOSIGNAL flag,
  * but happily have something equivalent in the SO_NOSIGPIPE flag.