diff options
author | Tianjie Xu <xunchang@google.com> | 2016-10-19 00:05:21 +0200 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2016-10-19 00:05:21 +0200 |
commit | 434697f06b7432a2358550eadd74fb97d617035c (patch) | |
tree | c24e3fb0f24bd693e63bfed48e497730164df079 /otautil/SysUtil.h | |
parent | Merge "Change StringValue to use std::string" am: 2b17b24ae5 (diff) | |
parent | resolve merge conflicts of 6fba98c to stage-aosp-master (diff) | |
download | android_bootable_recovery-434697f06b7432a2358550eadd74fb97d617035c.tar android_bootable_recovery-434697f06b7432a2358550eadd74fb97d617035c.tar.gz android_bootable_recovery-434697f06b7432a2358550eadd74fb97d617035c.tar.bz2 android_bootable_recovery-434697f06b7432a2358550eadd74fb97d617035c.tar.lz android_bootable_recovery-434697f06b7432a2358550eadd74fb97d617035c.tar.xz android_bootable_recovery-434697f06b7432a2358550eadd74fb97d617035c.tar.zst android_bootable_recovery-434697f06b7432a2358550eadd74fb97d617035c.zip |
Diffstat (limited to 'otautil/SysUtil.h')
-rw-r--r-- | otautil/SysUtil.h | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/otautil/SysUtil.h b/otautil/SysUtil.h new file mode 100644 index 000000000..7adff1e54 --- /dev/null +++ b/otautil/SysUtil.h @@ -0,0 +1,52 @@ +/* + * Copyright 2006 The Android Open Source Project + * + * System utilities. + */ +#ifndef _MINZIP_SYSUTIL +#define _MINZIP_SYSUTIL + +#include <stdio.h> +#include <sys/types.h> + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct MappedRange { + void* addr; + size_t length; +} MappedRange; + +/* + * Use this to keep track of mapped segments. + */ +typedef struct MemMapping { + unsigned char* addr; /* start of data */ + size_t length; /* length of data */ + + int range_count; + MappedRange* ranges; +} MemMapping; + +/* + * Map a file into a private, read-only memory segment. If 'fn' + * begins with an '@' character, it is a map of blocks to be mapped, + * otherwise it is treated as an ordinary file. + * + * On success, "pMap" is filled in, and zero is returned. + */ +int sysMapFile(const char* fn, MemMapping* pMap); + +/* + * Release the pages associated with a shared memory segment. + * + * This does not free "pMap"; it just releases the memory. + */ +void sysReleaseMap(MemMapping* pMap); + +#ifdef __cplusplus +} +#endif + +#endif /*_MINZIP_SYSUTIL*/ |