aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGav Wood <i@gavwood.com>2014-01-22 22:08:18 +0800
committerGav Wood <i@gavwood.com>2014-01-22 22:08:18 +0800
commit5afc641ea90b8ed49f99aa5d5fd40f1d6fb6e873 (patch)
tree384d77606bb4a4bd5f4078d3b3663b9941d954a7
parent129e4b4dfca26d896815f1b95e103f3f488468fc (diff)
downloaddexon-solidity-5afc641ea90b8ed49f99aa5d5fd40f1d6fb6e873.tar.gz
dexon-solidity-5afc641ea90b8ed49f99aa5d5fd40f1d6fb6e873.tar.zst
dexon-solidity-5afc641ea90b8ed49f99aa5d5fd40f1d6fb6e873.zip
Peer network code NYW.
-rw-r--r--main.cpp8
-rw-r--r--peer.cpp99
-rw-r--r--trie.cpp2
3 files changed, 106 insertions, 3 deletions
diff --git a/main.cpp b/main.cpp
index e082b6ca..2ef45166 100644
--- a/main.cpp
+++ b/main.cpp
@@ -28,15 +28,17 @@ int daggerTest();
int cryptoTest();
int stateTest();
int hexPrefixTest();
+int peerTest(int argc, char** argv);
-int main()
+int main(int argc, char** argv)
{
// hexPrefixTest();
// rlpTest();
-// trieTest();
+ trieTest();
// daggerTest();
// cryptoTest();
- stateTest();
+// stateTest();
+ peerTest(argc, argv);
return 0;
}
diff --git a/peer.cpp b/peer.cpp
new file mode 100644
index 00000000..667f132f
--- /dev/null
+++ b/peer.cpp
@@ -0,0 +1,99 @@
+/*
+ This file is part of cpp-ethereum.
+
+ cpp-ethereum is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Foobar is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Foobar. If not, see <http://www.gnu.org/licenses/>.
+*/
+/** @file peer.cpp
+ * @author Gav Wood <i@gavwood.com>
+ * @date 2014
+ * Peer Network test functions.
+ */
+
+#include <PeerNetwork.h>
+using namespace std;
+using namespace eth;
+using boost::asio::ip::tcp;
+
+int peerTest(int argc, char** argv)
+{
+ int port = 30303;
+ PeerServer s(0, port);
+ s.run();
+ /*
+ if (argc == 1)
+ {
+ boost::asio::io_service io_service;
+ tcp::acceptor acceptor_(io_service, tcp::endpoint(tcp::v4(), port));
+ tcp::socket socket_(io_service);
+ function<void()> do_accept;
+ do_accept = [&]()
+ {
+ acceptor_.async_accept(socket_, [&](boost::system::error_code ec)
+ {
+ if (!ec)
+ {
+ auto s = move(socket_);
+ enum { max_length = 1024 };
+ char data_[max_length];
+
+ function<void()> do_read;
+ do_read = [&]()
+ {
+ s.async_read_some(boost::asio::buffer(data_, max_length), [&](boost::system::error_code ec, std::size_t length)
+ {
+ if (!ec)
+ boost::asio::async_write(s, boost::asio::buffer(data_, length), [&](boost::system::error_code ec, std::size_t)
+ {
+ if (!ec)
+ do_read();
+ });
+ });
+ };
+ }
+ do_accept();
+ });
+ };
+ io_service.run();
+ }
+ else
+ {
+
+ }*/
+
+
+
+/* if (argc == 1)
+ {
+ PeerNetwork pn(0, 30303);
+ while (true)
+ {
+ usleep(100000);
+ pn.process();
+ }
+ }
+ else
+ {
+ PeerNetwork pn(0);
+ if (pn.connect("127.0.0.1", 30303))
+ cout << "CONNECTED" << endl;
+ while (true)
+ {
+ usleep(100000);
+ pn.process();
+ }
+ }*/
+
+ return 0;
+}
+
diff --git a/trie.cpp b/trie.cpp
index bb41c12c..8fe596a7 100644
--- a/trie.cpp
+++ b/trie.cpp
@@ -121,6 +121,7 @@ int trieTest()
assert(d.root() == hash256(s));
for (auto const& i: s)
{
+ (void)i;
assert(t.at(i.first) == i.second);
assert(d.at(i.first) == i.second);
}
@@ -145,6 +146,7 @@ int trieTest()
assert(d.root() == hash256(s));
for (auto const& i: s)
{
+ (void)i;
assert(t.at(i.first) == i.second);
assert(d.at(i.first) == i.second);
}