aboutsummaryrefslogtreecommitdiff
path: root/src/miner/simpleminer_protocol_defs.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/miner/simpleminer_protocol_defs.h')
-rw-r--r--src/miner/simpleminer_protocol_defs.h104
1 files changed, 104 insertions, 0 deletions
diff --git a/src/miner/simpleminer_protocol_defs.h b/src/miner/simpleminer_protocol_defs.h
new file mode 100644
index 000000000..9b70f8cbf
--- /dev/null
+++ b/src/miner/simpleminer_protocol_defs.h
@@ -0,0 +1,104 @@
+// Copyright (c) 2012-2013 The Cryptonote developers
+// Distributed under the MIT/X11 software license, see the accompanying
+// file COPYING or http://www.opensource.org/licenses/mit-license.php.
+
+#pragma once
+#include "cryptonote_protocol/cryptonote_protocol_defs.h"
+#include "cryptonote_core/cryptonote_basic.h"
+#include "crypto/hash.h"
+#include "net/rpc_method_name.h"
+
+namespace mining
+{
+ //-----------------------------------------------
+#define CORE_RPC_STATUS_OK "OK"
+
+
+ struct job_details
+ {
+ std::string blob;
+ std::string target;
+ std::string job_id;
+
+ BEGIN_KV_SERIALIZE_MAP()
+ KV_SERIALIZE(blob)
+ KV_SERIALIZE(target)
+ KV_SERIALIZE(job_id)
+ END_KV_SERIALIZE_MAP()
+ };
+
+
+ struct COMMAND_RPC_LOGIN
+ {
+ RPC_METHOD_NAME("login");
+
+ struct request
+ {
+ std::string login;
+ std::string pass;
+
+ BEGIN_KV_SERIALIZE_MAP()
+ KV_SERIALIZE(login)
+ KV_SERIALIZE(pass)
+ END_KV_SERIALIZE_MAP()
+ };
+
+
+ struct response
+ {
+ std::string status;
+ std::string id;
+ job_details job;
+
+ BEGIN_KV_SERIALIZE_MAP()
+ KV_SERIALIZE(status)
+ KV_SERIALIZE(id)
+ KV_SERIALIZE(job)
+ END_KV_SERIALIZE_MAP()
+ };
+ };
+
+ struct COMMAND_RPC_GETJOB
+ {
+ RPC_METHOD_NAME("getjob");
+
+ struct request
+ {
+ std::string id;
+
+ BEGIN_KV_SERIALIZE_MAP()
+ KV_SERIALIZE(id)
+ END_KV_SERIALIZE_MAP()
+ };
+
+ typedef job_details response;
+ };
+
+ struct COMMAND_RPC_SUBMITSHARE
+ {
+ RPC_METHOD_NAME("submit");
+
+ struct request
+ {
+ std::string id;
+ std::string nonce;
+ std::string job_id;
+
+ BEGIN_KV_SERIALIZE_MAP()
+ KV_SERIALIZE(id)
+ KV_SERIALIZE(nonce)
+ KV_SERIALIZE(job_id)
+ END_KV_SERIALIZE_MAP()
+ };
+
+ struct response
+ {
+ std::string status;
+
+ BEGIN_KV_SERIALIZE_MAP()
+ KV_SERIALIZE(status)
+ END_KV_SERIALIZE_MAP()
+ };
+ };
+}
+