Hush Full Node software. We were censored from Github, this is where all development happens now.
https://hush.is
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
1.2 KiB
46 lines
1.2 KiB
#!/usr/bin/perl
|
|
# Copyright (c) 2016-2023 The Hush developers
|
|
# Distributed under the GPLv3 software license, see the accompanying
|
|
# file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html
|
|
use warnings;
|
|
use strict;
|
|
use JSON;
|
|
|
|
# Generates taddrs/scriptpubs for testing the decentralized devtax
|
|
# where all generated taddrs/scriptpubs will be part of existing wallet.dat
|
|
# OR generates scriptpubs for addresses if given a file argument
|
|
# addresses must be one-per-line in the file
|
|
|
|
my $file = shift;
|
|
my $N = 20; # hushd is currently hardcoded to use 20 addresses
|
|
my $hush = "./src/hush-cli";
|
|
my $getnew = "$hush getnewaddress";
|
|
my $validate = "$hush validateaddress";
|
|
my $fh;
|
|
|
|
if($file) {
|
|
open($fh, '<', $file) or die $!;
|
|
}
|
|
|
|
print "std::string DEVTAX_DATA[DEVTAX_NUM][2] = {\n";
|
|
|
|
for my $i (1 .. $N) {
|
|
my $taddr;
|
|
if ($file) {
|
|
$taddr = <$fh>;
|
|
unless($taddr) {
|
|
print "Error: Less than $N addresses in $file !\n";
|
|
exit(1);
|
|
}
|
|
} else {
|
|
$taddr = qx{$getnew};
|
|
}
|
|
chomp $taddr;
|
|
my $j = qx{$validate $taddr};
|
|
my $json = decode_json($j);
|
|
my $scriptpub = $json->{scriptPubKey};
|
|
printf qq!{"%s", "%s"},\n!, $taddr, $scriptpub;
|
|
}
|
|
|
|
print "};\n";
|
|
close($fh) if $file;
|
|
|