• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2 **
3 ** Copyright 2017, The Android Open Source Project
4 **
5 ** This file is dual licensed.  It may be redistributed and/or modified
6 ** under the terms of the Apache 2.0 License OR version 2 of the GNU
7 ** General Public License.
8 */
9 
10 #ifndef _LIBS_LOG_SAFETYNET_H
11 #define _LIBS_LOG_SAFETYNET_H
12 
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16 
17 #ifndef _ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE
18 #ifndef __ANDROID_API__
19 #define __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE 1
20 #elif __ANDROID_API__ > 22 /* > Lollipop */
21 #define __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE 1
22 #else
23 #define __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE 0
24 #endif
25 #endif
26 
27 #if __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE
28 
29 #define android_errorWriteLog(tag, subTag) \
30   __android_log_error_write(tag, subTag, -1, NULL, 0)
31 
32 #define android_errorWriteWithInfoLog(tag, subTag, uid, data, dataLen) \
33   __android_log_error_write(tag, subTag, uid, data, dataLen)
34 
35 int __android_log_error_write(int tag, const char* subTag, int32_t uid,
36                               const char* data, uint32_t dataLen);
37 
38 #endif /* __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE */
39 
40 #ifdef __cplusplus
41 }
42 #endif
43 
44 #endif /* _LIBS_LOG_SAFETYNET_H */
45