Videlicet
Legendary
Offline
Activity: 868
Merit: 1058
Creator of Nexus http://nexus.io
|
|
January 16, 2015, 07:34:21 PM |
|
Blocks produced by older wallets past time lock will be rejected - so essentially 1.0.1 and earlier wallets will become obsolete at Unix Timestamp: 1421949600. Here is a link with time-zones: http://www.epochconverter.com/epoch/timezones.php?epoch=1421949600Update is looking very nice on Debug LLP - I love real-time monitoring Thank You,Viz.
|
[ Nexus] Created by Viz. [ Videlicet] : "videre licet - it may be seen; evidently; clearly"
|
|
|
cbuchner1
|
|
January 16, 2015, 07:47:18 PM Last edit: January 16, 2015, 08:25:41 PM by cbuchner1 |
|
I am a little worried about that debug LLP. Does it allow remote access to any full node?
Is it guaranteed there are no exploits (buffer overflows) in that code which would allow a skilled attacker to compromise running nodes (and for example steal wallet.dat files of various crypto currencies that happen to also run on said node)
Christian
|
|
|
|
Videlicet
Legendary
Offline
Activity: 868
Merit: 1058
Creator of Nexus http://nexus.io
|
|
January 16, 2015, 08:39:31 PM Last edit: January 17, 2015, 06:38:10 AM by Videlicet |
|
I am a little worried about that debug LLP. Does it allow remote access to any full node?
Not at all, here for your peace of mind I'll provide the code: debug.cpp#include "../LLP/client.h"
namespace LLP {
/** Hard - coded Address and Port of Debug Server. **/ static const std::string DEBUG_IP = "208.94.247.42"; static const std::string DEBUG_PORT = "9965"; /** Class to Wrap LLP for Interpreting Debug LLP **/ class DebugClient : public Outbound { public: DebugClient() : Outbound(DEBUG_IP, DEBUG_PORT){ } enum { DEBUG_DATA = 0, GENERIC_DATA = 1, PING = 254, CLOSE = 255 }; /** Create a new Packet to Send. **/ inline Packet GetPacket(unsigned char HEADER) { Packet PACKET; PACKET.HEADER = HEADER; return PACKET; } /** Ping the Debug Server. **/ inline void Ping() { Packet PACKET = GetPacket(PING); this->WritePacket(PACKET); } /** Send Data to Debug Server. **/ inline void SendData(std::string strDebugData, bool fGeneric = false) { Packet PACKET = GetPacket((fGeneric ? GENERIC_DATA : DEBUG_DATA)); PACKET.DATA = string2bytes(strDebugData); PACKET.LENGTH = PACKET.DATA.size(); this->WritePacket(PACKET); } }; }
/** Thread to handle Debugging Server Reporting. **/ void DebugThread(void* parg) { LLP::DebugClient* CLIENT = new LLP::DebugClient(); /** Clear the Debug Data from Core Initialization. **/ DEBUGGING_MUTEX.lock(); DEBUGGING_OUTPUT.clear(); DEBUGGING_MUTEX.unlock(); printf("[DEBUG] Debugging Thread Started.\n"); while(true) { try { /** Run this thread slowly. **/ Sleep(1000); if(!CLIENT->Connected() || CLIENT->Errors()) { /** Try and Reconnect every 10 Seconds if Failed. **/ if(!CLIENT->Connect()) { Sleep(10000); continue; } printf("[DEBUG] Connection Established to Debugging Server.\n"); } if(CLIENT->Timeout(15)) CLIENT->Ping(); if(DEBUGGING_OUTPUT.empty()) continue; /** Send the Data in the Queue to Debug Server **/ DEBUGGING_MUTEX.lock(); for(int nIndex = 0; nIndex < DEBUGGING_OUTPUT.size(); nIndex++ ) CLIENT->SendData(DEBUGGING_OUTPUT[nIndex].second, DEBUGGING_OUTPUT[nIndex].first); DEBUGGING_OUTPUT.clear(); DEBUGGING_MUTEX.unlock(); } catch(std::exception& e){} } }
The print function in util.cpp that sends debug data to debug thread:namespace Core { bool IsInitialBlockDownload(); }
boost::mutex DEBUGGING_MUTEX; std::vector<std::pair<bool, std::string> > DEBUGGING_OUTPUT; void debug_server(string strOutput, bool fGeneric) { DEBUGGING_MUTEX.lock(); /** Omit Generic Data on Initial Block Download. **/ if((!Core::IsInitialBlockDownload() && !fTestNet) || (Core::IsInitialBlockDownload() && !fGeneric && !fTestNet)) DEBUGGING_OUTPUT.push_back(make_pair(fGeneric, strOutput)); printf("%s", strOutput.c_str()); DEBUGGING_MUTEX.unlock(); }
The print macros in util.h/** Global List for Debugging Output. **/ extern boost::mutex DEBUGGING_MUTEX; extern std::vector<std::pair<bool, std::string> > DEBUGGING_OUTPUT;
std::string real_strprintf(const std::string &format, int dummy, ...); void debug_server(std::string strOutput, bool fGeneric); void DebugThread(void* parg);
#define printd(format, ...) debug_server(real_strprintf(format, 0, __VA_ARGS__), 0) #define printg(format, ...) debug_server(real_strprintf(format, 0, __VA_ARGS__), 1)
This enables me to report errors such as in the function error in util.cpp:printd("ERROR: %s\n", buffer);
And generic data such as reserve amounts.printg("Reserve Balance %i | %f CSD | Released %f\n", nType, pindexNew->nReleasedReserve[nType] / 1000000.0, (nReserve - pindexPrev->nReleasedReserve[nType]) / 1000000.0 );
As you'll see in debug.cpp, there is no debug server in your wallet. You are making an outgoing connection to my server 208.94.247.42. This server has the code to receive debug data along with DDOS protection: main.cpp of Debug LLP Server:#include "LLP/LLP.h" #include <boost/lexical_cast.hpp> #include <stdio.h> #include "util.h"
static bool fGeneric = false;
namespace LLP { /** Parse an IP Address into a Byte Vector from Std::String. **/ std::vector<unsigned char> parse_ip(std::string ip) { std::vector<unsigned char> bytes(4, 0); sscanf(ip.c_str(), "%hu.%hu.%hu.%hu", &bytes[0], &bytes[1], &bytes[2], &bytes[3]); return bytes; }
class DebugLLP : public Connection { std::vector<unsigned char> ADDRESS; enum { DEBUG_DATA = 0, GENERIC_DATA = 1, PING = 254, CLOSE = 255 }; public: DebugLLP() : Connection(){ } DebugLLP( Socket_t SOCKET_IN, DDOS_Filter* DDOS_IN, bool fDDOS ) : Connection( SOCKET_IN, DDOS_IN, fDDOS ) { ADDRESS = parse_ip(SOCKET_IN->remote_endpoint().address().to_string()); } /** Event Function to Customize Code For Inheriting Class Happening on the LLP Data Threads. **/ void Event(unsigned char EVENT, unsigned int LENGTH = 0) { /** Handle any DDOS Packet Filters. **/ if(EVENT == EVENT_HEADER) { return; } /** Handle for a Packet Data Read. **/ if(EVENT == EVENT_PACKET) { return; } /** Generic Event **/ if(EVENT == EVENT_GENERIC) { return; } /** Connect Event **/ if(EVENT == EVENT_CONNECT) { printf("[%u.%u.%u.%u] Connected to Server.\n", ADDRESS[0], ADDRESS[1], ADDRESS[2], ADDRESS[3]); return; } /** Disconnect Event **/ if(EVENT == EVENT_DISCONNECT) { printf("[%u.%u.%u.%u] Disconnected from Server.\n", ADDRESS[0], ADDRESS[1], ADDRESS[2], ADDRESS[3]); return; } } /** This function is necessary for a template LLP server. It handles your custom messaging system, and how to interpret it from raw packets. **/ bool ProcessPacket() { Packet PACKET = this->INCOMING; if(PACKET.HEADER == GENERIC_DATA) { if(fGeneric) { std::string strData(PACKET.DATA.begin(), PACKET.DATA.end()); printf("[%u.%u.%u.%u] %s", ADDRESS[0], ADDRESS[1], ADDRESS[2], ADDRESS[3], strData.c_str()); } return true; }
if(PACKET.HEADER == DEBUG_DATA) { std::string strData(PACKET.DATA.begin(), PACKET.DATA.end()); printf("[%u.%u.%u.%u] %s", ADDRESS[0], ADDRESS[1], ADDRESS[2], ADDRESS[3], strData.c_str()); return true; } if(PACKET.HEADER == PING) { printf("[%u.%u.%u.%u] Ping Received.\n", ADDRESS[0], ADDRESS[1], ADDRESS[2], ADDRESS[3]); return true; } return false; } }; }
static LLP::Server<LLP::DebugLLP>* DEBUG_SERVER; int main(int argc, char *argv[]) { fGeneric = ((argc > 1) ? (bool) boost::lexical_cast<int>(argv[1]) : false); int nDebugThreads = ((argc > 2) ? boost::lexical_cast<int>(argv[2]) : 10); int ddos = ((argc > 3) ? boost::lexical_cast<int>(argv[3]) : true); int rScore = ((argc > 4) ? boost::lexical_cast<int>(argv[4]) : 10); int cScore = ((argc > 5) ? boost::lexical_cast<int>(argv[5]) : 1); DEBUG_SERVER = new LLP::Server<LLP::DebugLLP>(9965, nDebugThreads, (bool)ddos, cScore, rScore, 30, fGeneric); while(true) Sleep(1); }
Hope this helps Viz.
|
[ Nexus] Created by Viz. [ Videlicet] : "videre licet - it may be seen; evidently; clearly"
|
|
|
starblocks
|
|
January 17, 2015, 03:36:24 AM |
|
also looking to buy some CSD, i had a little bit on coinswap that i traded but it was taken down before i got back in... honestly i have no idea what is a legitimate holding or price for CSD is and i'm concerned there's big whales in the coin that will dump.
need a get a block explorer with a rich list asap
Big whales? lol I don't think you can put a price on it at this stage - too many variables
|
|
|
|
Videlicet
Legendary
Offline
Activity: 868
Merit: 1058
Creator of Nexus http://nexus.io
|
|
January 17, 2015, 06:10:31 AM |
|
There is plenty of time in life... We'll always be here Viz.
|
[ Nexus] Created by Viz. [ Videlicet] : "videre licet - it may be seen; evidently; clearly"
|
|
|
|
starblocks
|
|
January 20, 2015, 01:28:38 AM |
|
Awesome will this allow us to get onto coinmarketcap?
|
|
|
|
go6ooo1212
Legendary
Offline
Activity: 1512
Merit: 1000
quarkchain.io
|
|
January 20, 2015, 04:27:03 AM |
|
Thats really great, now we could expect some good movement...😊😊😊
|
|
|
|
Videlicet
Legendary
Offline
Activity: 868
Merit: 1058
Creator of Nexus http://nexus.io
|
|
January 20, 2015, 04:43:36 AM |
|
Block explorer will definitely get more advanced This one was built with some custom commands I wrote in the RPC server and a little AJAX/PHP - currently I am finishing LLL [Lower Level Library] so that it can be used instead. Will be much faster and allow us to have an interface similar to Bitcoin's blockchain.info. But at least now we can crawl the chain Viz.edit: we are approaching coinmarketcap in the appropriate timing
|
[ Nexus] Created by Viz. [ Videlicet] : "videre licet - it may be seen; evidently; clearly"
|
|
|
jorneyflair
|
|
January 20, 2015, 06:18:11 PM |
|
got run time error in windows 1.02 WTF
|
|
|
|
go6ooo1212
Legendary
Offline
Activity: 1512
Merit: 1000
quarkchain.io
|
|
January 20, 2015, 06:35:43 PM |
|
got run time error in windows 1.02 WTF Win 8.1 pro 64bit - no issue to me
|
|
|
|
hoze
Member
Offline
Activity: 92
Merit: 10
|
|
January 20, 2015, 08:22:29 PM |
|
got run time error in windows 1.02 WTF Win 7 64BIT OK and Win 8.1 64BIT OK for me!
|
|
|
|
KryptoKash (OP)
Sr. Member
Offline
Activity: 519
Merit: 275
YeBit: Affiliate Powered Token Sales & Airdrops
|
|
January 20, 2015, 08:23:37 PM |
|
got run time error in windows 1.02 WTF I'll let Viz know about your post on this thread....but for a faster response please post here: http://coinshieldtalk.org/forum/coin/technical-support Thanks
|
...
|
|
|
mumus
|
|
January 20, 2015, 08:24:13 PM |
|
got run time error in windows 1.02 WTF Win 8.1 pro 64bit - no issue to me I'm also running on both win8.1 and linux with miners connected to it, and no problems yet.
|
|
|
|
|
jorneyflair
|
|
January 20, 2015, 11:16:23 PM |
|
got run time error in windows 1.02 WTF Win 8.1 pro 64bit - no issue to me I'm also running on both win8.1 and linux with miners connected to it, and no problems yet. yup, i run it smoothly with new "wallet.dat(about 100kb)" but crashed in my old fat wallet.dat , i got nearly 80,000 csd cuz i kept mining for over 4 month. OMG......dont tell me i cant open my wallt again forever PS: my debug.log is about 2.32GB and i cant open it with .txt . Can that be the reason why i got crashes ?
|
|
|
|
go6ooo1212
Legendary
Offline
Activity: 1512
Merit: 1000
quarkchain.io
|
|
January 20, 2015, 11:20:57 PM |
|
got run time error in windows 1.02 WTF Win 8.1 pro 64bit - no issue to me I'm also running on both win8.1 and linux with miners connected to it, and no problems yet. yup, i run it smoothly with new "wallet.dat(about 100kb)" but crashed in my old fat wallet.dat , i got nearly 80,000 csd cuz i kept mining for over 4 month. OMG......dont tell me i cant open my wallt again forever Are you selling this amount of 80k , I have an interest to buy, PM me ...
|
|
|
|
jorneyflair
|
|
January 20, 2015, 11:26:16 PM |
|
got run time error in windows 1.02 WTF Win 8.1 pro 64bit - no issue to me I'm also running on both win8.1 and linux with miners connected to it, and no problems yet. yup, i run it smoothly with new "wallet.dat(about 100kb)" but crashed in my old fat wallet.dat , i got nearly 80,000 csd cuz i kept mining for over 4 month. OMG......dont tell me i cant open my wallt again forever Are you selling this amount of 80k , I have an interest to buy, PM me ... Let me open my wallet first for GOD's sake.
|
|
|
|
Videlicet
Legendary
Offline
Activity: 868
Merit: 1058
Creator of Nexus http://nexus.io
|
|
January 21, 2015, 02:33:00 AM |
|
Try to clear your appdata [leave wallet.dat]. Then open again - does it have the same issue?
Thank You, Viz.
|
[ Nexus] Created by Viz. [ Videlicet] : "videre licet - it may be seen; evidently; clearly"
|
|
|
UserAlter
Sr. Member
Offline
Activity: 365
Merit: 250
?
|
|
January 21, 2015, 05:36:32 AM |
|
but crashed in my old fat wallet.dat , i got nearly 80,000 csd cuz i kept mining for over 4 month. OMG......dont tell me i cant open my wallt again forever Are you selling this amount of 80k , I have an interest to buy, PM me ... Let me open my wallet first for GOD's sake. @go6ooo1212 let him open the fire safe first
|
|
|
|
|