|
|
|||
File indexing completed on 2026-05-10 08:42:48
0001 //===-- ZipFileResolver.h ---------------------------------------*- C++ -*-===// 0002 // 0003 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 0004 // See https://llvm.org/LICENSE.txt for license information. 0005 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 0006 // 0007 //===----------------------------------------------------------------------===// 0008 0009 #ifndef LLDB_HOST_ZIPFILERESOLVER_H 0010 #define LLDB_HOST_ZIPFILERESOLVER_H 0011 0012 #include "lldb/lldb-private.h" 0013 0014 namespace lldb_private { 0015 0016 /// In Android API level 23 and above, bionic dynamic linker is able to load 0017 /// .so file directly from APK or .zip file. This is a utility class to resolve 0018 /// the file spec in order to get the zip path and the .so file offset and size 0019 /// if the file spec contains "zip_path!/so_path". 0020 /// https://android.googlesource.com/platform/bionic/+/master/ 0021 /// android-changes-for-ndk-developers.md# 0022 /// opening-shared-libraries-directly-from-an-apk 0023 class ZipFileResolver { 0024 public: 0025 enum FileKind { 0026 eFileKindInvalid = 0, 0027 eFileKindNormal, 0028 eFileKindZip, 0029 }; 0030 0031 static bool ResolveSharedLibraryPath(const FileSpec &file_spec, 0032 FileKind &file_kind, 0033 std::string &file_path, 0034 lldb::offset_t &so_file_offset, 0035 lldb::offset_t &so_file_size); 0036 }; 0037 0038 } // end of namespace lldb_private 0039 0040 #endif // LLDB_HOST_ZIPFILERESOLVER_H
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|