diff --git a/read_names.js b/read_names.js index 9dea979d5b9c271b517f3e7c06d40c66bcf97def..34ad5c0540121ef0293db4e9d34b2161bc2b79b5 100644 --- a/read_names.js +++ b/read_names.js @@ -1,5 +1,4 @@ #!/usr/bin/env nodejs -var BigNumber = require('bignumber.js'); var fs = require('fs'); var Web3 = require('web3'); @@ -10,7 +9,7 @@ web3.setProvider(new web3.providers.HttpProvider('http://localhost:8545')); var REG_ADDR_FILE = "contractAddress.txt"; var REG_ADDR = "0xe53cb2ace8707526a5050bec7bcf979c57f8b44f"; -var REG_ABI_registerFor = ['bytes32', 'address', 'address']; +var REG_ABI_reserveFor = ['bytes32', 'address', 'address', 'string', 'string']; var NAME_LIST = []; function readContractAddress() { fs.readFile(REG_ADDR_FILE, function(err, content) { @@ -37,10 +36,15 @@ function getAllNames() { try { var tr = block.transactions[t]; if (tr.to == REG_ADDR) { - var p = web3.SolidityCoder.decodeParams(REG_ABI_registerFor, tr.input.substr(10)); - var n = web3.toUtf8(p[0]); + const p = web3.SolidityCoder.decodeParams(REG_ABI_reserveFor, tr.input.substr(10)); + const n = web3.toUtf8(p[0]); console.log("Entry: " + n + " -> " + p[1] + " " + p[2]); - NAME_LIST.push({"name": n,"addr":p[2], "owner":p[1]}); + const newObj = {"name": n,"addr":p[2], "owner":p[1]}; + if (p[3]) + newObj["publickey"] = p[3]; + if (p[4]) + newObj["signature"] = p[4]; + NAME_LIST.push(newObj); } else { console.log("Wrong contract: " + tr.to + " expected " + REG_ADDR); } diff --git a/write_names.js b/write_names.js index 99b3c1f569438c9e560dfc7dca07e5ec282fe289..c34b3ddd205072143b0cf23926f12c6a441e72de 100644 --- a/write_names.js +++ b/write_names.js @@ -21,7 +21,6 @@ var providedPath = String(argv['_'][0]) batchInputFile = validateFile(providedPath); if(!batchInputFile) throw "File " + providedPath + " does not exist" - Object.getPrototypeOf(web3.eth).awaitConsensus = function(txhash, mined_cb) { @@ -140,7 +139,7 @@ function formatAddress(address) { } return undefined; } -function registerName(addressparam, nameparam, ownerparam, mined_cb){ +function registerName(addressparam, nameparam, ownerparam, pk, sig, mined_cb){ try { var addr = formatAddress(addressparam); if (!addr) { @@ -174,7 +173,7 @@ function registerName(addressparam, nameparam, ownerparam, mined_cb){ } else { console.log("Remaing gaz: " + getRemainingGaz()); unlockAccount(); - reg.reserveFor.sendTransaction(formatName(nameparam), ownerparam, addr, { + reg.reserveFor.sendTransaction(formatName(nameparam), ownerparam, addr, pk, sig, { from: coinbase, gas: 3000000 }, function(terr, reg_c) { @@ -226,7 +225,7 @@ function startWrites(){ console.log(String(NAME_LIST.length) + " inserts to do"); //create parallel queue that does 256 registerNames parallely var q = async.queue(function(task, callback) { - registerName(task['addr'], task['name'], task['owner'], callback); + registerName(task['addr'], task['name'], task['owner'], task['publickey'], task['signature'], callback); }, 256); for (var i = 0; i < NAME_LIST.length; i++) {