liblog: __android_log_error_write in vndk
Also added log_safetynet.h header. This contains a memory sensitive logging function which is used to detect attack attempts. Fixes: 37442967 Test: liblog-unit-tests on internal marlin Test: build liblog with BOARD_VNDK_VERSION := current on aosp_arm Test: libbinder vendor variant links with BOARD_VNDK_VERSION := current Change-Id: Icfcc2b1acbb3712bf4c84403870dc93401eafb15
This commit is contained in:
parent
4c8acafa25
commit
64328403b5
|
@ -32,6 +32,7 @@
|
|||
#include <log/log_main.h>
|
||||
#include <log/log_radio.h>
|
||||
#include <log/log_read.h>
|
||||
#include <log/log_safetynet.h>
|
||||
#include <log/log_system.h>
|
||||
#include <log/log_time.h>
|
||||
#include <log/uio.h> /* helper to define iovec for portability */
|
||||
|
@ -167,31 +168,6 @@ clockid_t android_log_clockid();
|
|||
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
#ifndef _ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE
|
||||
#ifndef __ANDROID_API__
|
||||
#define __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE 1
|
||||
#elif __ANDROID_API__ > 22 /* > Lollipop */
|
||||
#define __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE 1
|
||||
#else
|
||||
#define __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE 0
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE
|
||||
|
||||
#define android_errorWriteLog(tag, subTag) \
|
||||
__android_log_error_write(tag, subTag, -1, NULL, 0)
|
||||
|
||||
#define android_errorWriteWithInfoLog(tag, subTag, uid, data, dataLen) \
|
||||
__android_log_error_write(tag, subTag, uid, data, dataLen)
|
||||
|
||||
int __android_log_error_write(int tag, const char* subTag, int32_t uid,
|
||||
const char* data, uint32_t dataLen);
|
||||
|
||||
#endif /* __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE */
|
||||
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
#ifndef __ANDROID_USE_LIBLOG_CLOSE_INTERFACE
|
||||
#ifndef __ANDROID_API__
|
||||
#define __ANDROID_USE_LIBLOG_CLOSE_INTERFACE 1
|
||||
|
|
|
@ -0,0 +1,44 @@
|
|||
/*
|
||||
**
|
||||
** Copyright 2017, The Android Open Source Project
|
||||
**
|
||||
** This file is dual licensed. It may be redistributed and/or modified
|
||||
** under the terms of the Apache 2.0 License OR version 2 of the GNU
|
||||
** General Public License.
|
||||
*/
|
||||
|
||||
#ifndef _LIBS_LOG_SAFETYNET_H
|
||||
#define _LIBS_LOG_SAFETYNET_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifndef _ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE
|
||||
#ifndef __ANDROID_API__
|
||||
#define __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE 1
|
||||
#elif __ANDROID_API__ > 22 /* > Lollipop */
|
||||
#define __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE 1
|
||||
#else
|
||||
#define __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE 0
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE
|
||||
|
||||
#define android_errorWriteLog(tag, subTag) \
|
||||
__android_log_error_write(tag, subTag, -1, NULL, 0)
|
||||
|
||||
#define android_errorWriteWithInfoLog(tag, subTag, uid, data, dataLen) \
|
||||
__android_log_error_write(tag, subTag, uid, data, dataLen)
|
||||
|
||||
int __android_log_error_write(int tag, const char* subTag, int32_t uid,
|
||||
const char* data, uint32_t dataLen);
|
||||
|
||||
#endif /* __ANDROID_USE_LIBLOG_SAFETYNET_INTERFACE */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* _LIBS_LOG_SAFETYNET_H */
|
|
@ -8,6 +8,7 @@
|
|||
#include <log/log_main.h>
|
||||
#include <log/log_radio.h>
|
||||
#include <log/log_read.h>
|
||||
#include <log/log_safetynet.h>
|
||||
#include <log/log_time.h>
|
||||
|
||||
/*
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
../../include/log/log_safetynet.h
|
|
@ -33,6 +33,7 @@ LIBLOG_M {
|
|||
android_logger_get_prune_list; # vndk
|
||||
android_logger_set_prune_list; # vndk
|
||||
android_logger_get_statistics; # vndk
|
||||
__android_log_error_write; # vndk
|
||||
__android_log_is_loggable;
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue