您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ CService函数代码示例

51自学网 2021-06-01 20:06:34
  C++
这篇教程C++ CService函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中CService函数的典型用法代码示例。如果您正苦于以下问题:C++ CService函数的具体用法?C++ CService怎么用?C++ CService使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了CService函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: ApplyProxySettings

bool static ApplyProxySettings(){    QSettings settings;    CService addrProxy(settings.value("addrProxy", "127.0.0.1:9050").toString().toStdString());    if (!settings.value("fUseProxy", false).toBool()) {        addrProxy = CService();        return false;    }    if (!addrProxy.IsValid())        return false;    if (!IsLimited(NET_IPV4))        SetProxy(NET_IPV4, addrProxy);    if (!IsLimited(NET_IPV6))        SetProxy(NET_IPV6, addrProxy);    SetNameProxy(addrProxy);    return true;}
开发者ID:CyberLizard,项目名称:bananabits,代码行数:17,


示例2: Lookup

bool Lookup(const char *pszName, std::vector<CService>& vAddr, int portDefault, bool fAllowLookup, unsigned int nMaxSolutions){    if (pszName[0] == 0)        return false;    int port = portDefault;    std::string hostname = "";    SplitHostPort(std::string(pszName), port, hostname);    std::vector<CNetAddr> vIP;    bool fRet = LookupIntern(hostname.c_str(), vIP, nMaxSolutions, fAllowLookup);    if (!fRet)        return false;    vAddr.resize(vIP.size());    for (unsigned int i = 0; i < vIP.size(); i++)        vAddr[i] = CService(vIP[i], port);    return true;}
开发者ID:TheBitcoin,项目名称:bitcoin,代码行数:17,


示例3: CScript

bool CActiveMasternode::Register(std::string strService, std::string strKeyMasternode, std::string txHash, std::string strOutputIndex, std::string strRewardAddress, std::string strRewardPercentage, std::string& errorMessage) {    CTxIn vin;    CPubKey pubKeyCollateralAddress;    CKey keyCollateralAddress;    CPubKey pubKeyMasternode;    CKey keyMasternode;    CScript rewardAddress = CScript();    int rewardPercentage = 0;    if(!darkSendSigner.SetKey(strKeyMasternode, errorMessage, keyMasternode, pubKeyMasternode))    {        LogPrintf("CActiveMasternode::Register() - Error upon calling SetKey: %s/n", errorMessage.c_str());        return false;    }    if(!GetMasterNodeVin(vin, pubKeyCollateralAddress, keyCollateralAddress, txHash, strOutputIndex)) {        errorMessage = "could not allocate vin";        LogPrintf("CActiveMasternode::Register() - Error: %s/n", errorMessage.c_str());        return false;    }    CSimplicityAddress address;    if (strRewardAddress != "")    {        if(!address.SetString(strRewardAddress))        {            LogPrintf("ActiveMasternode::Register - Invalid Reward Address/n");            return false;        }        rewardAddress.SetDestination(address.Get());        try {            rewardPercentage = boost::lexical_cast<int>( strRewardPercentage );        } catch( boost::bad_lexical_cast const& ) {            LogPrintf("ActiveMasternode::Register - Invalid Reward Percentage (Couldn't cast)/n");            return false;        }        if(rewardPercentage < 0 || rewardPercentage > 100)        {            LogPrintf("ActiveMasternode::Register - Reward Percentage Out Of Range/n");            return false;        }    }	return Register(vin, CService(strService, true), keyCollateralAddress, pubKeyCollateralAddress, keyMasternode, pubKeyMasternode, rewardAddress, rewardPercentage, errorMessage);}
开发者ID:alexudm,项目名称:Simplicity,代码行数:46,


示例4: RemoveLocal

