Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(14)

Side by Side Diff: src/untrusted/pll_loader/pll_loader.h

Issue 1825893002: PNaCl Dynamic Linking: Added portable dependencies to shared objects. (Closed) Base URL: https://chromium.googlesource.com/native_client/src/native_client.git@master
Patch Set: Use file basename as dependency, not absolute / relative path. Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Native Client Authors. All rights reserved. 1 // Copyright 2016 The Native Client Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef NATIVE_CLIENT_SRC_UNTRUSTED_PLL_LOADER_PLL_LOADER_H_ 5 #ifndef NATIVE_CLIENT_SRC_UNTRUSTED_PLL_LOADER_PLL_LOADER_H_
6 #define NATIVE_CLIENT_SRC_UNTRUSTED_PLL_LOADER_PLL_LOADER_H_ 1 6 #define NATIVE_CLIENT_SRC_UNTRUSTED_PLL_LOADER_PLL_LOADER_H_ 1
7 7
8 #include <string> 8 #include <string>
9 #include <unordered_set> 9 #include <unordered_set>
10 #include <vector> 10 #include <vector>
(...skipping 11 matching lines...) Expand all
22 const PLLRoot *root() { return root_; } 22 const PLLRoot *root() { return root_; }
23 23
24 const char *GetExportedSymbolName(size_t i) { 24 const char *GetExportedSymbolName(size_t i) {
25 return root_->string_table + root_->exported_names[i]; 25 return root_->string_table + root_->exported_names[i];
26 } 26 }
27 27
28 const char *GetImportedSymbolName(size_t i) { 28 const char *GetImportedSymbolName(size_t i) {
29 return root_->string_table + root_->imported_names[i]; 29 return root_->string_table + root_->imported_names[i];
30 } 30 }
31 31
32 const char *GetDependenciesList() const {
Mark Seaborn 2016/03/30 23:24:57 Since these new getters don't add much, you might
Sean Klein 2016/04/01 23:12:24 I'll update "PLLModule::root()" to be a const func
33 return root_->dependencies_list;
34 }
35
36 size_t GetDependenciesCount() const {
37 return root_->dependencies_count;
38 }
39
32 // If this function returns "false", the symbol is definitely not exported. 40 // If this function returns "false", the symbol is definitely not exported.
33 // Otherwise, the symbol may or may not be exported. This is public so the 41 // Otherwise, the symbol may or may not be exported. This is public so the
34 // bloom filter can be tested. 42 // bloom filter can be tested.
35 bool IsMaybeExported(uint32_t hash); 43 bool IsMaybeExported(uint32_t hash);
36 44
37 void *GetExportedSym(const char *name); 45 void *GetExportedSym(const char *name);
38 void *InstantiateTLSBlock(); 46 void *InstantiateTLSBlock();
39 47
40 private: 48 private:
41 const PLLRoot *root_; 49 const PLLRoot *root_;
(...skipping 21 matching lines...) Expand all
63 71
64 private: 72 private:
65 // The search path used to look for "sonames". 73 // The search path used to look for "sonames".
66 std::vector<std::string> search_path_; 74 std::vector<std::string> search_path_;
67 // An unordered set of "sonames" (to see if a module has been loaded). 75 // An unordered set of "sonames" (to see if a module has been loaded).
68 std::unordered_set<std::string> sonames_; 76 std::unordered_set<std::string> sonames_;
69 std::vector<PLLModule> modules_; 77 std::vector<PLLModule> modules_;
70 }; 78 };
71 79
72 #endif 80 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698