Removed libcurl dependency and fixed avgTime round in dashboard

This commit is contained in:
BenDroid 2017-11-07 18:51:55 +01:00
parent cfb60876b6
commit 1cf1e38077
7 changed files with 45 additions and 23 deletions

View file

@ -249,14 +249,6 @@ if (WITH_CC)
message(FATAL_ERROR "microhttpd NOT found: use `-DWITH_CC=OFF` to build without CC Server support") message(FATAL_ERROR "microhttpd NOT found: use `-DWITH_CC=OFF` to build without CC Server support")
endif() endif()
find_package(CURL)
if (CURL_FOUND)
include_directories(${CURL_INCLUDE_DIRS})
else()
message(FATAL_ERROR "curl NOT found: use `-DWITH_CC=OFF` to build without CC Server support")
endif()
set(HEADERS_CC_COMMON set(HEADERS_CC_COMMON
src/cc/ControlCommand.h src/cc/ControlCommand.h
src/cc/ClientStatus.h) src/cc/ClientStatus.h)
@ -292,11 +284,11 @@ include_directories(src/3rdparty)
include_directories(${UV_INCLUDE_DIR}) include_directories(${UV_INCLUDE_DIR})
add_executable(xmrigMiner ${HEADERS} ${SOURCES} ${HEADERS_COMMON} ${SOURCES_COMMON} ${SOURCES_OS} ${SOURCES_CPUID} ${HEADERS_CRYPTO} ${SOURCES_CRYPTO} ${SOURCES_SYSLOG} ${HTTPD_SOURCES} ${SOURCES_CC_COMMON} ${HEADERS_CC_COMMON} ${SOURCES_CC_CLIENT} ${HEADERS_CC_CLIENT}) add_executable(xmrigMiner ${HEADERS} ${SOURCES} ${HEADERS_COMMON} ${SOURCES_COMMON} ${SOURCES_OS} ${SOURCES_CPUID} ${HEADERS_CRYPTO} ${SOURCES_CRYPTO} ${SOURCES_SYSLOG} ${HTTPD_SOURCES} ${SOURCES_CC_COMMON} ${HEADERS_CC_COMMON} ${SOURCES_CC_CLIENT} ${HEADERS_CC_CLIENT})
target_link_libraries(xmrigMiner ${UV_LIBRARIES} ${MHD_LIBRARY} ${CURL_LIBRARY} ${EXTRA_LIBS} ${CPUID_LIB}) target_link_libraries(xmrigMiner ${UV_LIBRARIES} ${MHD_LIBRARY} ${EXTRA_LIBS} ${CPUID_LIB})
add_executable(xmrigDaemon src/cc/XMRigd.cpp res/app.rc) add_executable(xmrigDaemon src/cc/XMRigd.cpp res/app.rc)
if (WITH_CC AND MHD_FOUND AND CURL_FOUND) if (WITH_CC AND MHD_FOUND)
add_executable(xmrigCCServer ${HEADERS_COMMON} ${SOURCES_COMMON} ${SOURCES_OS} ${SOURCES_CPUID} ${SOURCES_SYSLOG} ${SOURCES_CC_COMMON} ${HEADERS_CC_COMMON} ${SOURCES_CC_SERVER} ${HEADERS_CC_SERVER}) add_executable(xmrigCCServer ${HEADERS_COMMON} ${SOURCES_COMMON} ${SOURCES_OS} ${SOURCES_CPUID} ${SOURCES_SYSLOG} ${SOURCES_CC_COMMON} ${HEADERS_CC_COMMON} ${SOURCES_CC_SERVER} ${HEADERS_CC_SERVER})
target_link_libraries(xmrigCCServer ${UV_LIBRARIES} ${MHD_LIBRARY} ${EXTRA_LIBS} ${CPUID_LIB}) target_link_libraries(xmrigCCServer ${UV_LIBRARIES} ${MHD_LIBRARY} ${EXTRA_LIBS} ${CPUID_LIB})
set_target_properties(xmrigCCServer PROPERTIES COMPILE_FLAGS "-DXMRIG_CC_SERVER ${SHARED_FLAGS}") set_target_properties(xmrigCCServer PROPERTIES COMPILE_FLAGS "-DXMRIG_CC_SERVER ${SHARED_FLAGS}")

View file

@ -96,12 +96,12 @@ $(document).ready(function() {
return a + b; return a + b;
}, 0 ); }, 0 );
avgTimeTotal = api avgTimeTotal = round(api
.column(9) .column(9)
.data() .data()
.reduce( function (a, b) { .reduce( function (a, b) {
return a + b; return a + b;
}, 0 )/end; }, 0 )/end);
sumSharesGood = api sumSharesGood = api
.column(10) .column(10)

View file