void TorController::disconnected_cb(TorControlConnection& _conn){    // Stop advertising service when disconnected    if (service.IsValid())        RemoveLocal(service);    service = CService();    if (!reconnect)        return;    LogPrint(BCLog::TOR, "tor: Not connected to Tor control port %s, trying to reconnect/n", target);    // Single-shot timer for reconnect. Use exponential backoff.    struct timeval time = MillisToTimeval(int64_t(reconnect_timeout * 1000.0));    if (reconnect_ev)        event_add(reconnect_ev, &time);    reconnect_timeout *= RECONNECT_TIMEOUT_EXP;}
开发者ID:CubanCorona,项目名称:bitcoin,代码行数:17,


示例5: CTxIn

CMasternodeBroadcast::CMasternodeBroadcast(){    vin = CTxIn();    addr = CService();    pubkey = CPubKey();    pubkey2 = CPubKey();    sig = std::vector<unsigned char>();    activeState = MASTERNODE_ENABLED;    sigTime = GetAdjustedTime();    lastPing = CMasternodePing();    cacheInputAge = 0;    cacheInputAgeBlock = 0;    unitTest = false;    allowFreeTx = true;    protocolVersion = PROTOCOL_VERSION;    nLastDsq = 0;    nScanningErrorCount = 0;    nLastScanningErrorBlockHeight = 0;}
开发者ID:Nobelia,项目名称:darkforest,代码行数:19,


示例6: LogPrintf

bool CActiveMasternode::Register(std::string strService, std::string strKeyMasternode, std::string txHash, std::string strOutputIndex, std::string& errorMessage) {	CTxIn vin;    CPubKey pubKeyCollateralAddress;    CKey keyCollateralAddress;    CPubKey pubKeyMasternode;    CKey keyMasternode;    if(!darkSendSigner.SetKey(strKeyMasternode, errorMessage, keyMasternode, pubKeyMasternode))    {    	LogPrintf("CActiveMasternode::Register() - Error upon calling SetKey: %s/n", errorMessage.c_str());    	return false;    }    if(!GetMasterNodeVin(vin, pubKeyCollateralAddress, keyCollateralAddress, txHash, strOutputIndex)) {		errorMessage = "could not allocate vin";    	LogPrintf("Register::Register() - Error: %s/n", errorMessage.c_str());		return false;	}	return Register(vin, CService(strService), keyCollateralAddress, pubKeyCollateralAddress, keyMasternode, pubKeyMasternode, errorMessage);}
开发者ID:nodexcoin,项目名称:nodex,代码行数:20,


示例7: LogPrintf

bool CActiveThrone::RegisterByPubKey(std::string strService, std::string strKeyThrone, std::string collateralAddress, std::string& errorMessage) {	CTxIn vin;    CPubKey pubKeyCollateralAddress;    CKey keyCollateralAddress;    CPubKey pubKeyThrone;    CKey keyThrone;    if(!darkSendSigner.SetKey(strKeyThrone, errorMessage, keyThrone, pubKeyThrone))    {    	LogPrintf("CActiveThrone::RegisterByPubKey() - Error upon calling SetKey: %s/n", errorMessage.c_str());    	return false;    }    if(!GetThroNeVinForPubKey(collateralAddress, vin, pubKeyCollateralAddress, keyCollateralAddress)) {		errorMessage = "could not allocate vin for collateralAddress";    	LogPrintf("Register::Register() - Error: %s/n", errorMessage.c_str());		return false;	}	return Register(vin, CService(strService), keyCollateralAddress, pubKeyCollateralAddress, keyThrone, pubKeyThrone, errorMessage);}
开发者ID:mergepool,项目名称:crowncoin,代码行数:20,


示例8: ApplyProxySettings

bool static ApplyProxySettings(){    QSettings settings;    CService addrProxy(settings.value("addrProxy", "127.0.0.1:9050").toString().toStdString());    int nSocksVersion(settings.value("nSocksVersion", 5).toInt());    if (!settings.value("fUseProxy", false).toBool()) {        addrProxy = CService();        nSocksVersion = 0;        return false;    }    if (nSocksVersion && !addrProxy.IsValid())        return false;    if (!IsLimited(NET_IPV4))        SetProxy(NET_IPV4, addrProxy, nSocksVersion);    if (nSocksVersion > 4) {        if (!IsLimited(NET_IPV6))            SetProxy(NET_IPV6, addrProxy, nSocksVersion);        SetNameProxy(addrProxy, nSocksVersion);    }    return true;}
开发者ID:CedricProfit,项目名称:Quotient,代码行数:21,


示例9: CScript

bool CActiveBlanknode::RegisterByPubKey(std::string strService, std::string strKeyBlanknode, std::string collateralAddress, std::string& errorMessage) {    CTxIn vin;    CPubKey pubKeyCollateralAddress;    CKey keyCollateralAddress;    CPubKey pubKeyBlanknode;    CKey keyBlanknode;    CScript donationAddress = CScript();    int donationPercentage = 0;    if(!zeroSendSigner.SetKey(strKeyBlanknode, errorMessage, keyBlanknode, pubKeyBlanknode))    {        LogPrintf("CActiveBlanknode::RegisterByPubKey() - Error upon calling SetKey: %s/n", errorMessage.c_str());        return false;    }    if(!GetBlankNodeVinForPubKey(collateralAddress, vin, pubKeyCollateralAddress, keyCollateralAddress)) {        errorMessage = "could not allocate vin for collateralAddress";        LogPrintf("Register::Register() - Error: %s/n", errorMessage.c_str());        return false;    }    return Register(vin, CService(strService), keyCollateralAddress, pubKeyCollateralAddress, keyBlanknode, pubKeyBlanknode, donationAddress, donationPercentage, errorMessage);}
开发者ID:ch1c4um,项目名称:fantom,代码行数:22,


示例10: LogPrint

void TorController::add_onion_cb(TorControlConnection& conn, const TorControlReply& reply){    if (reply.code == 250) {        LogPrint("tor", "tor: ADD_ONION succesful/n");        BOOST_FOREACH(const std::string &s, reply.lines) {            std::map<std::string,std::string> m = ParseTorReplyMapping(s);            std::map<std::string,std::string>::iterator i;            if ((i = m.find("ServiceID")) != m.end())                service_id = i->second;            if ((i = m.find("PrivateKey")) != m.end())                private_key = i->second;        }        service = CService(service_id+".onion", GetListenPort(), false);        LogPrintf("tor: Got service ID %s, advertizing service %s/n", service_id, service.ToString());        if (WriteBinaryFile(GetPrivateKeyFile(), private_key)) {            LogPrint("tor", "tor: Cached service private key to %s/n", GetPrivateKeyFile());        } else {            LogPrintf("tor: Error writing service private key to %s/n", GetPrivateKeyFile());        }        AddLocal(service, LOCAL_MANUAL);        // ... onion requested - keep connection open    } else if (reply.code == 510) { // 510 Unrecognized command
开发者ID:robegan21,项目名称:bitcoin,代码行数:23,


示例11: LOCK

CMasternode::CMasternode(){    LOCK(cs);    vin = CTxIn();    addr = CService();    pubkey = CPubKey();    pubkey2 = CPubKey();    sig = std::vector<unsigned char>();    activeState = MASTERNODE_ENABLED;    sigTime = GetAdjustedTime();    lastPing = CMasternodePing();    cacheInputAge = 0;    cacheInputAgeBlock = 0;    unitTest = false;    allowFreeTx = true;    protocolVersion = PROTOCOL_VERSION;    nLastDsq = 0;    nScanningErrorCount = 0;    nLastScanningErrorBlockHeight = 0;    lastTimeChecked = 0;    nLastDsee = 0;// temporary, do not save. Remove after migration to v12    nLastDseep = 0;// temporary, do not save. Remove after migration to v12}
开发者ID:Nobelia,项目名称:darkforest,代码行数:23,


示例12: ConnectSocketByName

bool ConnectSocketByName(CService &addr, SOCKET& hSocketRet, const char *pszDest, int portDefault, int nTimeout){    std::string strDest;    int port = portDefault;    SplitHostPort(std::string(pszDest), port, strDest);    SOCKET hSocket = INVALID_SOCKET;    proxyType nameproxy;    GetNameProxy(nameproxy);    CService addrResolved(CNetAddr(strDest, fNameLookup && !nameproxy.second), port);    if (addrResolved.IsValid()) {        addr = addrResolved;        return ConnectSocket(addr, hSocketRet, nTimeout);    }    addr = CService("0.0.0.0:0");    if (!nameproxy.second)        return false;    if (!ConnectSocketDirectly(nameproxy.first, hSocket, nTimeout))        return false;    switch(nameproxy.second) {        default:        case 4:            closesocket(hSocket);            return false;        case 5:            if (!Socks5(strDest, port, hSocket))                return false;            break;    }    hSocketRet = hSocket;    return true;}
开发者ID:aurarad,项目名称:Auroracoin,代码行数:36,


示例13: CMainParams

    CMainParams() {        // The message start string is designed to be unlikely to occur in normal data.        pchMessageStart[0] = 0xa5;        pchMessageStart[1] = 0xc0;        pchMessageStart[2] = 0x79;        pchMessageStart[3] = 0x55;        vAlertPubKey = ParseHex("000000000007840aaf100de8442ebecedf5b095cdbb9bc716bda9110971b28a49e0ead8564ff0db22209e0374782c093bb899692d524e9d6a6956e7c5ecbcd68284");        nDefaultPort = 32333;        nRPCPort = 32332;        bnProofOfWorkLimit = CBigNum(~uint256(0) >> 32);        nSubsidyHalvingInterval = 126000; // 1 year        // Build the genesis block. Note that the output of the genesis coinbase cannot        // be spent as it did not originally exist in the database.          const char* pszTimestamp = "CNN 23/10/2013 Scientists find gold growing on trees in Australia";        CTransaction txNew;        txNew.vin.resize(1);        txNew.vout.resize(1);        txNew.vin[0].scriptSig = CScript() << 486604799 << CBigNum(4) << vector<unsigned char>((const unsigned char*)pszTimestamp, (const unsigned char*)pszTimestamp + strlen(pszTimestamp));        txNew.vout[0].nValue = 50 * COIN;        txNew.vout[0].scriptPubKey = CScript() << ParseHex("04678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5f") << OP_CHECKSIG;        genesis.vtx.push_back(txNew);        genesis.hashPrevBlock = 0;        genesis.hashMerkleRoot = genesis.BuildMerkleTree();        genesis.nVersion = 1;        genesis.nTime    = 1382532797;        genesis.nBits    = 0x1d00ffff;        genesis.nNonce   = 704106316;                //// debug print        hashGenesisBlock = genesis.GetHash();        //while (hashGenesisBlock > bnProofOfWorkLimit.getuint256()){        //    if (++genesis.nNonce==0) break;        //    hashGenesisBlock = genesis.GetHash();        //}        printf("%s/n", hashGenesisBlock.ToString().c_str());        printf("%s/n", genesis.hashMerkleRoot.ToString().c_str());        printf("%x/n", bnProofOfWorkLimit.GetCompact());        genesis.print();                        assert(hashGenesisBlock == uint256("0x000000008ef7da946aa3f4dd81b240c6bdedac0dc038cb04e7cf8e60f37d9281"));        assert(genesis.hashMerkleRoot == uint256("0xd25dbe3a2852926fc2ec6591a95983bbcde80c449f30ced37fd657361073fa96"));         vSeeds.push_back(CDNSSeedData("seed1.betacoin.org", "seed1.betacoin.org"));        vSeeds.push_back(CDNSSeedData("seed2.betacoin.org", "seed2.betacoin.org"));         vSeeds.push_back(CDNSSeedData("seed3.betacoin.org", "seed3.betacoin.org"));          vSeeds.push_back(CDNSSeedData("seed4.betacoin.org", "seed4.betacoin.org"));        vSeeds.push_back(CDNSSeedData("seed5.betacoin.org", "seed5.betacoin.org"));         vSeeds.push_back(CDNSSeedData("seed6.betacoin.org", "seed6.betacoin.org"));        base58Prefixes[PUBKEY_ADDRESS] = 25;        base58Prefixes[SCRIPT_ADDRESS] = 11;        base58Prefixes[SECRET_KEY] = 143;        // Convert the pnSeeds array into usable address objects.        for (unsigned int i = 0; i < ARRAYLEN(pnSeed); i++)        {            // It'll only connect to one or two seed nodes because once it connects,            // it'll get a pile of addresses with newer timestamps.            // Seed nodes are given a random 'last seen time'             const int64 nTwoDays = 2 * 24 * 60 * 60;            struct in_addr ip;            memcpy(&ip, &pnSeed[i], sizeof(ip));            CAddress addr(CService(ip, GetDefaultPort()));            addr.nTime = GetTime() - GetRand(nTwoDays) - nTwoDays;            vFixedSeeds.push_back(addr);        }    }
开发者ID:AUSTRALIANBITCOINS,项目名称:betacoin,代码行数:72,


示例14: CMainParams

    CMainParams() {        // The message start string is designed to be unlikely to occur in normal data.        pchMessageStart[0] = 0xb6;        pchMessageStart[1] = 0xb6;        pchMessageStart[2] = 0xb6;        pchMessageStart[3] = 0xb6;        nDefaultPort = 48327;        nRPCPort = 48328;        bnProofOfWorkLimit = CBigNum(~uint256(0) >> 20);        nSubsidyHalvingInterval = 100000;        // Build the genesis block. Note that the output of the genesis coinbase cannot        // be spent as it did not originally exist in the database.          const char* pszTimestamp = "Nadecoin";        CTransaction txNew;        txNew.vin.resize(1);        txNew.vout.resize(1);        txNew.vin[0].scriptSig = CScript() << 486604799 << CBigNum(4) << vector<unsigned char>((const unsigned char*)pszTimestamp, (const unsigned char*)pszTimestamp + strlen(pszTimestamp));        txNew.vout[0].nValue = 1 * COIN;        txNew.vout[0].scriptPubKey = CScript() << ParseHex("") << OP_CHECKSIG;        genesis.vtx.push_back(txNew);        genesis.hashPrevBlock = 0;        genesis.hashMerkleRoot = genesis.BuildMerkleTree();        genesis.nVersion = 1;        genesis.nTime    = 1300000000;        genesis.nBits    = 0x1e0fffff;        genesis.nNonce   = 0;                //// debug print        hashGenesisBlock = genesis.GetHash();        //while (hashGenesisBlock > bnProofOfWorkLimit.getuint256()){        //    if (++genesis.nNonce==0) break;        //    hashGenesisBlock = genesis.GetHash();        //}        printf("%s/n", hashGenesisBlock.ToString().c_str());        printf("%s/n", genesis.hashMerkleRoot.ToString().c_str());        printf("%x/n", bnProofOfWorkLimit.GetCompact());        genesis.print();                        assert(hashGenesisBlock == uint256("0x5c85b50a51b3437abdf0ed22d984278d4f95e60650966ecc179e84d7d1a1a271"));        assert(genesis.hashMerkleRoot == uint256("0xc3ab53bcf6c4174ab22abec6923320e6f2af142fc3ec9c6c6f36065db7d02940"));        vSeeds.push_back(CDNSSeedData("google.org", "google.org"));        base58Prefixes[PUBKEY_ADDRESS] = 36;        base58Prefixes[SCRIPT_ADDRESS] = 30;        base58Prefixes[SECRET_KEY] = 224;        // Convert the pnSeeds array into usable address objects.        for (unsigned int i = 0; i < ARRAYLEN(pnSeed); i++)        {            // It'll only connect to one or two seed nodes because once it connects,            // it'll get a pile of addresses with newer timestamps.            // Seed nodes are given a random 'last seen time'             const int64 nTwoDays = 2 * 24 * 60 * 60;            struct in_addr ip;            memcpy(&ip, &pnSeed[i], sizeof(ip));            CAddress addr(CService(ip, GetDefaultPort()));            addr.nTime = GetTime() - GetRand(nTwoDays) - nTwoDays;            vFixedSeeds.push_back(addr);        }    }
开发者ID:excellentsloth,项目名称:Nadecoin,代码行数:66,


示例15: CheckProRegTx

bool CheckProRegTx(const CTransaction& tx, const CBlockIndex* pindexPrev, CValidationState& state){    if (tx.nType != TRANSACTION_PROVIDER_REGISTER) {        return state.DoS(100, false, REJECT_INVALID, "bad-protx-type");    }    CProRegTx ptx;    if (!GetTxPayload(tx, ptx)) {        return state.DoS(100, false, REJECT_INVALID, "bad-protx-payload");    }    if (ptx.nVersion == 0 || ptx.nVersion > CProRegTx::CURRENT_VERSION) {        return state.DoS(100, false, REJECT_INVALID, "bad-protx-version");    }    if (ptx.nType != 0) {        return state.DoS(100, false, REJECT_INVALID, "bad-protx-type");    }    if (ptx.nMode != 0) {        return state.DoS(100, false, REJECT_INVALID, "bad-protx-mode");    }    if (ptx.keyIDOwner.IsNull() || !ptx.pubKeyOperator.IsValid() || ptx.keyIDVoting.IsNull()) {        return state.DoS(10, false, REJECT_INVALID, "bad-protx-key-null");    }    if (!ptx.scriptPayout.IsPayToPublicKeyHash() && !ptx.scriptPayout.IsPayToScriptHash()) {        return state.DoS(10, false, REJECT_INVALID, "bad-protx-payee");    }    CTxDestination payoutDest;    if (!ExtractDestination(ptx.scriptPayout, payoutDest)) {        // should not happen as we checked script types before        return state.DoS(10, false, REJECT_INVALID, "bad-protx-payee-dest");    }    // don't allow reuse of payout key for other keys (don't allow people to put the payee key onto an online server)    if (payoutDest == CTxDestination(ptx.keyIDOwner) || payoutDest == CTxDestination(ptx.keyIDVoting)) {        return state.DoS(10, false, REJECT_INVALID, "bad-protx-payee-reuse");    }    // It's allowed to set addr to 0, which will put the MN into PoSe-banned state and require a ProUpServTx to be issues later    // If any of both is set, it must be valid however    if (ptx.addr != CService() && !CheckService(tx.GetHash(), ptx, state)) {        return false;    }    if (ptx.nOperatorReward > 10000) {        return state.DoS(10, false, REJECT_INVALID, "bad-protx-operator-reward");    }    CTxDestination collateralTxDest;    CKeyID keyForPayloadSig;    COutPoint collateralOutpoint;    if (!ptx.collateralOutpoint.hash.IsNull()) {        Coin coin;        if (!GetUTXOCoin(ptx.collateralOutpoint, coin) || coin.out.nValue != 1000 * COIN) {            return state.DoS(10, false, REJECT_INVALID, "bad-protx-collateral");        }        if (!ExtractDestination(coin.out.scriptPubKey, collateralTxDest)) {            return state.DoS(10, false, REJECT_INVALID, "bad-protx-collateral-dest");        }        // Extract key from collateral. This only works for P2PK and P2PKH collaterals and will fail for P2SH.        // Issuer of this ProRegTx must prove ownership with this key by signing the ProRegTx        if (!CBitcoinAddress(collateralTxDest).GetKeyID(keyForPayloadSig)) {            return state.DoS(10, false, REJECT_INVALID, "bad-protx-collateral-pkh");        }        collateralOutpoint = ptx.collateralOutpoint;    } else {        if (ptx.collateralOutpoint.n >= tx.vout.size()) {            return state.DoS(10, false, REJECT_INVALID, "bad-protx-collateral-index");        }        if (tx.vout[ptx.collateralOutpoint.n].nValue != 1000 * COIN) {            return state.DoS(10, false, REJECT_INVALID, "bad-protx-collateral");        }        if (!ExtractDestination(tx.vout[ptx.collateralOutpoint.n].scriptPubKey, collateralTxDest)) {            return state.DoS(10, false, REJECT_INVALID, "bad-protx-collateral-dest");        }        collateralOutpoint = COutPoint(tx.GetHash(), ptx.collateralOutpoint.n);    }    // don't allow reuse of collateral key for other keys (don't allow people to put the collateral key onto an online server)    // this check applies to internal and external collateral, but internal collaterals are not necessarely a P2PKH    if (collateralTxDest == CTxDestination(ptx.keyIDOwner) || collateralTxDest == CTxDestination(ptx.keyIDVoting)) {        return state.DoS(10, false, REJECT_INVALID, "bad-protx-collateral-reuse");    }    if (pindexPrev) {        auto mnList = deterministicMNManager->GetListForBlock(pindexPrev->GetBlockHash());        // only allow reusing of addresses when it's for the same collateral (which replaces the old MN)        if (mnList.HasUniqueProperty(ptx.addr) && mnList.GetUniquePropertyMN(ptx.addr)->collateralOutpoint != collateralOutpoint) {            return state.DoS(10, false, REJECT_DUPLICATE, "bad-protx-dup-addr");        }        // never allow duplicate keys, even if this ProTx would replace an existing MN        if (mnList.HasUniqueProperty(ptx.keyIDOwner) || mnList.HasUniqueProperty(ptx.pubKeyOperator)) {//.........这里部分代码省略.........
开发者ID:dashpay,项目名称:dash,代码行数:101,


示例16: LogPrintf

//// Bootup the Masternode, look for a 1000DRK input and register on the network//void CActiveMasternode::ManageStatus(){        std::string errorMessage;    if(!fMasterNode) return;    if (fDebug) LogPrintf("CActiveMasternode::ManageStatus() - Begin/n");    //need correct blocks to send ping    if(Params().NetworkID() != CBaseChainParams::REGTEST && !masternodeSync.IsBlockchainSynced()) {        status = ACTIVE_MASTERNODE_SYNC_IN_PROCESS;        LogPrintf("CActiveMasternode::ManageStatus() - %s/n", GetStatus());        return;    }    if(status == ACTIVE_MASTERNODE_SYNC_IN_PROCESS) status = ACTIVE_MASTERNODE_INITIAL;    if(status == ACTIVE_MASTERNODE_INITIAL) {        CMasternode *pmn;        pmn = mnodeman.Find(pubKeyMasternode);        if(pmn != NULL) {            pmn->Check();            if(pmn->IsEnabled() && pmn->protocolVersion == PROTOCOL_VERSION) EnableHotColdMasterNode(pmn->vin, pmn->addr);        }    }    if(status != ACTIVE_MASTERNODE_STARTED) {        // Set defaults        status = ACTIVE_MASTERNODE_NOT_CAPABLE;        notCapableReason = "";        if(pwalletMain->IsLocked()){            notCapableReason = "Wallet is locked.";            LogPrintf("CActiveMasternode::ManageStatus() - not capable: %s/n", notCapableReason);            return;        }        if(pwalletMain->GetBalance() == 0){            notCapableReason = "Hot node, waiting for remote activation.";            LogPrintf("CActiveMasternode::ManageStatus() - not capable: %s/n", notCapableReason);            return;        }        if(strMasterNodeAddr.empty()) {            if(!GetLocal(service)) {                notCapableReason = "Can't detect external address. Please use the masternodeaddr configuration option.";                LogPrintf("CActiveMasternode::ManageStatus() - not capable: %s/n", notCapableReason);                return;            }        } else {            service = CService(strMasterNodeAddr);        }        if(Params().NetworkID() == CBaseChainParams::MAIN) {            if(service.GetPort() != 9999) {                notCapableReason = strprintf("Invalid port: %u - only 9999 is supported on mainnet.", service.GetPort());                LogPrintf("CActiveMasternode::ManageStatus() - not capable: %s/n", notCapableReason);                return;            }        } else if(service.GetPort() == 9999) {            notCapableReason = strprintf("Invalid port: %u - 9999 is only supported on mainnet.", service.GetPort());            LogPrintf("CActiveMasternode::ManageStatus() - not capable: %s/n", notCapableReason);            return;        }        LogPrintf("CActiveMasternode::ManageStatus() - Checking inbound connection to '%s'/n", service.ToString());        CNode *pnode = ConnectNode((CAddress)service, NULL, false);        if(!pnode){            notCapableReason = "Could not connect to " + service.ToString();            LogPrintf("CActiveMasternode::ManageStatus() - not capable: %s/n", notCapableReason);            return;        }        pnode->Release();        // Choose coins to use        CPubKey pubKeyCollateralAddress;        CKey keyCollateralAddress;        if(GetMasterNodeVin(vin, pubKeyCollateralAddress, keyCollateralAddress)) {            if(GetInputAge(vin) < MASTERNODE_MIN_CONFIRMATIONS){                status = ACTIVE_MASTERNODE_INPUT_TOO_NEW;                notCapableReason = strprintf("%s - %d confirmations", GetStatus(), GetInputAge(vin));                LogPrintf("CActiveMasternode::ManageStatus() - %s/n", notCapableReason);                return;            }            LOCK(pwalletMain->cs_wallet);            pwalletMain->LockCoin(vin.prevout);            // send to all nodes            CPubKey pubKeyMasternode;            CKey keyMasternode;            if(!darkSendSigner.SetKey(strMasterNodePrivKey, errorMessage, keyMasternode, pubKeyMasternode))//.........这里部分代码省略.........
开发者ID:GitGuild,项目名称:ferretcoin,代码行数:101,


示例17: CMainParams

    CMainParams() {        // The message start string is designed to be unlikely to occur in normal data.        pchMessageStart[0] = 0x04;        pchMessageStart[1] = 0x05;        pchMessageStart[2] = 0x05;        pchMessageStart[3] = 0x04;        nDefaultPort = 25536;        nRPCPort = 25537;        bnProofOfWorkLimit = CBigNum(~uint256(0) >> 20);        nSubsidyHalvingInterval = 100000;        // Build the genesis block. Note that the output of the genesis coinbase cannot        // be spent as it did not originally exist in the database.          const char* pszTimestamp = "Scotcoin!";        CTransaction txNew;        txNew.vin.resize(1);        txNew.vout.resize(1);        txNew.vin[0].scriptSig = CScript() << 486604799 << CBigNum(4) << vector<unsigned char>((const unsigned char*)pszTimestamp, (const unsigned char*)pszTimestamp + strlen(pszTimestamp));        txNew.vout[0].nValue = 1 * COIN;        txNew.vout[0].scriptPubKey = CScript() << ParseHex("") << OP_CHECKSIG;        genesis.vtx.push_back(txNew);        genesis.hashPrevBlock = 0;        genesis.hashMerkleRoot = genesis.BuildMerkleTree();        genesis.nVersion = 1;        genesis.nTime    = 1392946703;        genesis.nBits    = 0x1e0fffff;        genesis.nNonce   = 168193;                //// debug print        hashGenesisBlock = genesis.GetHash();        //while (hashGenesisBlock > bnProofOfWorkLimit.getuint256()){        //    if (++genesis.nNonce==0) break;        //    hashGenesisBlock = genesis.GetHash();        //}        printf("%s/n", hashGenesisBlock.ToString().c_str());        printf("%s/n", genesis.hashMerkleRoot.ToString().c_str());        printf("%x/n", bnProofOfWorkLimit.GetCompact());        genesis.print();                        assert(hashGenesisBlock == uint256("0x0000020b9d4db902554e1131eee9d0a016e201215b2fd6e7279e4321f99a3e15"));        assert(genesis.hashMerkleRoot == uint256("0xa887ab6f2204b79e5af2878efc78e5da804013f94f4e23cb73239b6abbf95ce4"));        vSeeds.push_back(CDNSSeedData("someaddress.com or IP addy", "someaddress.com"));        base58Prefixes[PUBKEY_ADDRESS] = 63;        base58Prefixes[SCRIPT_ADDRESS] = 30;        base58Prefixes[SECRET_KEY] = 224;        // Convert the pnSeeds array into usable address objects.        for (unsigned int i = 0; i < ARRAYLEN(pnSeed); i++)        {            // It'll only connect to one or two seed nodes because once it connects,            // it'll get a pile of addresses with newer timestamps.            // Seed nodes are given a random 'last seen time'             const int64 nTwoDays = 2 * 24 * 60 * 60;            struct in_addr ip;            memcpy(&ip, &pnSeed[i], sizeof(ip));            CAddress addr(CService(ip, GetDefaultPort()));            addr.nTime = GetTime() - GetRand(nTwoDays) - nTwoDays;            vFixedSeeds.push_back(addr);        }    }
开发者ID:Roverok,项目名称:scotcoin,代码行数:66,


示例18: switch

bool OptionsModel::setData(const QModelIndex & index, const QVariant & value, int role){    bool successful = true; /* set to false on parse error */    if(role == Qt::EditRole)    {        QSettings settings;        switch(index.row())        {        case StartAtStartup:            successful = GUIUtil::SetStartOnSystemStartup(value.toBool());            break;        case MinimizeToTray:            fMinimizeToTray = value.toBool();            settings.setValue("fMinimizeToTray", fMinimizeToTray);            break;        case MapPortUPnP:            settings.setValue("fUseUPnP", value.toBool());            MapPort(value.toBool());            break;        case MinimizeOnClose:            fMinimizeOnClose = value.toBool();            settings.setValue("fMinimizeOnClose", fMinimizeOnClose);            break;        case ProxyUse:            settings.setValue("fUseProxy", value.toBool());            ApplyProxySettings();            break;        case ProxyIP: {            proxyType proxy;            proxy = CService("127.0.0.1", 9050);            GetProxy(NET_IPV4, proxy);            CNetAddr addr(value.toString().toStdString());            proxy.SetIP(addr);            settings.setValue("addrProxy", proxy.ToStringIPPort().c_str());            successful = ApplyProxySettings();        }        break;        case ProxyPort: {            proxyType proxy;            proxy = CService("127.0.0.1", 9050);            GetProxy(NET_IPV4, proxy);            proxy.SetPort(value.toInt());            settings.setValue("addrProxy", proxy.ToStringIPPort().c_str());            successful = ApplyProxySettings();        }        break;        case Fee:            nTransactionFee = value.toLongLong();            settings.setValue("nTransactionFee", (qint64) nTransactionFee);            emit transactionFeeChanged(nTransactionFee);            break;        case ReserveBalance:            nReserveBalance = value.toLongLong();            settings.setValue("nReserveBalance", (qint64) nReserveBalance);            emit reserveBalanceChanged(nReserveBalance);            break;        case DisplayUnit:            nDisplayUnit = value.toInt();            settings.setValue("nDisplayUnit", nDisplayUnit);            emit displayUnitChanged(nDisplayUnit);            break;        case Language:            settings.setValue("language", value);            break;        case CoinControlFeatures: {            fCoinControlFeatures = value.toBool();            settings.setValue("fCoinControlFeatures", fCoinControlFeatures);            emit coinControlFeaturesChanged(fCoinControlFeatures);            }            break;        case MinimizeCoinAge:           fMinimizeCoinAge = value.toBool();           settings.setValue("fMinimizeCoinAge", fMinimizeCoinAge);           break;        case UseBlackTheme:            fUseBlackTheme = value.toBool();            settings.setValue("fUseBlackTheme", fUseBlackTheme);            break;        case DarksendRounds:            nDarksendRounds = value.toInt();            settings.setValue("nDarksendRounds", nDarksendRounds);            emit darksendRoundsChanged(nDarksendRounds);            break;        case anonymizeGridmasterAmount:            nAnonymizeGridmasterAmount = value.toInt();            settings.setValue("nAnonymizeGridmasterAmount", nAnonymizeGridmasterAmount);            emit anonymizeGridmasterAmountChanged(nAnonymizeGridmasterAmount);            break;        default:            break;        }    }    emit dataChanged(index, index);    return successful;}
开发者ID:GridMasterDev,项目名称:GMC,代码行数:98,


示例19: switch

bool OptionsModel::setData(const QModelIndex & index, const QVariant & value, int role){    bool successful = true; /* set to false on parse error */    if(role == Qt::EditRole)    {        QSettings settings;        switch(index.row())        {        case StartAtStartup:            successful = GUIUtil::SetStartOnSystemStartup(value.toBool());            break;        case MinimizeToTray:            fMinimizeToTray = value.toBool();            settings.setValue("fMinimizeToTray", fMinimizeToTray);            break;        case MapPortUPnP:            fUseUPnP = value.toBool();            settings.setValue("fUseUPnP", fUseUPnP);            MapPort();            break;        case MinimizeOnClose:            fMinimizeOnClose = value.toBool();            settings.setValue("fMinimizeOnClose", fMinimizeOnClose);            break;        case ProxyUse:            settings.setValue("fUseProxy", value.toBool());            ApplyProxySettings();            break;        case ProxyIP: {            proxyType proxy;            proxy.first = CService("127.0.0.1", 9050);            GetProxy(NET_IPV4, proxy);            CNetAddr addr(value.toString().toStdString());            proxy.first.SetIP(addr);            settings.setValue("addrProxy", proxy.first.ToStringIPPort().c_str());            successful = ApplyProxySettings();        }        break;        case ProxyPort: {            proxyType proxy;            proxy.first = CService("127.0.0.1", 9050);            GetProxy(NET_IPV4, proxy);            proxy.first.SetPort(value.toInt());            settings.setValue("addrProxy", proxy.first.ToStringIPPort().c_str());            successful = ApplyProxySettings();        }        break;        case ProxySocksVersion: {            proxyType proxy;            proxy.second = 5;            GetProxy(NET_IPV4, proxy);            proxy.second = value.toInt();            settings.setValue("nSocksVersion", proxy.second);            successful = ApplyProxySettings();        }        break;        case Fee:            nTransactionFee = value.toLongLong();            settings.setValue("nTransactionFee", (qint64) nTransactionFee);            emit transactionFeeChanged(nTransactionFee);            break;        case ReserveBalance:            nReserveBalance = value.toLongLong();            settings.setValue("nReserveBalance", (qint64) nReserveBalance);            emit reserveBalanceChanged(nReserveBalance);            break;        case DisplayUnit:            nDisplayUnit = value.toInt();            settings.setValue("nDisplayUnit", nDisplayUnit);            emit displayUnitChanged(nDisplayUnit);            break;        case DisplayAddresses:            bDisplayAddresses = value.toBool();            settings.setValue("bDisplayAddresses", bDisplayAddresses);            break;        case DetachDatabases: {            bool fDetachDB = value.toBool();            bitdb.SetDetach(fDetachDB);            settings.setValue("detachDB", fDetachDB);            }            break;        case Language:            settings.setValue("language", value);            break;        case CoinControlFeatures: {            fCoinControlFeatures = value.toBool();            settings.setValue("fCoinControlFeatures", fCoinControlFeatures);            emit coinControlFeaturesChanged(fCoinControlFeatures);            }            break;        default:            break;        }    }    emit dataChanged(index, index);    return successful;//.........这里部分代码省略.........
开发者ID:CedricProfit,项目名称:Quotient,代码行数:101,


示例20: IsInitialBlockDownload

//// Bootup the masternode, look for a 1000 NODX input and register on the network//void CActiveMasternode::ManageStatus(){    std::string errorMessage;    if(!fMasterNode) return;    if (fDebug) LogPrintf("CActiveMasternode::ManageStatus() - Begin/n");    //need correct adjusted time to send ping    bool fIsInitialDownload = IsInitialBlockDownload();    if(fIsInitialDownload) {        status = MASTERNODE_SYNC_IN_PROCESS;        LogPrintf("CActiveMasternode::ManageStatus() - Sync in progress. Must wait until sync is complete to start masternode./n");        return;    }    if(status == MASTERNODE_INPUT_TOO_NEW || status == MASTERNODE_NOT_CAPABLE || status == MASTERNODE_SYNC_IN_PROCESS){        status = MASTERNODE_NOT_PROCESSED;    }    if(status == MASTERNODE_NOT_PROCESSED) {        if(strMasterNodeAddr.empty()) {            if(!GetLocal(service)) {                notCapableReason = "Can't detect external address. Please use the masternodeaddr configuration option.";                status = MASTERNODE_NOT_CAPABLE;                LogPrintf("CActiveMasternode::ManageStatus() - not capable: %s/n", notCapableReason.c_str());                return;            }        } else {        	service = CService(strMasterNodeAddr);        }        LogPrintf("CActiveMasternode::ManageStatus() - Checking inbound connection to '%s'/n", service.ToString().c_str());                              if(!ConnectNode((CAddress)service, service.ToString().c_str())){                notCapableReason = "Could not connect to " + service.ToString();                status = MASTERNODE_NOT_CAPABLE;                LogPrintf("CActiveMasternode::ManageStatus() - not capable: %s/n", notCapableReason.c_str());                return;            }                if(pwalletMain->IsLocked()){            notCapableReason = "Wallet is locked.";            status = MASTERNODE_NOT_CAPABLE;            LogPrintf("CActiveMasternode::ManageStatus() - not capable: %s/n", notCapableReason.c_str());            return;        }        // Set defaults        status = MASTERNODE_NOT_CAPABLE;        notCapableReason = "Unknown. Check debug.log for more information./n";        // Choose coins to use        CPubKey pubKeyCollateralAddress;        CKey keyCollateralAddress;        if(GetMasterNodeVin(vin, pubKeyCollateralAddress, keyCollateralAddress)) {            if(GetInputAge(vin) < MASTERNODE_MIN_CONFIRMATIONS){                LogPrintf("CActiveMasternode::ManageStatus() - Input must have least %d confirmations - %d confirmations/n", MASTERNODE_MIN_CONFIRMATIONS, GetInputAge(vin));                status = MASTERNODE_INPUT_TOO_NEW;                return;            }            LogPrintf("CActiveMasternode::ManageStatus() - Is capable master node!/n");            status = MASTERNODE_IS_CAPABLE;            notCapableReason = "";            pwalletMain->LockCoin(vin.prevout);            // send to all nodes            CPubKey pubKeyMasternode;            CKey keyMasternode;            if(!darkSendSigner.SetKey(strMasterNodePrivKey, errorMessage, keyMasternode, pubKeyMasternode))            {            	LogPrintf("Register::ManageStatus() - Error upon calling SetKey: %s/n", errorMessage.c_str());            	return;            }            if(!Register(vin, service, keyCollateralAddress, pubKeyCollateralAddress, keyMasternode, pubKeyMasternode, errorMessage)) {            	LogPrintf("CActiveMasternode::ManageStatus() - Error on Register: %s/n", errorMessage.c_str());            }            return;        } else {        	LogPrintf("CActiveMasternode::ManageStatus() - Could not find suitable coins!/n");        }    }    //send to all peers    if(!Dseep(errorMessage)) {    	LogPrintf("CActiveMasternode::ManageStatus() - Error on Ping: %s", errorMessage.c_str());    }//.........这里部分代码省略.........
开发者ID:nodexcoin,项目名称:nodex,代码行数:101,


示例21: CMainParams

    CMainParams() {        // The message start string is designed to be unlikely to occur in normal data.        pchMessageStart[0] = 0xaf;        pchMessageStart[1] = 0x45;        pchMessageStart[2] = 0x76;        pchMessageStart[3] = 0xee;        vAlertPubKey = ParseHex("04a82e43bebee0af77bb6d4f830c5b2095b7479a480e91bbbf3547fb261c5e6d1be2c27e3c57503f501480f5027371ec62b2be1b6f00fc746e4b3777259e7f6a78");        nDefaultPort = 10888;        nRPCPort = 10889;        bnProofOfWorkLimit[ALGO_SHA256D] = CBigNum(~uint256(0) >> 20);        bnProofOfWorkLimit[ALGO_SCRYPT]  = CBigNum(~uint256(0) >> 20);        bnProofOfWorkLimit[ALGO_GROESTL] = CBigNum(~uint256(0) >> 20);        bnProofOfWorkLimit[ALGO_SKEIN]   = CBigNum(~uint256(0) >> 20);        bnProofOfWorkLimit[ALGO_QUBIT]   = CBigNum(~uint256(0) >> 20);        nSubsidyHalvingInterval = 80640 * 12;        // Build the genesis block. Note that the output of the genesis coinbase cannot        // be spent as it did not originally exist in the database.          const char* pszTimestamp = "2014-02-23 FT - G20 aims to add $2tn to global economy";        CTransaction txNew;        txNew.vin.resize(1);        txNew.vout.resize(1);        txNew.vin[0].scriptSig = CScript() << 486604799 << CBigNum(4) << vector<unsigned char>((const unsigned char*)pszTimestamp, (const unsigned char*)pszTimestamp + strlen(pszTimestamp));        txNew.vout[0].nValue = 1000 * COIN;        txNew.vout[0].scriptPubKey = CScript() << ParseHex("04e941763c7750969e751bee1ffbe96a651a0feb131db046546c219ea40bff40b95077dc9ba1c05af991588772d8daabbda57386c068fb9bc7477c5e28702d5eb9") << OP_CHECKSIG;        genesis.vtx.push_back(txNew);        genesis.hashPrevBlock = 0;        genesis.hashMerkleRoot = genesis.BuildMerkleTree();        genesis.nVersion = BLOCK_VERSION_DEFAULT;        genesis.nTime    = 1393164995;        genesis.nBits    = 0x1e0fffff;        genesis.nNonce   = 2092903596;                //// debug print        hashGenesisBlock = genesis.GetHash();        //while (hashGenesisBlock > bnProofOfWorkLimit[ALGO_SHA256D].getuint256()){        //    if (++genesis.nNonce==0) break;        //    hashGenesisBlock = genesis.GetHash();        //}        //printf("MAIN: %s/n", hashGenesisBlock.ToString().c_str());        //printf("%s/n", genesis.hashMerkleRoot.ToString().c_str());        //printf("%x/n", bnProofOfWorkLimit[ALGO_SHA256D].GetCompact());        //genesis.print();                assert(hashGenesisBlock == uint256("0x00000ffde4c020b5938441a0ea3d314bf619eff0b38f32f78f7583cffa1ea485"));        assert(genesis.hashMerkleRoot == uint256("0x3f75db3c18e92f46c21530dc1222e1fddf4ccebbf88e289a6c9dc787fd6469da"));        vSeeds.push_back(CDNSSeedData("seed1.myriadcoin.org", "seed1.myriadcoin.org"));        vSeeds.push_back(CDNSSeedData("seed2.myriadcoin.org", "seed2.myriadcoin.org"));        vSeeds.push_back(CDNSSeedData("seed3.myriadcoin.org", "seed3.myriadcoin.org"));        vSeeds.push_back(CDNSSeedData("seed4.myriadcoin.org", "seed4.myriadcoin.org"));        base58Prefixes[PUBKEY_ADDRESS] = 50;        base58Prefixes[SCRIPT_ADDRESS] = 9;        base58Prefixes[SECRET_KEY] = 178;        // Convert the pnSeeds array into usable address objects.        for (unsigned int i = 0; i < ARRAYLEN(pnSeed); i++)        {            // It'll only connect to one or two seed nodes because once it connects,            // it'll get a pile of addresses with newer timestamps.            // Seed nodes are given a random 'last seen time'             const int64 nTwoDays = 2 * 24 * 60 * 60;            struct in_addr ip;            memcpy(&ip, &pnSeed[i], sizeof(ip));            CAddress addr(CService(ip, GetDefaultPort()));            addr.nTime = GetTime() - GetRand(nTwoDays) - nTwoDays;            vFixedSeeds.push_back(addr);        }    }
开发者ID:Brokencoin,项目名称:selectioncoin,代码行数:72,


示例22: CMainParams

    CMainParams() {        // The message start string is designed to be unlikely to occur in normal data.        printf("main params/n");        pchMessageStart[0] = 0x09;        pchMessageStart[1] = 0x08;        pchMessageStart[2] = 0x2c;        pchMessageStart[3] = 0xab;        nDefaultPort = 46110;        nRPCPort = 46111;        bnProofOfWorkLimit = CBigNum(~uint256(0) >> 20);        nSubsidyHalvingInterval = 100000;        // Build the genesis block. Note that the output of the genesis coinbase cannot        // be spent as it did not originally exist in the database.          const char* pszTimestamp = "The Times 5-6-14 30 rebels die in battle to retake Slovyansk";        CTransaction txNew;        txNew.vin.resize(1);        txNew.vout.resize(1);        txNew.vin[0].scriptSig = CScript() << 486604799 << CBigNum(4) << vector<unsigned char>((const unsigned char*)pszTimestamp, (const unsigned char*)pszTimestamp + strlen(pszTimestamp));        txNew.vout[0].nValue = 1 * COIN;        txNew.vout[0].scriptPubKey = CScript() << ParseHex("") << OP_CHECKSIG;        genesis.vtx.push_back(txNew);        genesis.hashPrevBlock = 0;        genesis.hashMerkleRoot = genesis.BuildMerkleTree();        genesis.nVersion = 1;        genesis.nTime    = 1399374629;        genesis.nBits    = 0x1e0fffff;        genesis.nNonce   = 1141676;                //// debug print        hashGenesisBlock = genesis.GetHash();/*        while (hashGenesisBlock > bnProofOfWorkLimit.getuint256()){            if (++genesis.nNonce==0) break;            hashGenesisBlock = genesis.GetHash();        }        printf("%s/n", hashGenesisBlock.ToString().c_str());        printf("%s/n", genesis.hashMerkleRoot.ToString().c_str());        printf("%x/n", bnProofOfWorkLimit.GetCompact());        genesis.print();  */        assert(hashGenesisBlock == uint256("0x00000303a4dc1ffd6b7bf5419ac44798d089eb788aa2e521a42b6f20810b2438"));        assert(genesis.hashMerkleRoot == uint256("0x8c5a7bbd33316019cfbf75a6ec78c02ab7ff2529abc36dd31e3b3aaa193c9e82"));        //vSeeds.push_back(CDNSSeedData("someaddress.com or IP addy", "someaddress.com"));        base58Prefixes[PUBKEY_ADDRESS] = 73; //W        base58Prefixes[SCRIPT_ADDRESS] = 30;        base58Prefixes[SECRET_KEY] = 224;        // Convert the pnSeeds array into usable address objects.        for (unsigned int i = 0; i < ARRAYLEN(pnSeed); i++)        {            // It'll only connect to one or two seed nodes because once it connects,            // it'll get a pile of addresses with newer timestamps.            // Seed nodes are given a random 'last seen time'             const int64 nTwoDays = 2 * 24 * 60 * 60;            struct in_addr ip;            memcpy(&ip, &pnSeed[i], sizeof(ip));            CAddress addr(CService(ip, GetDefaultPort()));            addr.nTime = GetTime() - GetRand(nTwoDays) - nTwoDays;            vFixedSeeds.push_back(addr);        }    }
开发者ID:WorldWideCoin,项目名称:wwcoin,代码行数:68,


示例23: CService

CService CService::operator+ (CService _C){    return CService(service1+_C.getService1());}
开发者ID:KulerOvZuo,项目名称:SimCity,代码行数:4,


示例24: IsInitialBlockDownload

//// Bootup the Throne, look for a 1000DRK input and register on the network//void CActiveThrone::ManageStatus(){    std::string errorMessage;    if(!fThroNe) return;    if (fDebug) LogPrintf("CActiveThrone::ManageStatus() - Begin/n");    //need correct adjusted time to send ping    bool fIsInitialDownload = IsInitialBlockDownload();    if(fIsInitialDownload) {        status = THRONE_SYNC_IN_PROCESS;        LogPrintf("CActiveThrone::ManageStatus() - Sync in progress. Must wait until sync is complete to start Throne./n");        return;    }    if(status == THRONE_INPUT_TOO_NEW || status == THRONE_NOT_CAPABLE || status == THRONE_SYNC_IN_PROCESS){        status = THRONE_NOT_PROCESSED;    }    if(status == THRONE_NOT_PROCESSED) {        if(strThroNeAddr.empty()) {            if(!GetLocal(service)) {                notCapableReason = "Can't detect external address. Please use the Throneaddr configuration option.";                status = THRONE_NOT_CAPABLE;                LogPrintf("CActiveThrone::ManageStatus() - not capable: %s/n", notCapableReason.c_str());                return;            }        } else {            service = CService(strThroNeAddr);        }        LogPrintf("CActiveThrone::ManageStatus() - Checking inbound connection to '%s'/n", service.ToString().c_str());        if(Params().NetworkID() == CChainParams::MAIN){            if(service.GetPort() != 9340) {                notCapableReason = "Invalid port: " + boost::lexical_cast<string>(service.GetPort()) + " - only 9999 is supported on mainnet.";                status = THRONE_NOT_CAPABLE;                LogPrintf("CActiveThrone::ManageStatus() - not capable: %s/n", notCapableReason.c_str());                return;            }        } else if(service.GetPort() == 9340) {            notCapableReason = "Invalid port: " + boost::lexical_cast<string>(service.GetPort()) + " - 9999 is only supported on mainnet.";            status = THRONE_NOT_CAPABLE;            LogPrintf("CActiveThrone::ManageStatus() - not capable: %s/n", notCapableReason.c_str());            return;        }        if(!ConnectNode((CAddress)service, service.ToString().c_str())){            notCapableReason = "Could not connect to " + service.ToString();            status = THRONE_NOT_CAPABLE;            LogPrintf("CActiveThrone::ManageStatus() - not capable: %s/n", notCapableReason.c_str());            return;        }        if(pwalletMain->IsLocked()){            notCapableReason = "Wallet is locked.";            status = THRONE_NOT_CAPABLE;            LogPrintf("CActiveThrone::ManageStatus() - not capable: %s/n", notCapableReason.c_str());            return;        }        // Set defaults        status = THRONE_NOT_CAPABLE;        notCapableReason = "Unknown. Check debug.log for more information./n";        // Choose coins to use        CPubKey pubKeyCollateralAddress;        CKey keyCollateralAddress;        if(GetThroNeVin(vin, pubKeyCollateralAddress, keyCollateralAddress)) {            if(GetInputAge(vin) < THRONE_MIN_CONFIRMATIONS){                notCapableReason = "Input must have least " + boost::lexical_cast<string>(THRONE_MIN_CONFIRMATIONS) +                        " confirmations - " + boost::lexical_cast<string>(GetInputAge(vin)) + " confirmations";                LogPrintf("CActiveThrone::ManageStatus() - %s/n", notCapableReason.c_str());                status = THRONE_INPUT_TOO_NEW;                return;            }            LogPrintf("CActiveThrone::ManageStatus() - Is capable throne node!/n");            status = THRONE_IS_CAPABLE;            notCapableReason = "";            pwalletMain->LockCoin(vin.prevout);            // send to all nodes            CPubKey pubKeyThrone;            CKey keyThrone;            if(!darkSendSigner.SetKey(strThroNePrivKey, errorMessage, keyThrone, pubKeyThrone))            {                LogPrintf("Register::ManageStatus() - Error upon calling SetKey: %s/n", errorMessage.c_str());                return;            }//.........这里部分代码省略.........
开发者ID:mergepool,项目名称:crowncoin,代码行数:101,


示例25: memcpy

bool CBitcoinServer::getAddrFromDb(){	static const  unsigned int BitcoinNetSeed[] =	{		0x7e6a692e, 0x7d04d1a2, 0x6c0c17d9, 0xdb330ab9, 0xc649c7c6, 0x7895484d, 0x047109b0, 0xb90ca5bc,		0xd130805f, 0xbd074ea6, 0x578ff1c0, 0x286e09b0, 0xd4dcaf42, 0x529b6bb8, 0x635cc6c0, 0xedde892e,		0xa976d9c7, 0xea91a4b8, 0x03fa4eb2, 0x6ca9008d, 0xaf62c825, 0x93f3ba51, 0xc2c9efd5, 0x0ed5175e,		0x487028bc, 0x7297c225, 0x8af0c658, 0x2e57ba1f, 0xd0098abc, 0x46a8853e, 0xcc92dc3e, 0xeb6f1955,		0x8cce175e, 0x237281ae, 0x9d42795b, 0x4f4f0905, 0xc50151d0, 0xb1ba90c6, 0xaed7175e, 0x204de55b,		0x4bb03245, 0x932b28bc, 0x2dcce65b, 0xe2708abc, 0x1b08b8d5, 0x12a3dc5b, 0x8a884c90, 0xa386a8b8,		0x18e417c6, 0x2e709ac3, 0xeb62e925, 0x6f6503ae, 0x05d0814e, 0x8a9ac545, 0x946fd65e, 0x3f57495d,		0x4a29c658, 0xad454c90, 0x15340905, 0x4c3f3b25, 0x01fe19b9, 0x5620595b, 0x443c795b, 0x44f24ac8,		0x0442464e, 0xc8665882, 0xed3f3ec3, 0xf585bf5d, 0x5dd141da, 0xf93a084e, 0x1264dd52, 0x0711c658,		0xf12e7bbe, 0x5b02b740, 0x7d526dd5, 0x0cb04c90, 0x2abe1132, 0x61a39f58, 0x044a0618, 0xf3af7dce,		0xb994c96d, 0x361c5058, 0xca735d53, 0xeca743b0, 0xec790905, 0xc4d37845, 0xa1c4a2b2, 0x726fd453,		0x625cc6c0, 0x6c20132e, 0xb7aa0c79, 0xc6ed983d, 0x47e4cbc0, 0xa4ac75d4, 0xe2e59345, 0x4d784ad0,		0x18a5ec5e, 0x481cc85b, 0x7c6c2fd5, 0x5e4d6018, 0x5b4b6c18, 0xd99b4c90, 0xe63987dc, 0xb817bb25,		0x141cfeb2, 0x5f005058, 0x0d987f47, 0x242a496d, 0x3e519bc0, 0x02b2454b, 0xdfaf3dc6, 0x888128bc,		0x1165bb25, 0xabfeca5b, 0x2ef63540, 0x5773c7c6, 0x1280dd52, 0x8ebcacd9, 0x81c439c6, 0x39fcfa45,		0x62177d41, 0xc975ed62, 0x05cff476, 0xdabda743, 0xaa1ac24e, 0xe255a22e, 0x88aac705, 0xe707c658,		0xa9e94b5e, 0x2893484b, 0x99512705, 0xd63970ca, 0x45994f32, 0xe519a8ad, 0x92e25f5d, 0x8b84a9c1,		0x5eaa0a05, 0xa74de55b, 0xb090ff62, 0x5eee326c, 0xc331a679, 0xc1d9b72e, 0x0c6ab982, 0x7362bb25,		0x4cfedd42, 0x1e09a032, 0xa4c34c5e, 0x3777d9c7, 0x5edcf260, 0x3ce2b548, 0xd2ac0360, 0x2f80b992,		0x3e4cbb25, 0x3995e236, 0xd03977ae, 0x953cf054, 0x3c654ed0, 0x74024c90, 0xa14f1155, 0x14ce0125,		0xc15ebb6a, 0x2c08c452, 0xc7fd0652, 0x7604f8ce, 0xffb38332, 0xa4c2efd5, 0xe9614018, 0xab49e557,		0x1648c052, 0x36024047, 0x0e8cffad, 0x21918953, 0xb61f50ad, 0x9b406b59, 0xaf282218, 0x7f1d164e,		0x1f560da2, 0xe237be58, 0xbdeb1955, 0x6c0717d9, 0xdaf8ce62, 0x0f74246c, 0xdee95243, 0xf23f1a56,		0x61bdf867, 0xd254c854, 0xc4422e4e, 0xae0563c0, 0xbdb9a95f, 0xa9eb32c6, 0xd9943950, 0x116add52,		0x73a54c90, 0xb36b525e, 0xd734175e, 0x333d7f76, 0x51431bc6, 0x084ae5cf, 0xa60a236c, 0x5c67692e,		0x0177cf45, 0xa6683ac6, 0x7ff4ea47, 0x2192fab2, 0xa03a0f46, 0xfe3e39ae, 0x2cce5fc1, 0xc8a6c148,		0x96fb7e4c, 0x0a66c752, 0x6b4d2705, 0xeba0c118, 0x3ba0795b, 0x1dccd23e, 0x6912f3a2, 0x22f23c41,		0x65646b4a, 0x8b9f8705, 0xeb9b9a95, 0x79fe6b4e, 0x0536f447, 0x23224d61, 0x5d952ec6, 0x0cb4f736,		0xdc14be6d, 0xb24609b0, 0xd3f79b62, 0x6518c836, 0x83a3cf42, 0x9b641fb0, 0x17fef1c0, 0xd508cc82,		0x91a4369b, 0x39cb4a4c, 0xbbc9536c, 0xaf64c44a, 0x605eca50, 0x0c6a6805, 0xd07e9d4e, 0x78e6d3a2,		0x1b31eb6d, 0xaa01feb2, 0x4603c236, 0x1ecba3b6, 0x0effe336, 0xc3fdcb36, 0xc290036f, 0x4464692e,		0x1aca7589, 0x59a9e52e, 0x19aa7489, 0x2622c85e, 0xa598d318, 0x438ec345, 0xc79619b9, 0xaf570360,		0x5098e289, 0x36add862, 0x83c1a2b2, 0x969d0905, 0xcf3d156c, 0x49c1a445, 0xbd0b7562, 0x8fff1955,		0x1e51fe53, 0x28d6efd5, 0x2837cc62, 0x02f42d42, 0x070e3fb2, 0xbcb18705, 0x14a4e15b, 0x82096844,		0xcfcb1c2e, 0x37e27fc7, 0x07923748, 0x0c14bc2e, 0x26100905, 0xcb7cd93e, 0x3bc0d2c0, 0x97131b4c,		0x6f1e5c17, 0xa7939f43, 0xb7a0bf58, 0xafa83a47, 0xcbb83f32, 0x5f321cb0, 0x52d6c3c7, 0xdeac5bc7,		0x2cf310cc, 0x108a2bc3, 0x726fa14f, 0x85bad2cc, 0x459e4c90, 0x1a08b8d8, 0xcd7048c6, 0x6d5b4c90,		0xa66cfe7b, 0xad730905, 0xdaac5bc7, 0x8417fd9f, 0x41377432, 0x1f138632, 0x295a12b2, 0x7ac031b2,		0x3a87d295, 0xe219bc2e, 0xf485d295, 0x137b6405, 0xcfffd9ad, 0xafe20844, 0x32679a5f, 0xa431c644,		0x0e5fce8c, 0x305ef853, 0xad26ca32, 0xd9d21a54, 0xddd0d736, 0xc24ec0c7, 0x4aadcd5b, 0x49109852,		0x9d6b3ac6, 0xf0aa1e8b, 0xf1bfa343, 0x8a30c0ad, 0x260f93d4, 0x2339e760, 0x8869959f, 0xc207216c,		0x29453448, 0xb651ec36, 0x45496259, 0xa23d1bcc, 0xb39bcf43, 0xa1d29432, 0x3507c658, 0x4a88dd62,		0x27aff363, 0x7498ea6d, 0x4a6785d5, 0x5e6d47c2, 0x3baba542, 0x045a37ae, 0xa24dc0c7, 0xe981ea4d,		0xed6ce217, 0x857214c6, 0x6b6c0464, 0x5a4945b8, 0x12f24742, 0xf35f42ad, 0xfd0f5a4e, 0xfb081556,		0xb24b5861, 0x2e114146, 0xb7780905, 0x33bb0e48, 0x39e26556, 0xa794484d, 0x4225424d, 0x3003795b,		0x31c8cf44, 0xd65bad59, 0x127bc648, 0xf2bc4d4c, 0x0273dc50, 0x4572d736, 0x064bf653, 0xcdcd126c,		0x608281ae, 0x4d130087, 0x1016f725, 0xba185fc0, 0x16c1a84f, 0xfb697252, 0xa2942360, 0x53083b6c,		0x0583f1c0, 0x2d5a2441, 0xc172aa43, 0xcd11cf36, 0x7b14ed62, 0x5c94f1c0, 0x7c23132e, 0x39965a6f,		0x7890e24e, 0xa38ec447, 0xc187f1c0, 0xef80b647, 0xf20a7432, 0x7ad1d8d2, 0x869e2ec6, 0xccdb5c5d,		0x9d11f636, 0x2161bb25, 0x7599f889, 0x2265ecad, 0x0f4f0e55, 0x7d25854a, 0xf857e360, 0xf83f3d6c,		0x9cc93bb8, 0x02716857, 0x5dd8a177, 0x8adc6cd4, 0xe5613d46, 0x6a734f50, 0x2a5c3bae, 0x4a04c3d1,		0xe4613d46, 0x8426f4bc, 0x3e1b5fc0, 0x0d5a3c18, 0xd0f6d154, 0x21c7ff5e, 0xeb3f3d6c, 0x9da5edc0,		0x5d753b81, 0x0d8d53d4, 0x2613f018, 0x4443698d, 0x8ca1edcd, 0x10ed3f4e, 0x789b403a, 0x7b984a4b,		0x964ebc25, 0x7520ee60, 0x4f4828bc, 0x115c407d, 0x32dd0667, 0xa741715e, 0x1d3f3532, 0x817d1f56,		0x2f99a552, 0x6b2a5956, 0x8d4f4f05, 0xd23c1e17, 0x98993748, 0x2c92e536, 0x237ebdc3, 0xa762fb43,		0x32016b71, 0xd0e7cf79, 0x7d35bdd5, 0x53dac3d2, 0x31016b71, 0x7fb8f8ce, 0x9a38c232, 0xefaa42ad,		0x876b823d, 0x18175347, 0xdb46597d, 0xd2c168da, 0xcd6fe9dc, 0x45272e4e, 0x8d4bca5b, 0xa4043d47,		0xaab7aa47, 0x202881ae, 0xa4aef160, 0xecd7e6bc, 0x391359ad, 0xd8cc9318, 0xbbeee52e, 0x077067b0,		0xebd39d62, 0x0cedc547, 0x23d3e15e, 0xa5a81318, 0x179a32c6, 0xe4d3483d, 0x03680905, 0xe8018abc,		0xdde9ef5b, 0x438b8705, 0xb48224a0, 0xcbd69218, 0x9075795b, 0xc6411c3e, 0x03833f5c, 0xf33f8b5e,		0x495e464b, 0x83c8e65b, 0xac09cd25, 0xdaabc547, 0x7665a553, 0xc5263718, 0x2fd0c5cd, 0x22224d61,		0x3e954048, 0xfaa37557, 0x36dbc658, 0xa81453d0, 0x5a941f5d, 0xa598ea60, 0x65384ac6, 0x10aaa545,		0xaaab795b, 0xdda7024c, 0x0966f4c6, 0x68571c08, 0x8b40ee59, 0x33ac096c, 0x844b4c4b, 0xd392254d,		0xba4d5a46, 0x63029653, 0xf655f636, 0xbe4c4bb1, 0x45dad036, 0x204bc052, 0x06c3a2b2, 0xf31fba6a,		0xb21f09b0, 0x540d0751, 0xc7b46a57, 0x6a11795b, 0x3d514045, 0x0318aa6d, 0x30306ec3, 0x5c077432,		0x259ae46d, 0x82bbd35f, 0xae4222c0, 0x254415d4, 0xbd5f574b, 0xd8fd175e, 0x0a3f38c3, 0x2dce6bb8,		0xc201d058, 0x17fca5bc, 0xe8453cca, 0xd361f636, 0xa0d9edc0, 0x2f232e4e, 0x134e116c, 0x61ddc058,		0x05ba7283, 0xe1f7ed5b, 0x040ec452, 0x4b672e4e, 0xe4efa36d, 0x47dca52e, 0xe9332e4e, 0xa3acb992,		0x24714c90, 0xa8cc8632, 0x26b1ce6d, 0x264e53d4, 0xd3d2718c, 0x225534ad, 0xe289f3a2, 0x87341717,		0x9255ad4f, 0x184bbb25, 0x885c7abc, 0x3a6e9ac6, 0x1924185e, 0xb73d4c90, 0x946d807a, 0xa0d78e3f,		0x5a16bb25, 0xcb09795b, 0x8d0de657, 0x630b8b25, 0xe572c6cf, 0x2b3f1118, 0x4242a91f, 0x32990905,		0x058b0905, 0xe266fc60, 0xbe66c5b0, 0xcc98e46d, 0x698c943e, 0x44bd0cc3, 0x865c7abc, 0x771764d3,		0x4675d655, 0x354e4826, 0xb67ac152, 0xaeccf285, 0xea625b4e, 0xbcd6031f, 0x5e81eb18, 0x74b347ce,		0x3ca56ac1, 0x54ee4546, 0x38a8175e, 0xa3c21155, 0x2f01576d, 0x5d7ade50, 0xa003ae48, 0x2bc1d31f,		0x13f5094c, 0x7ab32648, 0x542e9fd5, 0x53136bc1, 0x7fdf51c0, 0x802197b2, 0xa2d2cc5b, 0x6b5f4bc0	};	bool ret = false;	CBitcoinAddrDb adb;    ret = adb.Read(m_BitcoinAddrMan);    if (0 == m_BitcoinAddrMan.size())    {        std::vector<CAddress> vAdd;        vAdd.reserve(ARRAYLEN(BitcoinNetSeed));        for (unsigned int i = 0; i < ARRAYLEN(BitcoinNetSeed); i++)        {            const int64_t nOneWeek = 7*24*60*60;            struct in_addr ip;            memcpy(&ip, &BitcoinNetSeed[i], sizeof(ip));            CAddress addr(CService(ip, Bitcoin_DEFAULT_PORT));            addr.nTime = GetTime()-GetRand(nOneWeek)-nOneWeek;            vAdd.push_back(addr);        }    	m_BitcoinAddrMan.Add(vAdd, CNetAddr("127.0.0.1"));    }    return ret;//.........这里部分代码省略.........
开发者ID:DSPay,项目名称:DSValue,代码行数:101,


示例26: LOCK

void CNetFulfilledRequestManager::AddFulfilledRequest(const CService& addr, const std::string& strRequest){    LOCK(cs_mapFulfilledRequests);    CService addrSquashed = Params().AllowMultiplePorts() ? addr : CService(addr, 0);    mapFulfilledRequests[addrSquashed][strRequest] = GetTime() + Params().FulfilledRequestExpireTime();}
开发者ID:chaincoin,项目名称:chaincoin,代码行数:6,


示例27: ip

CService ip(uint32_t i){    struct in_addr s;    s.s_addr = i;    return CService(CNetAddr(s), Params().GetDefaultPort());}
开发者ID:svost,项目名称:bitcoin,代码行数:6,


示例28: switch

bool OptionsModel::setData(const QModelIndex & index, const QVariant & value, int role){    bool successful = true; /* set to false on parse error */    if(role == Qt::EditRole)    {        QSettings settings;        switch(index.row())        {        case StartAtStartup:            successful = GUIUtil::SetStartOnSystemStartup(value.toBool());            break;        case MinimizeToTray:            fMinimizeToTray = value.toBool();            settings.setValue("fMinimizeToTray", fMinimizeToTray);            break;        case MapPortUPnP:            settings.setValue("fUseUPnP", value.toBool());            MapPort(value.toBool());            break;        case MinimizeOnClose:            fMinimizeOnClose = value.toBool();            settings.setValue("fMinimizeOnClose", fMinimizeOnClose);            break;        case ProxyUse:            settings.setValue("fUseProxy", value.toBool());            ApplyProxySettings();            break;        case ProxyIP: {            proxyType proxy;            proxy = CService("127.0.0.1", 9050);            GetProxy(NET_IPV4, proxy);            CNetAddr addr(value.toString().toStdString());            proxy.SetIP(addr);            settings.setValue("addrProxy", proxy.ToStringIPPort().c_str());            successful = ApplyProxySettings();        }        break;        case ProxyPort: {            proxyType proxy;            proxy = CService("127.0.0.1", 9050);            GetProxy(NET_IPV4, proxy);            proxy.SetPort(value.toInt());            settings.setValue("addrProxy", proxy.ToStringIPPort().c_str());            successful = ApplyProxySettings();        }        break;        case Fee:            nTransactionFee = value.toLongLong();            settings.setValue("nTransactionFee", (qint64) nTransactionFee);            emit transactionFeeChanged(nTransactionFee);            break;        case ReserveBalance:            nReserveBalance = value.toLongLong();            settings.setValue("nReserveBalance", (qint64) nReserveBalance);            emit reserveBalanceChanged(nReserveBalance);            break;        case DisplayUnit:            nDisplayUnit = value.toInt();            settings.setValue("nDisplayUnit", nDisplayUnit);            emit displayUnitChanged(nDisplayUnit);            break;        case Language:            settings.setValue("language", value);            break;        case CoinControlFeatures: {            fCoinControlFeatures = value.toBool();            settings.setValue("fCoinControlFeatures", fCoinControlFeatures);            emit coinControlFeaturesChanged(fCoinControlFeatures);            }            break;        case MinimizeCoinAge:           fMinimizeCoinAge = value.toBool();           settings.setValue("fMinimizeCoinAge", fMinimizeCoinAge);           break;        case UseBlackTheme:            fUseBlackTheme = value.toBool();            settings.setValue("fUseBlackTheme", fUseBlackTheme);            break;        case DarksendRounds:            nDarksendRounds = value.toInt();            settings.setValue("nDarksendRounds", nDarksendRounds);            emit darksendRoundsChanged(nDarksendRounds);            break;        case anonymizecovenAmount:            nAnonymizecovenAmount = value.toInt();            settings.setValue("nAnonymizecovenAmount", nAnonymizecovenAmount);            emit anonymizecovenAmountChanged(nAnonymizecovenAmount);            break;#ifdef USE_NATIVE_I2P        case I2PUseI2POnly:        {            ScopeGroupHelper s(settings, I2P_OPTIONS_SECTION_NAME);            settings.setValue("useI2POnly", value.toBool());            break;        }        case I2PSAMHost:        {            ScopeGroupHelper s(settings, I2P_OPTIONS_SECTION_NAME);//.........这里部分代码省略.........
开发者ID:covencoin2,项目名称:coven2,代码行数:101,


示例29: CMainParams

    CMainParams() {        // The message start string is designed to be unlikely to occur in normal data.        pchMessageStart[0] = 0x0A;        pchMessageStart[1] = 0x05;        pchMessageStart[2] = 0x03;        pchMessageStart[3] = 0x0C;        nDefaultPort = 10240;        nRPCPort = 10241;        bnProofOfWorkLimit = CBigNum(~uint256(0) >> 20);        nSubsidyHalvingInterval = 102400;        // Build the genesis block. Note that the output of the genesis coinbase cannot        // be spent as it did not originally exist in the database.          const char* pszTimestamp = "ImperialCoin's Reign Has Started!";        CTransaction txNew;        txNew.vin.resize(1);        txNew.vout.resize(1);        txNew.vin[0].scriptSig = CScript() << 486604799 << CBigNum(4) << vector<unsigned char>((const unsigned char*)pszTimestamp, (const unsigned char*)pszTimestamp + strlen(pszTimestamp));        txNew.vout[0].nValue = 1 * COIN;        txNew.vout[0].scriptPubKey = CScript() << ParseHex("") << OP_CHECKSIG;        genesis.vtx.push_back(txNew);        genesis.hashPrevBlock = 0;        genesis.hashMerkleRoot = genesis.BuildMerkleTree();        genesis.nVersion = 1;        genesis.nTime    = 1393638000;        genesis.nBits    = 0x1e0fffff;        genesis.nNonce   = 0;                //// debug print        hashGenesisBlock = genesis.GetHash();        while (hashGenesisBlock > bnProofOfWorkLimit.getuint256()){            if (++genesis.nNonce==0) break;            hashGenesisBlock = genesis.GetHash();        }        printf("%s/n", hashGenesisBlock.ToString().c_str());        printf("%s/n", genesis.hashMerkleRoot.ToString().c_str());        printf("%x/n", bnProofOfWorkLimit.GetCompact());        genesis.print();                        assert(hashGenesisBlock == uint256("0x"));        assert(genesis.hashMerkleRoot == uint256("0x"));        vSeeds.push_back(CDNSSeedData("68.232.180.111", "68.232.180.111"));        base58Prefixes[PUBKEY_ADDRESS] = 1;        base58Prefixes[SCRIPT_ADDRESS] = 30;        base58Prefixes[SECRET_KEY] = 224;        // Convert the pnSeeds array into usable address objects.        for (unsigned int i = 0; i < ARRAYLEN(pnSeed); i++)        {            // It'll only connect to one or two seed nodes because once it connects,            // it'll get a pile of addresses with newer timestamps.            // Seed nodes are given a random 'last seen time'             const int64 nTwoDays = 2 * 24 * 60 * 60;            struct in_addr ip;            memcpy(&ip, &pnSeed[i], sizeof(ip));            CAddress addr(CService(ip, GetDefaultPort()));            addr.nTime = GetTime() - GetRand(nTwoDays) - nTwoDays;            vFixedSeeds.push_back(addr);        }    }
开发者ID:ImperialCoin,项目名称:ImperialCoin,代码行数:66,


示例30: CMainParams

    CMainParams() {        // The message start string is designed to be unlikely to occur in normal data.        pchMessageStart[0] = 0xf7;        pchMessageStart[1] = 0x26;        pchMessageStart[2] = 0xa1;        pchMessageStart[3] = 0xbf;        vAlertPubKey = ParseHex("04e41db2a8b8dc3981f819d46060875ce483bf303613b108e673d7bb636f7786bd0458e2ced6e8b337be32d024562f3e69776412b55a7210396ad7a9944812b445");        nDefaultPort = 48481;        nRPCPort = 48480;        bnProofOfWorkLimit = CBigNum(~uint256(0) >> 20);        nSubsidyHalvingInterval = 262800;        // Build the genesis block. Note that the output of the genesis coinbase cannot        // be spent as it did not originally exist in the database.          const char* pszTimestamp = "Tone Abbet Does it again";        CTransaction txNew;        txNew.vin.resize(1);        txNew.vout.resize(1);        txNew.vin[0].scriptSig = CScript() << 486604799 << CBigNum(4) << vector<unsigned char>((const unsigned char*)pszTimestamp, (const unsigned char*)pszTimestamp + strlen(pszTimestamp));        txNew.vout[0].nValue = COIN / 10000;        txNew.vout[0].scriptPubKey = CScript() << ParseHex("04678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5f") << OP_CHECKSIG;        genesis.vtx.push_back(txNew);        genesis.hashPrevBlock = 0;        genesis.hashMerkleRoot = genesis.BuildMerkleTree();        genesis.nVersion = 1;        genesis.nTime    = 1403852000;        genesis.nBits    = 0x1e0fffff;        genesis.nNonce   = 1376737;                //// debug print        hashGenesisBlock = genesis.GetHash();        while (hashGenesisBlock > bnProofOfWorkLimit.getuint256()){            if (++genesis.nNonce==0) break;            hashGenesisBlock = genesis.GetHash();        }        printf("%s/n", hashGenesisBlock.ToString().c_str());        printf("%s/n", genesis.hashMerkleRoot.ToString().c_str());        printf("%x/n", bnProofOfWorkLimit.GetCompact());        genesis.print();        /*if (false && (genesis.GetHash() != hashGenesisBlock)) {        // This will figure out a valid hash and Nonce if you're        // creating a different genesis block:            uint256 hashTarget = CBigNum().SetCompact(genesis.nBits).getuint256();            while (genesis.GetHash() > hashTarget)               {                   ++genesis.nNonce;                   if (genesis.nNonce == 0)                   {                       printf("NONCE WRAPPED, incrementing time");                       ++genesis.nTime;                   }               }        }        //// debug print        genesis.print();        printf("genesis.GetHash() == %s/n", genesis.GetHash().ToString().c_str());        printf("genesis.hashMerkleRoot == %s/n", genesis.hashMerkleRoot.ToString().c_str());        printf("genesis.nTime = %u /n", genesis.nTime);        printf("genesis.nNonce = %u /n", genesis.nNonce);              */        assert(hashGenesisBlock == uint256("0x00000dffc654ad0a8d9055536135b69d71dcd878d901508fc9381bde67bf0645"));        assert(genesis.hashMerkleRoot == uint256("0x94076775c950c86d89bc2225c87bcb4e29621b57d5e9b430d7fa190078b0e980"));        vSeeds.push_back(CDNSSeedData("162.248.4.167", "162.248.4.167"));        vSeeds.push_back(CDNSSeedData("seed2.whirlcoin.org", "seed2.whirlcoin.org"));        vSeeds.push_back(CDNSSeedData("seed3.whirlcoin.org", "seed3.whirlcoin.org"));        vSeeds.push_back(CDNSSeedData("whirlcoin.zapto.org", "whirlcoin.zapto.org"));        vSeeds.push_back(CDNSSeedData("whirlcoin.no-ip.org", "whirlcoin.no-ip.org"));        vSeeds.push_back(CDNSSeedData("whirlcoin.strangled.net", "whirlcoin.strangled.net"));        vSeeds.push_back(CDNSSeedData("whirlcoin.ignorelist.com", "whirlcoin.ignorelist.com"));        base58Prefixes[PUBKEY_ADDRESS] = 73;        base58Prefixes[SCRIPT_ADDRESS] = 12;        base58Prefixes[SECRET_KEY] = 226;        // Convert the pnSeeds array into usable address objects.        for (unsigned int i = 0; i < ARRAYLEN(pnSeed); i++)        {            // It'll only connect to one or two seed nodes because once it connects,            // it'll get a pile of addresses with newer timestamps.            // Seed nodes are given a random 'last seen time'             const int64 nTwoDays = 2 * 24 * 60 * 60;            struct in_addr ip;            memcpy(&ip, &pnSeed[i], sizeof(ip));            CAddress addr(CService(ip, GetDefaultPort()));            addr.nTime = GetTime() - GetRand(nTwoDays) - nTwoDays;            vFixedSeeds.push_back(addr);        }    }
开发者ID:nuggetbram,项目名称:whirlcoin,代码行数:94,



注:本文中的CService函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ CSize函数代码示例
C++ CScript函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。