• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* Copyright (c) 2013 The Chromium Authors. All rights reserved.
2  * Use of this source code is governed by a BSD-style license that can be
3  * found in the LICENSE file. */
4 
5 #ifndef LIBRARIES_NACL_IO_LOG_H_
6 #define LIBRARIES_NACL_IO_LOG_H_
7 
8 #include "sdk_util/macros.h"
9 
10 #define LOG_PREFIX "nacl_io: "
11 
12 #if NACL_IO_LOGGING
13 #define LOG_TRACE(format, ...) \
14   nacl_io_log(LOG_PREFIX format "\n", ##__VA_ARGS__)
15 #else
16 #define LOG_TRACE(format, ...)
17 #endif
18 
19 #define LOG_ERROR(format, ...) \
20   nacl_io_log(LOG_PREFIX "error: " format "\n", ##__VA_ARGS__)
21 
22 #define LOG_WARN(format, ...) \
23   nacl_io_log(LOG_PREFIX "warning: " format "\n", ##__VA_ARGS__)
24 
25 EXTERN_C_BEGIN
26 
27 /*
28  * Low level logging function for nacl_io log messages.
29  *
30  * This function sends its output directly to the IRT standard out
31  * file descriptor, which by default will apear on the standard out
32  * or chrome or sel_ldr.
33  */
34 void nacl_io_log(const char* format, ...) PRINTF_LIKE(1, 2);
35 
36 EXTERN_C_END
37 
38 #endif  /* LIBRARIES_NACL_IO_LOG_H_ */
39