@ -147,7 +147,7 @@ int App::start()
# endif # endif
# ifndef XMRIG_NO_CC # ifndef XMRIG_NO_CC
if (m_options->ccUrl()) { if (m_options->ccHost() && m_options->ccPort() > 0) {
m_ccclient = new CCClient(m_options); m_ccclient = new CCClient(m_options);
} else { } else {
LOG_WARN("Please configure CC-Url and restart. CC feature is now deactivated."); LOG_WARN("Please configure CC-Url and restart. CC feature is now deactivated.");

View file

@ -31,6 +31,8 @@
# include "getopt/getopt.h" # include "getopt/getopt.h"
#else #else
# include <getopt.h> # include <getopt.h>
#include <sstream>
#endif #endif
@ -260,7 +262,7 @@ Options::Options(int argc, char **argv) :
m_apiWorkerId(nullptr), m_apiWorkerId(nullptr),
m_logFile(nullptr), m_logFile(nullptr),
m_userAgent(nullptr), m_userAgent(nullptr),
m_ccUrl(nullptr), m_ccHost(nullptr),
m_ccToken(nullptr), m_ccToken(nullptr),
m_ccWorkerId(nullptr), m_ccWorkerId(nullptr),
m_ccAdminUser(nullptr), m_ccAdminUser(nullptr),
@ -444,9 +446,7 @@ bool Options::parseArg(int key, const char *arg)
break; break;
case 4003: /* --cc-url */ case 4003: /* --cc-url */
free(m_ccUrl); return parseCCUrl(arg);
m_ccUrl = strdup(arg);
break;
case 4004: /* --cc-access-token */ case 4004: /* --cc-access-token */
free(m_ccToken); free(m_ccToken);
@ -494,7 +494,7 @@ bool Options::parseArg(int key, const char *arg)
case 4006: /* --cc-port */ case 4006: /* --cc-port */
return parseArg(key, strtol(arg, nullptr, 10)); return parseArg(key, strtol(arg, nullptr, 10));
case 4012: /* --cc-update-interval-c */ case 4012: /* --cc-update-interval-c */
return parseArg(key, strtol(arg, nullptr, 10)); return parseArg(key, strtol(arg, nullptr, 10));
case 'B': /* --background */ case 'B': /* --background */
case 'k': /* --keepalive */ case 'k': /* --keepalive */
@ -878,3 +878,30 @@ int Options::getAlgoVariantLite() const
return m_algoVariant; return m_algoVariant;
} }
#endif #endif
bool Options::parseCCUrl(const char* url)
{
free(m_ccHost);
const char *port = strchr(url, ':');
if (!port) {
m_ccHost = strdup(url);
m_ccPort = kDefaultCCPort;
} else {
const size_t size = port++ - url + 1;
m_ccHost = static_cast<char*>(malloc(size));
memcpy(m_ccHost, url, size - 1);
m_ccHost[size - 1] = '\0';
m_ccPort = (uint16_t) strtol(port, nullptr, 10);
if (m_ccPort < 0 || m_ccPort > 65536) {
m_ccPort = kDefaultCCPort;
return false;
}
}
return true;
}

View file

@ -68,7 +68,7 @@ public:
inline const char *apiWorkerId() const { return m_apiWorkerId; } inline const char *apiWorkerId() const { return m_apiWorkerId; }
inline const char *logFile() const { return m_logFile; } inline const char *logFile() const { return m_logFile; }
inline const char *userAgent() const { return m_userAgent; } inline const char *userAgent() const { return m_userAgent; }
inline const char *ccUrl() const { return m_ccUrl; } inline const char *ccHost() const { return m_ccHost; }
inline const char *ccToken() const { return m_ccToken; } inline const char *ccToken() const { return m_ccToken; }
inline const char *ccWorkerId() const { return m_ccWorkerId; } inline const char *ccWorkerId() const { return m_ccWorkerId; }
inline const char *ccAdminUser() const { return m_ccAdminUser; } inline const char *ccAdminUser() const { return m_ccAdminUser; }
@ -94,6 +94,8 @@ public:
const char *algoName() const; const char *algoName() const;
private: private:
constexpr static uint16_t kDefaultCCPort = 3344;
Options(int argc, char **argv); Options(int argc, char **argv);
~Options(); ~Options();
@ -105,6 +107,7 @@ private:
bool parseArg(int key, const char *arg); bool parseArg(int key, const char *arg);
bool parseArg(int key, uint64_t arg); bool parseArg(int key, uint64_t arg);
bool parseBoolean(int key, bool enable); bool parseBoolean(int key, bool enable);
bool parseCCUrl(const char *arg);
Url *parseUrl(const char *arg) const; Url *parseUrl(const char *arg) const;
void parseConfig(const char *fileName); void parseConfig(const char *fileName);
void parseJSON(const struct option *option, const rapidjson::Value &object); void parseJSON(const struct option *option, const rapidjson::Value &object);
@ -132,7 +135,7 @@ private:
char *m_apiWorkerId; char *m_apiWorkerId;
char *m_logFile; char *m_logFile;
char *m_userAgent; char *m_userAgent;
char *m_ccUrl; char *m_ccHost;
char *m_ccToken; char *m_ccToken;
char *m_ccWorkerId; char *m_ccWorkerId;
char *m_ccAdminUser; char *m_ccAdminUser;

View file

@ -141,11 +141,11 @@ static void print_api()
#ifndef XMRIG_NO_CC #ifndef XMRIG_NO_CC
static void print_cc() static void print_cc()
{ {
if (Options::i()->ccUrl() == nullptr) { if (Options::i()->ccHost() == nullptr) {
return; return;
} }
Log::i()->text(Options::i()->colors() ? "\x1B[01;32m * \x1B[01;37mCC Server: \x1B[01;36m%s" : " * CC Server: %s", Options::i()->ccUrl()); Log::i()->text(Options::i()->colors() ? "\x1B[01;32m * \x1B[01;37mCC Server: \x1B[01;36m%s:%d" : " * CC Server: %s:%d", Options::i()->ccHost(), Options::i()->ccPort());
} }
#endif #endif

2
src/cc

@ -1 +1 @@
Subproject commit 5939084c83dfc7f0bbbf87c631365075685dd782 Subproject commit 9d64970ae2abd1095ed6cff67ddaceb968373d0d