summaryrefslogtreecommitdiffstats
path: root/xmrstak/backend/cpu
diff options
context:
space:
mode:
authorpsychocrypt <psychocryptHPC@gmail.com>2017-12-26 23:37:38 +0100
committerGitHub <noreply@github.com>2017-12-26 23:37:38 +0100
commit85edb88f2919eaba4a44fad372229a144fffa868 (patch)
tree2e39df6dc5c41e2e359f62bd79a9cf5846966236 /xmrstak/backend/cpu
parent756466de67907ab4bcfdd1b0235c14b585f62347 (diff)
parentb216f39a52d87e48b2399da5e3272a9a464ac359 (diff)
downloadxmr-stak-85edb88f2919eaba4a44fad372229a144fffa868.zip
xmr-stak-85edb88f2919eaba4a44fad372229a144fffa868.tar.gz
Merge pull request #702 from fireice-uk/topic-on-demand-elevation
On-demand elevation
Diffstat (limited to 'xmrstak/backend/cpu')
-rw-r--r--xmrstak/backend/cpu/crypto/cryptonight_common.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/xmrstak/backend/cpu/crypto/cryptonight_common.cpp b/xmrstak/backend/cpu/crypto/cryptonight_common.cpp
index 8b2207d..547b104 100644
--- a/xmrstak/backend/cpu/crypto/cryptonight_common.cpp
+++ b/xmrstak/backend/cpu/crypto/cryptonight_common.cpp
@@ -31,6 +31,7 @@ extern "C"
#include "cryptonight.h"
#include "cryptonight_aesni.h"
#include "xmrstak/backend/cryptonight.hpp"
+#include "xmrstak/misc/console.hpp"
#include "xmrstak/jconf.hpp"
#include <stdio.h>
#include <stdlib.h>
@@ -73,6 +74,8 @@ void do_skein_hash(const void* input, size_t len, char* output) {
void (* const extra_hashes[4])(const void *, size_t, char *) = {do_blake_hash, do_groestl_hash, do_jh_hash, do_skein_hash};
#ifdef _WIN32
+#include "xmrstak/misc/uac.hpp"
+
BOOL bRebootDesirable = FALSE; //If VirtualAlloc fails, suggest a reboot
BOOL AddPrivilege(TCHAR* pszPrivilege)
@@ -176,6 +179,9 @@ size_t cryptonight_init(size_t use_fast_mem, size_t use_mlock, alloc_msg* msg)
if(AddPrivilege(TEXT("SeLockMemoryPrivilege")) == 0)
{
+ printer::inst()->print_msg(L0, "Elevating because we need to set up fast memory privileges.");
+ RequestElevation();
+
if(AddLargePageRights())
{
msg->warning = "Added SeLockMemoryPrivilege to the current account. You need to reboot for it to work";
OpenPOWER on IntegriCloud