summaryrefslogtreecommitdiffstats
path: root/base/process_util_win.cc
diff options
context:
space:
mode:
authorphajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-30 08:59:39 +0000
committerphajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-30 08:59:39 +0000
commit5d438dbad8819250385df8c0c67ff26a8586db90 (patch)
treee92c79a19a64264e7c0bede469eaa6d91af120af /base/process_util_win.cc
parent264e3cd23191c41de8310c60d981be159f65038a (diff)
downloadchromium_src-5d438dbad8819250385df8c0c67ff26a8586db90.zip
chromium_src-5d438dbad8819250385df8c0c67ff26a8586db90.tar.gz
chromium_src-5d438dbad8819250385df8c0c67ff26a8586db90.tar.bz2
Make task_manager_resource_providers.cc compile on POSIX.
TEST=Make sure that the task manager isn't obviously broken on Windows. Review URL: http://codereview.chromium.org/93067 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14934 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/process_util_win.cc')
-rw-r--r--base/process_util_win.cc16
1 files changed, 16 insertions, 0 deletions
diff --git a/base/process_util_win.cc b/base/process_util_win.cc
index 45a23e8..265c26f 100644
--- a/base/process_util_win.cc
+++ b/base/process_util_win.cc
@@ -34,6 +34,7 @@ ProcessHandle GetCurrentProcessHandle() {
}
bool OpenProcessHandle(ProcessId pid, ProcessHandle* handle) {
+ // TODO(phajdan.jr): Take even more permissions out of this list.
ProcessHandle result = OpenProcess(PROCESS_DUP_HANDLE |
PROCESS_TERMINATE |
PROCESS_QUERY_INFORMATION |
@@ -47,6 +48,21 @@ bool OpenProcessHandle(ProcessId pid, ProcessHandle* handle) {
return true;
}
+bool OpenPrivilegedProcessHandle(ProcessId pid, ProcessHandle* handle) {
+ ProcessHandle result = OpenProcess(PROCESS_DUP_HANDLE |
+ PROCESS_TERMINATE |
+ PROCESS_QUERY_INFORMATION |
+ PROCESS_VM_READ |
+ SYNCHRONIZE,
+ FALSE, pid);
+
+ if (result == INVALID_HANDLE_VALUE)
+ return false;
+
+ *handle = result;
+ return true;
+}
+
void CloseProcessHandle(ProcessHandle process) {
CloseHandle(process);
}