OLD | NEW |
---|---|
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium 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 CHROME_ELF_BLACKLIST_BLACKLIST_H_ | 5 #ifndef CHROME_ELF_BLACKLIST_BLACKLIST_H_ |
6 #define CHROME_ELF_BLACKLIST_BLACKLIST_H_ | 6 #define CHROME_ELF_BLACKLIST_BLACKLIST_H_ |
7 | 7 |
8 #if defined(_WIN64) | 8 #if defined(_WIN64) |
9 #include "sandbox/win/src/sandbox_nt_types.h" | 9 #include "sandbox/win/src/sandbox_nt_types.h" |
10 #endif | 10 #endif |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
64 // Returns if true if the blacklist has been initialized. | 64 // Returns if true if the blacklist has been initialized. |
65 extern "C" bool IsBlacklistInitialized(); | 65 extern "C" bool IsBlacklistInitialized(); |
66 | 66 |
67 // Adds the given dll name to the blacklist. Returns true if the dll name is in | 67 // Adds the given dll name to the blacklist. Returns true if the dll name is in |
68 // the blacklist when this returns, false on error. Note that this will copy | 68 // the blacklist when this returns, false on error. Note that this will copy |
69 // |dll_name| and will leak it on exit if the string is not subsequently removed | 69 // |dll_name| and will leak it on exit if the string is not subsequently removed |
70 // using RemoveDllFromBlacklist. | 70 // using RemoveDllFromBlacklist. |
71 extern "C" bool AddDllToBlacklist(const wchar_t* dll_name); | 71 extern "C" bool AddDllToBlacklist(const wchar_t* dll_name); |
72 | 72 |
73 // Removes the given dll name from the blacklist. Returns true if it was | 73 // Removes the given dll name from the blacklist. Returns true if it was |
74 // removed, false on error. | 74 // removed, false on error. |
robertshield
2014/02/25 03:21:40
Add a comment here and on AddDll* along the lines
csharp
2014/02/25 14:45:00
Done.
| |
75 extern "C" bool RemoveDllFromBlacklist(const wchar_t* dll_name); | 75 extern "C" bool RemoveDllFromBlacklist(const wchar_t* dll_name); |
76 | 76 |
77 // Returns a list of all the dlls that have been successfully blocked by the | |
78 // blacklist via blocked_dlls, if there is enough space (according to |size|). | |
79 // |size| will always be modified to be the number of dlls that were blocked. | |
80 // The caller doesn't own the strings and isn't expected to free them. These | |
81 // strings won't be hanging unless RemoveDllFromBlacklist is called, but it | |
82 // is only exposed in tests (and should stay that way). | |
83 extern "C" void SuccessfullyBlocked(const wchar_t** blocked_dlls, int* size); | |
84 | |
85 // Record that the dll at the given index was blocked. | |
86 void BlockedDll(int blocked_index); | |
87 | |
77 // Initializes the DLL blacklist in the current process. This should be called | 88 // Initializes the DLL blacklist in the current process. This should be called |
78 // before any undesirable DLLs might be loaded. If |force| is set to true, then | 89 // before any undesirable DLLs might be loaded. If |force| is set to true, then |
79 // initialization will take place even if a beacon is present. This is useful | 90 // initialization will take place even if a beacon is present. This is useful |
80 // for tests. | 91 // for tests. |
81 bool Initialize(bool force); | 92 bool Initialize(bool force); |
82 | 93 |
83 } // namespace blacklist | 94 } // namespace blacklist |
84 | 95 |
85 #endif // CHROME_ELF_BLACKLIST_BLACKLIST_H_ | 96 #endif // CHROME_ELF_BLACKLIST_BLACKLIST_H_ |
OLD | NEW |