├── .gitattributes ├── .github └── workflows │ └── build.yaml ├── .gitignore ├── .gitlab-ci.yml ├── .travis.yml ├── .tx └── config ├── CMakeLists.txt ├── CONTRIBUTING.md ├── COPYING ├── INSTALL.md ├── Jenkinsfile ├── Jenkinsfile.gitian ├── Makefile.am ├── README.md ├── autogen.sh ├── build-aux └── m4 │ ├── ax_boost_base.m4 │ ├── ax_boost_chrono.m4 │ ├── ax_boost_filesystem.m4 │ ├── ax_boost_program_options.m4 │ ├── ax_boost_system.m4 │ ├── ax_boost_thread.m4 │ ├── ax_boost_unit_test_framework.m4 │ ├── ax_check_compile_flag.m4 │ ├── ax_check_link_flag.m4 │ ├── ax_check_preproc_flag.m4 │ ├── ax_cxx_compile_stdcxx.m4 │ ├── ax_gcc_func_attribute.m4 │ ├── ax_pthread.m4 │ ├── bitcoin_find_bdb48.m4 │ ├── bitcoin_qt.m4 │ ├── bitcoin_subdir_to_include.m4 │ └── l_atomic.m4 ├── build-win.sh ├── build.properties ├── build.sh ├── ci ├── Dockerfile.builder ├── Dockerfile.gitian-builder ├── build_depends.sh ├── build_src.sh ├── matrix.sh ├── test_integrationtests.sh └── test_unittests.sh ├── configure.ac ├── contrib ├── README.md ├── auto_gdb │ ├── README.md │ ├── common_helpers.py │ ├── debug.gdb │ ├── log_size.py │ ├── pigeon_dbg.sh │ ├── simple_class_obj.py │ ├── stl_containers.py │ ├── test_used_size.gdb │ └── used_size.py ├── debian │ ├── README.md │ ├── changelog │ ├── compat │ ├── control │ ├── copyright │ ├── examples │ │ └── pigeon.conf │ ├── gbp.conf │ ├── patches │ │ ├── README │ │ └── series │ ├── pigeon-qt.desktop │ ├── pigeon-qt.install │ ├── pigeon-qt.lintian-overrides │ ├── pigeon-qt.manpages │ ├── pigeon-qt.protocol │ ├── pigeon-tx.bash-completion │ ├── pigeon-tx.install │ ├── pigeon-tx.manpages │ ├── pigeond.bash-completion │ ├── pigeond.examples │ ├── pigeond.install │ ├── pigeond.lintian-overrides │ ├── pigeond.manpages │ ├── rules │ ├── source │ │ └── format │ └── watch ├── devtools │ ├── README.md │ ├── check-doc.py │ ├── clang-format-diff.py │ ├── commit-script-check.sh │ ├── copyright_header.py │ ├── gen-manpages.sh │ ├── git-subtree-check.sh │ ├── github-merge.py │ ├── optimize-pngs.py │ ├── security-check.py │ ├── split-debug.sh.in │ ├── symbol-check.py │ ├── test-security-check.py │ └── update-translations.py ├── filter-lcov.py ├── gitian-build.py ├── gitian-descriptors │ ├── README.md │ ├── gitian-linux.yml │ ├── gitian-osx-signer.yml │ ├── gitian-osx.yml │ ├── gitian-win-signer.yml │ └── gitian-win.yml ├── gitian-keys │ ├── README.md │ ├── codablock.pgp │ ├── gladcow.pgp │ ├── nmarley.pgp │ ├── pasta.pgp │ ├── schinzelh.pgp │ └── udjinm6.pgp ├── init │ ├── README.md │ ├── org.pigeon.pigeond.plist │ ├── pigeond.conf │ ├── pigeond.init │ ├── pigeond.openrc │ ├── pigeond.openrcconf │ └── pigeond.service ├── linearize │ ├── README.md │ ├── example-linearize-testnet.cfg │ ├── example-linearize.cfg │ ├── linearize-data.py │ └── linearize-hashes.py ├── macdeploy │ ├── LICENSE │ ├── README.md │ ├── background.svg │ ├── custom_dsstore.py │ ├── detached-sig-apply.sh │ ├── detached-sig-create.sh │ ├── extract-osx-sdk.sh │ ├── fancy.plist │ └── macdeployqtplus ├── pigeon-cli.bash-completion ├── pigeon-qt.pro ├── pigeon-tx.bash-completion ├── pigeond.bash-completion ├── qos │ ├── README.md │ └── tc.sh ├── seeds │ ├── README.md │ ├── generate-seeds.py │ ├── makeseeds.py │ ├── nodes_main.txt │ └── nodes_test.txt ├── testgen │ ├── README.md │ ├── base58.py │ └── gen_base58_test_vectors.py ├── tidy_datadir.sh ├── verify-commits │ ├── README.md │ ├── allow-revsig-commits │ ├── gpg.sh │ ├── pre-push-hook.sh │ ├── trusted-git-root │ ├── trusted-keys │ ├── trusted-sha512-root-commit │ └── verify-commits.sh ├── verifybinaries │ ├── README.md │ └── verify.sh ├── windeploy │ ├── detached-sig-create.sh │ └── win-codesign.cert └── zmq │ ├── zmq_sub.py │ └── zmq_sub3.4.py ├── depends ├── .gitignore ├── Makefile ├── README.md ├── builders │ ├── darwin.mk │ ├── default.mk │ └── linux.mk ├── config.guess ├── config.site.in ├── config.sub ├── description.md ├── funcs.mk ├── hosts │ ├── darwin.mk │ ├── default.mk │ ├── linux.mk │ └── mingw32.mk ├── packages.md ├── packages │ ├── backtrace.mk │ ├── bdb.mk │ ├── boost.mk │ ├── chia_bls.mk │ ├── dbus.mk │ ├── expat.mk │ ├── fontconfig.mk │ ├── freetype.mk │ ├── gmp.mk │ ├── libICE.mk │ ├── libSM.mk │ ├── libX11.mk │ ├── libXau.mk │ ├── libXext.mk │ ├── libevent.mk │ ├── libxcb.mk │ ├── miniupnpc.mk │ ├── native_biplist.mk │ ├── native_cctools.mk │ ├── native_cdrkit.mk │ ├── native_ds_store.mk │ ├── native_libdmg-hfsplus.mk │ ├── native_mac_alias.mk │ ├── native_protobuf.mk │ ├── openssl.mk │ ├── packages.mk │ ├── protobuf.mk │ ├── qrencode.mk │ ├── qt.mk │ ├── xcb_proto.mk │ ├── xextproto.mk │ ├── xproto.mk │ ├── xtrans.mk │ ├── zeromq.mk │ └── zlib.mk └── patches │ ├── native_biplist │ └── sorted_list.patch │ ├── native_cdrkit │ └── cdrkit-deterministic.patch │ ├── native_mac_alias │ └── python3.patch │ ├── openssl │ └── 0001-Add-OpenSSL-termios-fix-for-musl-libc.patch │ ├── qt │ ├── fix-cocoahelpers-macos.patch │ ├── fix-xcb-include-order.patch │ ├── fix_qt_configure.patch │ ├── fix_qt_pkgconfig.patch │ ├── mac-qmake.conf │ ├── mingw-uuidof.patch │ ├── pidlist_absolute.patch │ └── qfixed-coretext.patch │ └── zeromq │ ├── 9114d3957725acd34aa8b8d011585812f3369411.patch │ └── 9e6745c12e0b100cd38acecc16ce7db02905e27c.patch ├── doc ├── .gitignore ├── Doxyfile.in ├── README.md ├── README_osx.md ├── README_windows.txt ├── REST-interface.md ├── assets-attribution.md ├── benchmarking.md ├── bips.md ├── bitcoin_logo_doxygen.png ├── build-cross.md ├── build-generic.md ├── build-osx.md ├── build-unix.md ├── build-windows.md ├── developer-notes.md ├── dnsseed-policy.md ├── files.md ├── fuzzing.md ├── gitian-building.md ├── gitian-building │ ├── all_files_in_one_partition.png │ ├── create_new_vm.png │ ├── create_vm_file_location_size.png │ ├── create_vm_hard_disk.png │ ├── create_vm_hard_disk_file_type.png │ ├── create_vm_memsize.png │ ├── create_vm_storage_physical_hard_disk.png │ ├── debian_install_10_configure_clock.png │ ├── debian_install_11_partition_disks.png │ ├── debian_install_12_choose_disk.png │ ├── debian_install_14_finish.png │ ├── debian_install_15_write_changes.png │ ├── debian_install_16_choose_a_mirror.png │ ├── debian_install_18_proxy_settings.png │ ├── debian_install_19_software_selection.png │ ├── debian_install_1_boot_menu.png │ ├── debian_install_20_install_grub.png │ ├── debian_install_21_install_grub_bootloader.png │ ├── debian_install_22_finish_installation.png │ ├── debian_install_2_select_a_language.png │ ├── debian_install_3_select_location.png │ ├── debian_install_4_configure_keyboard.png │ ├── debian_install_5_configure_the_network.png │ ├── debian_install_6_domain_name.png │ ├── debian_install_6a_set_up_root_password.png │ ├── debian_install_7_set_up_user_fullname.png │ ├── debian_install_8_set_up_username.png │ ├── debian_install_9_user_password.png │ ├── debian_root_login.png │ ├── network_settings.png │ ├── port_forwarding_rules.png │ ├── select_startup_disk.png │ └── system_settings.png ├── init.md ├── instantsend.md ├── keepass.md ├── man │ ├── Makefile.am │ ├── pigeon-cli.1 │ ├── pigeon-qt.1 │ ├── pigeon-tx.1 │ └── pigeond.1 ├── masternode-budget.md ├── reduce-traffic.md ├── release-notes.md ├── release-notes │ └── dash │ │ ├── release-notes-0.10.0.md │ │ ├── release-notes-0.11.0.md │ │ ├── release-notes-0.11.1.md │ │ ├── release-notes-0.11.2.md │ │ ├── release-notes-0.12.0.md │ │ ├── release-notes-0.12.2.2.md │ │ ├── release-notes-0.12.2.3.md │ │ ├── release-notes-0.12.2.md │ │ ├── release-notes-0.12.3-backports.md │ │ ├── release-notes-0.12.3.1.md │ │ ├── release-notes-0.12.3.2.md │ │ ├── release-notes-0.12.3.3.md │ │ ├── release-notes-0.12.3.4.md │ │ ├── release-notes-0.13.0.md │ │ ├── release-notes-0.13.1.md │ │ ├── release-notes-0.13.2.md │ │ ├── release-notes-0.13.3.md │ │ ├── release-notes-0.14.0.1.md │ │ ├── release-notes-0.14.0.2.md │ │ ├── release-notes-0.14.0.3.md │ │ ├── release-notes-0.14.0.4.md │ │ ├── release-notes-0.14.0.5.md │ │ ├── release-notes-0.14.0.md │ │ ├── release-notes-0.15-backports.md │ │ └── release-notes-0.9.0.md ├── release-process.md ├── shared-libraries.md ├── tor.md ├── translation_process.md ├── translation_strings_policy.md ├── travis-ci.md └── zmq.md ├── docker ├── Dockerfile ├── README.md ├── build-docker.sh └── push-docker.sh ├── libpigeonconsensus.pc.in ├── share ├── certs │ ├── BitcoinFoundation_Apple_Cert.pem │ ├── BitcoinFoundation_Comodo_Cert.pem │ └── PrivateKeyNotes.md ├── genbuild.sh ├── pixmaps │ ├── bitcoin.ico │ ├── favicon.png │ ├── nsis-header.bmp │ ├── nsis-wizard.bmp │ ├── pigeon-HighContrast-128.png │ ├── pigeon-HighContrast-16.png │ ├── pigeon-HighContrast-22.png │ ├── pigeon-HighContrast-24.png │ ├── pigeon-HighContrast-256.png │ ├── pigeon-HighContrast-32.png │ ├── pigeon-HighContrast-48.png │ ├── pigeon-HighContrast-scalable.svg │ ├── pigeon-hicolor-scalable.svg │ ├── pigeon128.png │ ├── pigeon128.xpm │ ├── pigeon16.png │ ├── pigeon16.xpm │ ├── pigeon256.png │ ├── pigeon256.xpm │ ├── pigeon32.png │ ├── pigeon32.xpm │ ├── pigeon64.png │ └── pigeon64.xpm ├── qt │ ├── Info.plist.in │ └── extract_strings_qt.py ├── rpcuser │ ├── README.md │ └── rpcuser.py └── setup.nsi.in ├── src ├── .clang-format ├── Makefile.am ├── Makefile.bench.include ├── Makefile.leveldb.include ├── Makefile.qt.include ├── Makefile.qttest.include ├── Makefile.test.include ├── addrdb.cpp ├── addrdb.h ├── addressindex.h ├── addrman.cpp ├── addrman.h ├── algo │ ├── Lyra2RE.c │ ├── Lyra2RE.h │ ├── SWIFFTX │ │ ├── SWIFFTX.c │ │ ├── SWIFFTX.h │ │ ├── Swifftx_sha3.cpp │ │ ├── Swifftx_sha3.h │ │ ├── hash_interface.h │ │ ├── inttypes.h │ │ ├── sha3_interface.h │ │ ├── stdbool.h │ │ └── stdint.h │ ├── aes_helper.c │ ├── blake.c │ ├── bmw.c │ ├── cubehash.c │ ├── echo.c │ ├── extra.c │ ├── extra.h │ ├── fugue.c │ ├── gost_streebog.c │ ├── gost_streebog.h │ ├── groestl.c │ ├── hamsi.c │ ├── hamsi_helper.c │ ├── hashx21s.h │ ├── haval.c │ ├── haval_helper.c │ ├── jh.c │ ├── keccak.c │ ├── luffa.c │ ├── lyra2.cpp │ ├── lyra2.h │ ├── md_helper.c │ ├── sha2.c │ ├── shabal.c │ ├── shavite.c │ ├── simd.c │ ├── skein.c │ ├── sph_blake.h │ ├── sph_bmw.h │ ├── sph_cubehash.h │ ├── sph_echo.h │ ├── sph_fugue.h │ ├── sph_groestl.h │ ├── sph_hamsi.h │ ├── sph_haval.h │ ├── sph_jh.h │ ├── sph_keccak.h │ ├── sph_luffa.h │ ├── sph_md_helper.c │ ├── sph_sha2.c │ ├── sph_sha2.h │ ├── sph_sha2big.c │ ├── sph_shabal.h │ ├── sph_shavite.h │ ├── sph_simd.h │ ├── sph_skein.h │ ├── sph_tiger.h │ ├── sph_types.h │ ├── sph_whirlpool.h │ ├── sponge.cpp │ ├── sponge.h │ ├── tiger.cpp │ └── whirlpool.c ├── amount.h ├── arith_uint256.cpp ├── arith_uint256.h ├── base58.cpp ├── base58.h ├── batchedlogger.cpp ├── batchedlogger.h ├── bench │ ├── .gitignore │ ├── Examples.cpp │ ├── base58.cpp │ ├── bench.cpp │ ├── bench.h │ ├── bench_pigeon.cpp │ ├── bls.cpp │ ├── bls_dkg.cpp │ ├── ccoins_caching.cpp │ ├── chacha20.cpp │ ├── chacha_poly_aead.cpp │ ├── checkblock.cpp │ ├── checkqueue.cpp │ ├── coin_selection.cpp │ ├── crypto_hash.cpp │ ├── data │ │ └── block813851.raw │ ├── ecdsa.cpp │ ├── lockedpool.cpp │ ├── mempool_eviction.cpp │ ├── merkle_root.cpp │ ├── perf.cpp │ ├── perf.h │ ├── poly1305.cpp │ ├── prevector.cpp │ ├── rollingbloom.cpp │ └── string_cast.cpp ├── bip39.cpp ├── bip39.h ├── bip39_english.h ├── blockencodings.cpp ├── blockencodings.h ├── bloom.cpp ├── bloom.h ├── bls │ ├── bls.cpp │ ├── bls.h │ ├── bls_batchverifier.h │ ├── bls_ies.cpp │ ├── bls_ies.h │ ├── bls_worker.cpp │ └── bls_worker.h ├── cachemap.h ├── cachemultimap.h ├── chain.cpp ├── chain.h ├── chainparams.cpp ├── chainparams.h ├── chainparamsbase.cpp ├── chainparamsbase.h ├── chainparamsseeds.h ├── checkpoints.cpp ├── checkpoints.h ├── checkqueue.h ├── clientversion.cpp ├── clientversion.h ├── coins.cpp ├── coins.h ├── compat.h ├── compat │ ├── byteswap.h │ ├── endian.h │ ├── glibc_compat.cpp │ ├── glibc_sanity.cpp │ ├── glibcxx_sanity.cpp │ ├── sanity.h │ └── strnlen.cpp ├── compressor.cpp ├── compressor.h ├── config │ ├── .empty │ ├── pigeon.config.h │ └── pigeon.config.h.in ├── consensus │ ├── consensus.h │ ├── merkle.cpp │ ├── merkle.h │ ├── params.h │ ├── tx_verify.cpp │ ├── tx_verify.h │ └── validation.h ├── core_io.h ├── core_memusage.h ├── core_read.cpp ├── core_write.cpp ├── crypto │ ├── aes.cpp │ ├── aes.h │ ├── aes_helper.c │ ├── blake.c │ ├── bmw.c │ ├── chacha20.cpp │ ├── chacha20.h │ ├── chacha_poly_aead.cpp │ ├── chacha_poly_aead.h │ ├── common.h │ ├── ctaes │ │ ├── COPYING │ │ ├── README.md │ │ ├── bench.c │ │ ├── ctaes.c │ │ ├── ctaes.h │ │ └── test.c │ ├── cubehash.c │ ├── echo.c │ ├── groestl.c │ ├── hmac_sha256.cpp │ ├── hmac_sha256.h │ ├── hmac_sha512.cpp │ ├── hmac_sha512.h │ ├── jh.c │ ├── keccak.c │ ├── luffa.c │ ├── poly1305.cpp │ ├── poly1305.h │ ├── ripemd160.cpp │ ├── ripemd160.h │ ├── sha1.cpp │ ├── sha1.h │ ├── sha256.cpp │ ├── sha256.h │ ├── sha256_avx2.cpp │ ├── sha256_shani.cpp │ ├── sha256_sse4.cpp │ ├── sha256_sse41.cpp │ ├── sha512.cpp │ ├── sha512.h │ ├── shavite.c │ ├── simd.c │ ├── skein.c │ ├── sph_blake.h │ ├── sph_bmw.h │ ├── sph_cubehash.h │ ├── sph_echo.h │ ├── sph_groestl.h │ ├── sph_jh.h │ ├── sph_keccak.h │ ├── sph_luffa.h │ ├── sph_shavite.h │ ├── sph_simd.h │ ├── sph_skein.h │ └── sph_types.h ├── ctpl.h ├── cuckoocache.h ├── cxxtimer.hpp ├── dbwrapper.cpp ├── dbwrapper.h ├── dsnotificationinterface.cpp ├── dsnotificationinterface.h ├── evo │ ├── cbtx.cpp │ ├── cbtx.h │ ├── deterministicmns.cpp │ ├── deterministicmns.h │ ├── evodb.cpp │ ├── evodb.h │ ├── mnauth.cpp │ ├── mnauth.h │ ├── providertx.cpp │ ├── providertx.h │ ├── simplifiedmns.cpp │ ├── simplifiedmns.h │ ├── specialtx.cpp │ └── specialtx.h ├── flat-database.h ├── founderpayment.cpp ├── founderpayment.h ├── fs.cpp ├── fs.h ├── governance │ ├── governance-classes.cpp │ ├── governance-classes.h │ ├── governance-exceptions.h │ ├── governance-object.cpp │ ├── governance-object.h │ ├── governance-validators.cpp │ ├── governance-validators.h │ ├── governance-vote.cpp │ ├── governance-vote.h │ ├── governance-votedb.cpp │ ├── governance-votedb.h │ ├── governance.cpp │ └── governance.h ├── hash.cpp ├── hash.h ├── hdchain.cpp ├── hdchain.h ├── httprpc.cpp ├── httprpc.h ├── httpserver.cpp ├── httpserver.h ├── immer │ ├── algorithm.hpp │ ├── array.hpp │ ├── array_transient.hpp │ ├── atom.hpp │ ├── box.hpp │ ├── config.hpp │ ├── detail │ │ ├── arrays │ │ │ ├── no_capacity.hpp │ │ │ ├── node.hpp │ │ │ └── with_capacity.hpp │ │ ├── combine_standard_layout.hpp │ │ ├── hamts │ │ │ ├── bits.hpp │ │ │ ├── champ.hpp │ │ │ ├── champ_iterator.hpp │ │ │ └── node.hpp │ │ ├── iterator_facade.hpp │ │ ├── rbts │ │ │ ├── bits.hpp │ │ │ ├── node.hpp │ │ │ ├── operations.hpp │ │ │ ├── position.hpp │ │ │ ├── rbtree.hpp │ │ │ ├── rbtree_iterator.hpp │ │ │ ├── rrbtree.hpp │ │ │ ├── rrbtree_iterator.hpp │ │ │ └── visitor.hpp │ │ ├── ref_count_base.hpp │ │ ├── type_traits.hpp │ │ └── util.hpp │ ├── experimental │ │ ├── detail │ │ │ └── dvektor_impl.hpp │ │ └── dvektor.hpp │ ├── flex_vector.hpp │ ├── flex_vector_transient.hpp │ ├── heap │ │ ├── cpp_heap.hpp │ │ ├── debug_size_heap.hpp │ │ ├── free_list_heap.hpp │ │ ├── free_list_node.hpp │ │ ├── gc_heap.hpp │ │ ├── heap_policy.hpp │ │ ├── identity_heap.hpp │ │ ├── malloc_heap.hpp │ │ ├── split_heap.hpp │ │ ├── tags.hpp │ │ ├── thread_local_free_list_heap.hpp │ │ ├── unsafe_free_list_heap.hpp │ │ └── with_data.hpp │ ├── map.hpp │ ├── map_transient.hpp │ ├── memory_policy.hpp │ ├── refcount │ │ ├── enable_intrusive_ptr.hpp │ │ ├── no_refcount_policy.hpp │ │ ├── refcount_policy.hpp │ │ └── unsafe_refcount_policy.hpp │ ├── set.hpp │ ├── set_transient.hpp │ ├── transience │ │ ├── gc_transience_policy.hpp │ │ └── no_transience_policy.hpp │ ├── vector.hpp │ └── vector_transient.hpp ├── indirectmap.h ├── init.cpp ├── init.h ├── keepass.cpp ├── keepass.h ├── key.cpp ├── key.h ├── keystore.cpp ├── keystore.h ├── leveldb │ ├── .gitignore │ ├── .travis.yml │ ├── AUTHORS │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── Makefile │ ├── NEWS │ ├── README.md │ ├── TODO │ ├── WINDOWS.md │ ├── build_detect_platform │ ├── db │ │ ├── autocompact_test.cc │ │ ├── builder.cc │ │ ├── builder.h │ │ ├── c.cc │ │ ├── c_test.c │ │ ├── corruption_test.cc │ │ ├── db_bench.cc │ │ ├── db_impl.cc │ │ ├── db_impl.h │ │ ├── db_iter.cc │ │ ├── db_iter.h │ │ ├── db_test.cc │ │ ├── dbformat.cc │ │ ├── dbformat.h │ │ ├── dbformat_test.cc │ │ ├── dumpfile.cc │ │ ├── fault_injection_test.cc │ │ ├── filename.cc │ │ ├── filename.h │ │ ├── filename_test.cc │ │ ├── leveldbutil.cc │ │ ├── log_format.h │ │ ├── log_reader.cc │ │ ├── log_reader.h │ │ ├── log_test.cc │ │ ├── log_writer.cc │ │ ├── log_writer.h │ │ ├── memtable.cc │ │ ├── memtable.h │ │ ├── recovery_test.cc │ │ ├── repair.cc │ │ ├── skiplist.h │ │ ├── skiplist_test.cc │ │ ├── snapshot.h │ │ ├── table_cache.cc │ │ ├── table_cache.h │ │ ├── version_edit.cc │ │ ├── version_edit.h │ │ ├── version_edit_test.cc │ │ ├── version_set.cc │ │ ├── version_set.h │ │ ├── version_set_test.cc │ │ ├── write_batch.cc │ │ ├── write_batch_internal.h │ │ └── write_batch_test.cc │ ├── doc │ │ ├── bench │ │ │ ├── db_bench_sqlite3.cc │ │ │ └── db_bench_tree_db.cc │ │ ├── benchmark.html │ │ ├── impl.md │ │ ├── index.md │ │ ├── log_format.md │ │ └── table_format.md │ ├── helpers │ │ └── memenv │ │ │ ├── memenv.cc │ │ │ ├── memenv.h │ │ │ └── memenv_test.cc │ ├── include │ │ └── leveldb │ │ │ ├── c.h │ │ │ ├── cache.h │ │ │ ├── comparator.h │ │ │ ├── db.h │ │ │ ├── dumpfile.h │ │ │ ├── env.h │ │ │ ├── filter_policy.h │ │ │ ├── iterator.h │ │ │ ├── options.h │ │ │ ├── slice.h │ │ │ ├── status.h │ │ │ ├── table.h │ │ │ ├── table_builder.h │ │ │ └── write_batch.h │ ├── issues │ │ ├── issue178_test.cc │ │ └── issue200_test.cc │ ├── port │ │ ├── README │ │ ├── atomic_pointer.h │ │ ├── port.h │ │ ├── port_example.h │ │ ├── port_posix.cc │ │ ├── port_posix.h │ │ ├── port_posix_sse.cc │ │ ├── port_win.cc │ │ ├── port_win.h │ │ ├── thread_annotations.h │ │ └── win │ │ │ └── stdint.h │ ├── table │ │ ├── block.cc │ │ ├── block.h │ │ ├── block_builder.cc │ │ ├── block_builder.h │ │ ├── filter_block.cc │ │ ├── filter_block.h │ │ ├── filter_block_test.cc │ │ ├── format.cc │ │ ├── format.h │ │ ├── iterator.cc │ │ ├── iterator_wrapper.h │ │ ├── merger.cc │ │ ├── merger.h │ │ ├── table.cc │ │ ├── table_builder.cc │ │ ├── table_test.cc │ │ ├── two_level_iterator.cc │ │ └── two_level_iterator.h │ └── util │ │ ├── arena.cc │ │ ├── arena.h │ │ ├── arena_test.cc │ │ ├── bloom.cc │ │ ├── bloom_test.cc │ │ ├── cache.cc │ │ ├── cache_test.cc │ │ ├── coding.cc │ │ ├── coding.h │ │ ├── coding_test.cc │ │ ├── comparator.cc │ │ ├── crc32c.cc │ │ ├── crc32c.h │ │ ├── crc32c_test.cc │ │ ├── env.cc │ │ ├── env_posix.cc │ │ ├── env_posix_test.cc │ │ ├── env_posix_test_helper.h │ │ ├── env_test.cc │ │ ├── env_win.cc │ │ ├── filter_policy.cc │ │ ├── hash.cc │ │ ├── hash.h │ │ ├── hash_test.cc │ │ ├── histogram.cc │ │ ├── histogram.h │ │ ├── logging.cc │ │ ├── logging.h │ │ ├── mutexlock.h │ │ ├── options.cc │ │ ├── posix_logger.h │ │ ├── random.h │ │ ├── status.cc │ │ ├── testharness.cc │ │ ├── testharness.h │ │ ├── testutil.cc │ │ └── testutil.h ├── limitedmap.h ├── llmq │ ├── quorums.cpp │ ├── quorums.h │ ├── quorums_blockprocessor.cpp │ ├── quorums_blockprocessor.h │ ├── quorums_chainlocks.cpp │ ├── quorums_chainlocks.h │ ├── quorums_commitment.cpp │ ├── quorums_commitment.h │ ├── quorums_debug.cpp │ ├── quorums_debug.h │ ├── quorums_dkgsession.cpp │ ├── quorums_dkgsession.h │ ├── quorums_dkgsessionhandler.cpp │ ├── quorums_dkgsessionhandler.h │ ├── quorums_dkgsessionmgr.cpp │ ├── quorums_dkgsessionmgr.h │ ├── quorums_init.cpp │ ├── quorums_init.h │ ├── quorums_instantsend.cpp │ ├── quorums_instantsend.h │ ├── quorums_signing.cpp │ ├── quorums_signing.h │ ├── quorums_signing_shares.cpp │ ├── quorums_signing_shares.h │ ├── quorums_utils.cpp │ └── quorums_utils.h ├── masternode │ ├── activemasternode.cpp │ ├── activemasternode.h │ ├── masternode-meta.cpp │ ├── masternode-meta.h │ ├── masternode-payments.cpp │ ├── masternode-payments.h │ ├── masternode-sync.cpp │ ├── masternode-sync.h │ ├── masternode-utils.cpp │ └── masternode-utils.h ├── memusage.h ├── merkleblock.cpp ├── merkleblock.h ├── messagesigner.cpp ├── messagesigner.h ├── miner.cpp ├── miner.h ├── net.cpp ├── net.h ├── net_processing.cpp ├── net_processing.h ├── netaddress.cpp ├── netaddress.h ├── netbase.cpp ├── netbase.h ├── netfulfilledman.cpp ├── netfulfilledman.h ├── netmessagemaker.h ├── noui.cpp ├── noui.h ├── obj-test │ └── .gitignore ├── obj │ └── .gitignore ├── pigeon-cli-res.rc ├── pigeon-cli.cpp ├── pigeon-tx-res.rc ├── pigeon-tx.cpp ├── pigeond-res.rc ├── pigeond.cpp ├── policy │ ├── feerate.cpp │ ├── feerate.h │ ├── fees.cpp │ ├── fees.h │ ├── policy.cpp │ └── policy.h ├── pow.cpp ├── pow.h ├── prevector.h ├── primitives │ ├── block.cpp │ ├── block.h │ ├── transaction.cpp │ └── transaction.h ├── privatesend │ ├── privatesend-client.cpp │ ├── privatesend-client.h │ ├── privatesend-server.cpp │ ├── privatesend-server.h │ ├── privatesend-util.cpp │ ├── privatesend-util.h │ ├── privatesend.cpp │ └── privatesend.h ├── protocol.cpp ├── protocol.h ├── pubkey.cpp ├── pubkey.h ├── qt │ ├── addressbookpage.cpp │ ├── addressbookpage.h │ ├── addresstablemodel.cpp │ ├── addresstablemodel.h │ ├── askpassphrasedialog.cpp │ ├── askpassphrasedialog.h │ ├── bantablemodel.cpp │ ├── bantablemodel.h │ ├── bitcoinaddressvalidator.cpp │ ├── bitcoinaddressvalidator.h │ ├── bitcoinamountfield.cpp │ ├── bitcoinamountfield.h │ ├── bitcoingui.cpp │ ├── bitcoingui.h │ ├── bitcoinunits.cpp │ ├── bitcoinunits.h │ ├── callback.h │ ├── clientmodel.cpp │ ├── clientmodel.h │ ├── coincontroldialog.cpp │ ├── coincontroldialog.h │ ├── coincontroltreewidget.cpp │ ├── coincontroltreewidget.h │ ├── csvmodelwriter.cpp │ ├── csvmodelwriter.h │ ├── editaddressdialog.cpp │ ├── editaddressdialog.h │ ├── forms │ │ ├── addressbookpage.ui │ │ ├── askpassphrasedialog.ui │ │ ├── coincontroldialog.ui │ │ ├── debugwindow.ui │ │ ├── editaddressdialog.ui │ │ ├── helpmessagedialog.ui │ │ ├── intro.ui │ │ ├── masternodelist.ui │ │ ├── modaloverlay.ui │ │ ├── openuridialog.ui │ │ ├── optionsdialog.ui │ │ ├── overviewpage.ui │ │ ├── qrdialog.ui │ │ ├── receivecoinsdialog.ui │ │ ├── receiverequestdialog.ui │ │ ├── sendcoinsdialog.ui │ │ ├── sendcoinsentry.ui │ │ ├── signverifymessagedialog.ui │ │ └── transactiondescdialog.ui │ ├── guiconstants.h │ ├── guiutil.cpp │ ├── guiutil.h │ ├── intro.cpp │ ├── intro.h │ ├── locale │ │ ├── pigeon_ar.ts │ │ ├── pigeon_bg.ts │ │ ├── pigeon_de.ts │ │ ├── pigeon_en.ts │ │ ├── pigeon_es.ts │ │ ├── pigeon_fi.ts │ │ ├── pigeon_fr.ts │ │ ├── pigeon_it.ts │ │ ├── pigeon_ja.ts │ │ ├── pigeon_ko.ts │ │ ├── pigeon_nl.ts │ │ ├── pigeon_pl.ts │ │ ├── pigeon_pt.ts │ │ ├── pigeon_ro.ts │ │ ├── pigeon_ru.ts │ │ ├── pigeon_sk.ts │ │ ├── pigeon_th.ts │ │ ├── pigeon_tr.ts │ │ ├── pigeon_vi.ts │ │ ├── pigeon_zh_CN.ts │ │ └── pigeon_zh_TW.ts │ ├── macdockiconhandler.h │ ├── macdockiconhandler.mm │ ├── macnotificationhandler.h │ ├── macnotificationhandler.mm │ ├── macos_appnap.h │ ├── macos_appnap.mm │ ├── masternodelist.cpp │ ├── masternodelist.h │ ├── modaloverlay.cpp │ ├── modaloverlay.h │ ├── networkstyle.cpp │ ├── networkstyle.h │ ├── notificator.cpp │ ├── notificator.h │ ├── openuridialog.cpp │ ├── openuridialog.h │ ├── optionsdialog.cpp │ ├── optionsdialog.h │ ├── optionsmodel.cpp │ ├── optionsmodel.h │ ├── overviewpage.cpp │ ├── overviewpage.h │ ├── paymentrequest.proto │ ├── paymentrequestplus.cpp │ ├── paymentrequestplus.h │ ├── paymentserver.cpp │ ├── paymentserver.h │ ├── peertablemodel.cpp │ ├── peertablemodel.h │ ├── pigeon.cpp │ ├── pigeon.qrc │ ├── pigeon_locale.qrc │ ├── pigeonstrings.cpp │ ├── platformstyle.cpp │ ├── platformstyle.h │ ├── qrdialog.cpp │ ├── qrdialog.h │ ├── qvalidatedlineedit.cpp │ ├── qvalidatedlineedit.h │ ├── qvaluecombobox.cpp │ ├── qvaluecombobox.h │ ├── receivecoinsdialog.cpp │ ├── receivecoinsdialog.h │ ├── receiverequestdialog.cpp │ ├── receiverequestdialog.h │ ├── recentrequeststablemodel.cpp │ ├── recentrequeststablemodel.h │ ├── res │ │ ├── css │ │ │ ├── dark.css │ │ │ ├── light.css │ │ │ ├── scrollbars.css │ │ │ └── trad.css │ │ ├── icons │ │ │ ├── about.png │ │ │ ├── about_qt.png │ │ │ ├── add.png │ │ │ ├── address-book.png │ │ │ ├── bitcoin.icns │ │ │ ├── bitcoin.ico │ │ │ ├── bitcoin.png │ │ │ ├── bitcoin_testnet.ico │ │ │ ├── bitcoin_testnet.png │ │ │ ├── browse.png │ │ │ ├── chevron.png │ │ │ ├── clock1.png │ │ │ ├── clock2.png │ │ │ ├── clock3.png │ │ │ ├── clock4.png │ │ │ ├── clock5.png │ │ │ ├── configure.png │ │ │ ├── connect0_16.png │ │ │ ├── connect1_16.png │ │ │ ├── connect2_16.png │ │ │ ├── connect3_16.png │ │ │ ├── connect4_16.png │ │ │ ├── console_remove.png │ │ │ ├── debugwindow.png │ │ │ ├── edit.png │ │ │ ├── editcopy.png │ │ │ ├── editpaste.png │ │ │ ├── export.png │ │ │ ├── eye.png │ │ │ ├── eye_minus.png │ │ │ ├── eye_plus.png │ │ │ ├── filesave.png │ │ │ ├── fontbigger.png │ │ │ ├── fontsmaller.png │ │ │ ├── hd_disabled.png │ │ │ ├── hd_enabled.png │ │ │ ├── key.png │ │ │ ├── lock_closed.png │ │ │ ├── lock_open.png │ │ │ ├── network_disabled.png │ │ │ ├── notsynced.png │ │ │ ├── quit.png │ │ │ ├── receive.png │ │ │ ├── remove.png │ │ │ ├── send.png │ │ │ ├── synced.png │ │ │ ├── transaction0.png │ │ │ ├── transaction2.png │ │ │ ├── transaction_abandoned.png │ │ │ ├── transaction_conflicted.png │ │ │ ├── tx_inout.png │ │ │ ├── tx_input.png │ │ │ ├── tx_mined.png │ │ │ ├── tx_output.png │ │ │ ├── verify.png │ │ │ └── warning.png │ │ ├── images │ │ │ ├── arrow_down.png │ │ │ ├── arrow_down_dark.png │ │ │ ├── arrow_down_light.png │ │ │ ├── arrow_down_small.png │ │ │ ├── arrow_left_dark.png │ │ │ ├── arrow_left_light.png │ │ │ ├── arrow_left_small.png │ │ │ ├── arrow_light_down_hover.png │ │ │ ├── arrow_light_down_normal.png │ │ │ ├── arrow_light_left_hover.png │ │ │ ├── arrow_light_left_normal.png │ │ │ ├── arrow_light_right_hover.png │ │ │ ├── arrow_light_right_normal.png │ │ │ ├── arrow_light_up_hover.png │ │ │ ├── arrow_light_up_normal.png │ │ │ ├── arrow_right_dark.png │ │ │ ├── arrow_right_light.png │ │ │ ├── arrow_right_small.png │ │ │ ├── arrow_up_dark.png │ │ │ ├── arrow_up_light.png │ │ │ ├── arrow_up_small.png │ │ │ ├── checkbox_checked_dark.png │ │ │ ├── checkbox_checked_disabled_dark.png │ │ │ ├── checkbox_checked_disabled_light.png │ │ │ ├── checkbox_checked_hover_dark.png │ │ │ ├── checkbox_checked_hover_light.png │ │ │ ├── checkbox_checked_light.png │ │ │ ├── checkbox_normal_dark.png │ │ │ ├── checkbox_normal_disabled_dark.png │ │ │ ├── checkbox_normal_disabled_light.png │ │ │ ├── checkbox_normal_hover_dark.png │ │ │ ├── checkbox_normal_hover_light.png │ │ │ ├── checkbox_normal_light.png │ │ │ ├── checkbox_partly_checked_dark.png │ │ │ ├── checkbox_partly_checked_disabled_dark.png │ │ │ ├── checkbox_partly_checked_disabled_light.png │ │ │ ├── checkbox_partly_checked_hover_dark.png │ │ │ ├── checkbox_partly_checked_hover_light.png │ │ │ ├── checkbox_partly_checked_light.png │ │ │ ├── checked.png │ │ │ ├── dash_logo_toolbar.png │ │ │ ├── dash_logo_toolbar_blue.png │ │ │ ├── pigeon_logo_horizontal.png │ │ │ ├── pigeon_logo_toolbar.png │ │ │ ├── pigeon_logo_toolbar_blue.png │ │ │ ├── qtreeview_selected.png │ │ │ ├── radio_checked_dark.png │ │ │ ├── radio_checked_disabled_dark.png │ │ │ ├── radio_checked_disabled_light.png │ │ │ ├── radio_checked_hover_dark.png │ │ │ ├── radio_checked_hover_light.png │ │ │ ├── radio_checked_light.png │ │ │ ├── radio_normal_dark.png │ │ │ ├── radio_normal_disabled_dark.png │ │ │ ├── radio_normal_disabled_light.png │ │ │ ├── radio_normal_hover_dark.png │ │ │ ├── radio_normal_hover_light.png │ │ │ ├── radio_normal_light.png │ │ │ ├── splash.png │ │ │ └── unchecked.png │ │ ├── movies │ │ │ ├── makespinner.sh │ │ │ ├── spinner-000.png │ │ │ ├── spinner-001.png │ │ │ ├── spinner-002.png │ │ │ ├── spinner-003.png │ │ │ ├── spinner-004.png │ │ │ ├── spinner-005.png │ │ │ ├── spinner-006.png │ │ │ ├── spinner-007.png │ │ │ ├── spinner-008.png │ │ │ ├── spinner-009.png │ │ │ ├── spinner-010.png │ │ │ ├── spinner-011.png │ │ │ ├── spinner-012.png │ │ │ ├── spinner-013.png │ │ │ ├── spinner-014.png │ │ │ ├── spinner-015.png │ │ │ ├── spinner-016.png │ │ │ ├── spinner-017.png │ │ │ ├── spinner-018.png │ │ │ ├── spinner-019.png │ │ │ ├── spinner-020.png │ │ │ ├── spinner-021.png │ │ │ ├── spinner-022.png │ │ │ ├── spinner-023.png │ │ │ ├── spinner-024.png │ │ │ ├── spinner-025.png │ │ │ ├── spinner-026.png │ │ │ ├── spinner-027.png │ │ │ ├── spinner-028.png │ │ │ ├── spinner-029.png │ │ │ ├── spinner-030.png │ │ │ ├── spinner-031.png │ │ │ ├── spinner-032.png │ │ │ ├── spinner-033.png │ │ │ ├── spinner-034.png │ │ │ └── spinner-035.png │ │ ├── pigeon-qt-res.rc │ │ └── src │ │ │ ├── bitcoin.svg │ │ │ ├── clock_0.svg │ │ │ ├── clock_1.svg │ │ │ ├── clock_2.svg │ │ │ ├── clock_3.svg │ │ │ ├── clock_4.svg │ │ │ ├── connect-0.svg │ │ │ ├── connect-1.svg │ │ │ ├── connect-2.svg │ │ │ ├── connect-3.svg │ │ │ ├── connect-4.svg │ │ │ ├── hd_disabled.svg │ │ │ ├── hd_enabled.svg │ │ │ ├── mine.svg │ │ │ ├── network_disabled.svg │ │ │ ├── qt.svg │ │ │ ├── spinner.png │ │ │ ├── transaction0.svg │ │ │ ├── tx_in.svg │ │ │ ├── tx_inout.svg │ │ │ └── verify.svg │ ├── rpcconsole.cpp │ ├── rpcconsole.h │ ├── sendcoinsdialog.cpp │ ├── sendcoinsdialog.h │ ├── sendcoinsentry.cpp │ ├── sendcoinsentry.h │ ├── signverifymessagedialog.cpp │ ├── signverifymessagedialog.h │ ├── splashscreen.cpp │ ├── splashscreen.h │ ├── test │ │ ├── compattests.cpp │ │ ├── compattests.h │ │ ├── paymentrequestdata.h │ │ ├── paymentservertests.cpp │ │ ├── paymentservertests.h │ │ ├── rpcnestedtests.cpp │ │ ├── rpcnestedtests.h │ │ ├── test_main.cpp │ │ ├── trafficgraphdatatests.cpp │ │ ├── trafficgraphdatatests.h │ │ ├── uritests.cpp │ │ ├── uritests.h │ │ ├── wallettests.cpp │ │ └── wallettests.h │ ├── trafficgraphdata.cpp │ ├── trafficgraphdata.h │ ├── trafficgraphwidget.cpp │ ├── trafficgraphwidget.h │ ├── transactiondesc.cpp │ ├── transactiondesc.h │ ├── transactiondescdialog.cpp │ ├── transactiondescdialog.h │ ├── transactionfilterproxy.cpp │ ├── transactionfilterproxy.h │ ├── transactionrecord.cpp │ ├── transactionrecord.h │ ├── transactiontablemodel.cpp │ ├── transactiontablemodel.h │ ├── transactionview.cpp │ ├── transactionview.h │ ├── utilitydialog.cpp │ ├── utilitydialog.h │ ├── walletframe.cpp │ ├── walletframe.h │ ├── walletmodel.cpp │ ├── walletmodel.h │ ├── walletmodeltransaction.cpp │ ├── walletmodeltransaction.h │ ├── walletview.cpp │ ├── walletview.h │ ├── winshutdownmonitor.cpp │ └── winshutdownmonitor.h ├── random.cpp ├── random.h ├── rest.cpp ├── reverse_iterator.h ├── reverselock.h ├── rpc │ ├── blockchain.cpp │ ├── blockchain.h │ ├── client.cpp │ ├── client.h │ ├── governance.cpp │ ├── masternode.cpp │ ├── mining.cpp │ ├── mining.h │ ├── misc.cpp │ ├── net.cpp │ ├── privatesend.cpp │ ├── protocol.cpp │ ├── protocol.h │ ├── rawtransaction.cpp │ ├── register.h │ ├── rpcevo.cpp │ ├── rpcquorums.cpp │ ├── server.cpp │ └── server.h ├── saltedhasher.cpp ├── saltedhasher.h ├── scheduler.cpp ├── scheduler.h ├── script │ ├── interpreter.cpp │ ├── interpreter.h │ ├── ismine.cpp │ ├── ismine.h │ ├── pigeonconsensus.cpp │ ├── pigeonconsensus.h │ ├── script.cpp │ ├── script.h │ ├── script_error.cpp │ ├── script_error.h │ ├── sigcache.cpp │ ├── sigcache.h │ ├── sign.cpp │ ├── sign.h │ ├── standard.cpp │ └── standard.h ├── secp256k1 │ ├── .gitignore │ ├── .travis.yml │ ├── COPYING │ ├── Makefile.am │ ├── README.md │ ├── TODO │ ├── autogen.sh │ ├── build-aux │ │ └── m4 │ │ │ ├── ax_jni_include_dir.m4 │ │ │ ├── ax_prog_cc_for_build.m4 │ │ │ └── bitcoin_secp.m4 │ ├── configure.ac │ ├── contrib │ │ ├── lax_der_parsing.c │ │ ├── lax_der_parsing.h │ │ ├── lax_der_privatekey_parsing.c │ │ └── lax_der_privatekey_parsing.h │ ├── include │ │ ├── secp256k1.h │ │ ├── secp256k1_ecdh.h │ │ └── secp256k1_recovery.h │ ├── libsecp256k1.pc.in │ ├── obj │ │ └── .gitignore │ ├── sage │ │ ├── group_prover.sage │ │ ├── secp256k1.sage │ │ └── weierstrass_prover.sage │ └── src │ │ ├── asm │ │ └── field_10x26_arm.s │ │ ├── basic-config.h │ │ ├── bench.h │ │ ├── bench_ecdh.c │ │ ├── bench_internal.c │ │ ├── bench_recover.c │ │ ├── bench_sign.c │ │ ├── bench_verify.c │ │ ├── ecdsa.h │ │ ├── ecdsa_impl.h │ │ ├── eckey.h │ │ ├── eckey_impl.h │ │ ├── ecmult.h │ │ ├── ecmult_const.h │ │ ├── ecmult_const_impl.h │ │ ├── ecmult_gen.h │ │ ├── ecmult_gen_impl.h │ │ ├── ecmult_impl.h │ │ ├── field.h │ │ ├── field_10x26.h │ │ ├── field_10x26_impl.h │ │ ├── field_5x52.h │ │ ├── field_5x52_asm_impl.h │ │ ├── field_5x52_impl.h │ │ ├── field_5x52_int128_impl.h │ │ ├── field_impl.h │ │ ├── gen_context.c │ │ ├── group.h │ │ ├── group_impl.h │ │ ├── hash.h │ │ ├── hash_impl.h │ │ ├── java │ │ ├── org │ │ │ └── bitcoin │ │ │ │ ├── NativeSecp256k1.java │ │ │ │ ├── NativeSecp256k1Test.java │ │ │ │ ├── NativeSecp256k1Util.java │ │ │ │ └── Secp256k1Context.java │ │ ├── org_bitcoin_NativeSecp256k1.c │ │ ├── org_bitcoin_NativeSecp256k1.h │ │ ├── org_bitcoin_Secp256k1Context.c │ │ └── org_bitcoin_Secp256k1Context.h │ │ ├── modules │ │ ├── ecdh │ │ │ ├── Makefile.am.include │ │ │ ├── main_impl.h │ │ │ └── tests_impl.h │ │ └── recovery │ │ │ ├── Makefile.am.include │ │ │ ├── main_impl.h │ │ │ └── tests_impl.h │ │ ├── num.h │ │ ├── num_gmp.h │ │ ├── num_gmp_impl.h │ │ ├── num_impl.h │ │ ├── scalar.h │ │ ├── scalar_4x64.h │ │ ├── scalar_4x64_impl.h │ │ ├── scalar_8x32.h │ │ ├── scalar_8x32_impl.h │ │ ├── scalar_impl.h │ │ ├── scalar_low.h │ │ ├── scalar_low_impl.h │ │ ├── secp256k1.c │ │ ├── testrand.h │ │ ├── testrand_impl.h │ │ ├── tests.c │ │ ├── tests_exhaustive.c │ │ └── util.h ├── serialize.h ├── spentindex.h ├── spork.cpp ├── spork.h ├── stacktraces.cpp ├── stacktraces.h ├── streams.h ├── support │ ├── allocators │ │ ├── mt_pooled_secure.h │ │ ├── pooled_secure.h │ │ ├── secure.h │ │ └── zeroafterfree.h │ ├── cleanse.cpp │ ├── cleanse.h │ ├── events.h │ ├── lockedpool.cpp │ └── lockedpool.h ├── sync.cpp ├── sync.h ├── test │ ├── DoS_tests.cpp │ ├── README.md │ ├── addrman_tests.cpp │ ├── allocator_tests.cpp │ ├── amount_tests.cpp │ ├── arith_uint256_tests.cpp │ ├── base32_tests.cpp │ ├── base58_tests.cpp │ ├── base64_tests.cpp │ ├── bip32_tests.cpp │ ├── bip39_tests.cpp │ ├── blockencodings_tests.cpp │ ├── bloom_tests.cpp │ ├── bls_tests.cpp │ ├── bswap_tests.cpp │ ├── cachemap_tests.cpp │ ├── cachemultimap_tests.cpp │ ├── checkqueue_tests.cpp │ ├── coins_tests.cpp │ ├── compress_tests.cpp │ ├── crypto_tests.cpp │ ├── cuckoocache_tests.cpp │ ├── data │ │ ├── README.md │ │ ├── base58_encode_decode.json │ │ ├── base58_keys_invalid.json │ │ ├── base58_keys_valid.json │ │ ├── bip39_vectors.json │ │ ├── proposals_invalid.json │ │ ├── proposals_valid.json │ │ ├── script_tests.json │ │ ├── sighash.json │ │ ├── tx_invalid.json │ │ └── tx_valid.json │ ├── dbwrapper_tests.cpp │ ├── evo_deterministicmns_tests.cpp │ ├── evo_simplifiedmns_tests.cpp │ ├── getarg_tests.cpp │ ├── governance_validators_tests.cpp │ ├── hash_tests.cpp │ ├── key_tests.cpp │ ├── limitedmap_tests.cpp │ ├── main_tests.cpp │ ├── mempool_tests.cpp │ ├── merkle_tests.cpp │ ├── miner_tests.cpp │ ├── multisig_tests.cpp │ ├── net_tests.cpp │ ├── netbase_tests.cpp │ ├── pmt_tests.cpp │ ├── policyestimator_tests.cpp │ ├── pow_tests.cpp │ ├── prevector_tests.cpp │ ├── raii_event_tests.cpp │ ├── random_tests.cpp │ ├── ratecheck_tests.cpp │ ├── reverselock_tests.cpp │ ├── rpc_tests.cpp │ ├── sanity_tests.cpp │ ├── scheduler_tests.cpp │ ├── script_P2PKH_tests.cpp │ ├── script_P2PK_tests.cpp │ ├── script_P2SH_tests.cpp │ ├── script_standard_tests.cpp │ ├── script_tests.cpp │ ├── scriptnum10.h │ ├── scriptnum_tests.cpp │ ├── serialize_tests.cpp │ ├── sighash_tests.cpp │ ├── sigopcount_tests.cpp │ ├── skiplist_tests.cpp │ ├── streams_tests.cpp │ ├── subsidy_tests.cpp │ ├── test_pigeon.cpp │ ├── test_pigeon.h │ ├── test_pigeon_fuzzy.cpp │ ├── test_pigeon_main.cpp │ ├── timedata_tests.cpp │ ├── torcontrol_tests.cpp │ ├── transaction_tests.cpp │ ├── txvalidationcache_tests.cpp │ ├── uint256_tests.cpp │ ├── univalue_tests.cpp │ ├── util_tests.cpp │ └── versionbits_tests.cpp ├── threadinterrupt.cpp ├── threadinterrupt.h ├── threadsafety.h ├── timedata.cpp ├── timedata.h ├── tinyformat.h ├── torcontrol.cpp ├── torcontrol.h ├── txdb.cpp ├── txdb.h ├── txmempool.cpp ├── txmempool.h ├── ui_interface.cpp ├── ui_interface.h ├── uint256.cpp ├── uint256.h ├── undo.h ├── univalue │ ├── .gitignore │ ├── .travis.yml │ ├── COPYING │ ├── Makefile.am │ ├── README │ ├── TODO │ ├── autogen.sh │ ├── build-aux │ │ └── m4 │ │ │ └── .gitignore │ ├── configure.ac │ ├── gen │ │ └── gen.cpp │ ├── include │ │ └── univalue.h │ ├── lib │ │ ├── .gitignore │ │ ├── univalue.cpp │ │ ├── univalue_escapes.h │ │ ├── univalue_read.cpp │ │ ├── univalue_utffilter.h │ │ └── univalue_write.cpp │ ├── pc │ │ ├── libunivalue-uninstalled.pc.in │ │ └── libunivalue.pc.in │ └── test │ │ ├── .gitignore │ │ ├── fail1.json │ │ ├── fail10.json │ │ ├── fail11.json │ │ ├── fail12.json │ │ ├── fail13.json │ │ ├── fail14.json │ │ ├── fail15.json │ │ ├── fail16.json │ │ ├── fail17.json │ │ ├── fail18.json │ │ ├── fail19.json │ │ ├── fail2.json │ │ ├── fail20.json │ │ ├── fail21.json │ │ ├── fail22.json │ │ ├── fail23.json │ │ ├── fail24.json │ │ ├── fail25.json │ │ ├── fail26.json │ │ ├── fail27.json │ │ ├── fail28.json │ │ ├── fail29.json │ │ ├── fail3.json │ │ ├── fail30.json │ │ ├── fail31.json │ │ ├── fail32.json │ │ ├── fail33.json │ │ ├── fail34.json │ │ ├── fail35.json │ │ ├── fail36.json │ │ ├── fail37.json │ │ ├── fail38.json │ │ ├── fail39.json │ │ ├── fail4.json │ │ ├── fail40.json │ │ ├── fail41.json │ │ ├── fail5.json │ │ ├── fail6.json │ │ ├── fail7.json │ │ ├── fail8.json │ │ ├── fail9.json │ │ ├── pass1.json │ │ ├── pass2.json │ │ ├── pass3.json │ │ ├── round1.json │ │ ├── round2.json │ │ └── unitester.cpp ├── unordered_lru_cache.h ├── util.cpp ├── util.h ├── utilmoneystr.cpp ├── utilmoneystr.h ├── utilstrencodings.cpp ├── utilstrencodings.h ├── utiltime.cpp ├── utiltime.h ├── validation.cpp ├── validation.h ├── validationinterface.cpp ├── validationinterface.h ├── version.h ├── versionbits.cpp ├── versionbits.h ├── wallet │ ├── coincontrol.h │ ├── crypter.cpp │ ├── crypter.h │ ├── db.cpp │ ├── db.h │ ├── rpcdump.cpp │ ├── rpcwallet.cpp │ ├── rpcwallet.h │ ├── test │ │ ├── accounting_tests.cpp │ │ ├── crypto_tests.cpp │ │ ├── wallet_test_fixture.cpp │ │ ├── wallet_test_fixture.h │ │ └── wallet_tests.cpp │ ├── wallet.cpp │ ├── wallet.h │ ├── walletdb.cpp │ └── walletdb.h ├── warnings.cpp ├── warnings.h └── zmq │ ├── zmqabstractnotifier.cpp │ ├── zmqabstractnotifier.h │ ├── zmqconfig.h │ ├── zmqnotificationinterface.cpp │ ├── zmqnotificationinterface.h │ ├── zmqpublishnotifier.cpp │ └── zmqpublishnotifier.h └── test ├── README.md ├── config.ini.in ├── functional ├── .gitignore ├── README.md ├── abandonconflict.py ├── addressindex.py ├── assumevalid.py ├── bip65-cltv-p2p.py ├── bip68-112-113-p2p.py ├── bip68-sequence.py ├── bip9-softforks.py ├── bipdersig-p2p.py ├── bitcoin_cli.py ├── blockchain.py ├── combine_logs.py ├── combined_log_template.html ├── create_cache.py ├── data │ └── rpc_getblockstats.json ├── dbcrash.py ├── decodescript.py ├── dip3-deterministicmns.py ├── dip4-coinbasemerkleroots.py ├── disablewallet.py ├── disconnect_ban.py ├── example_test.py ├── feature_shutdown.py ├── forknotify.py ├── fundrawtransaction-hd.py ├── fundrawtransaction.py ├── getblocktemplate_longpoll.py ├── getchaintips.py ├── httpbasics.py ├── import-rescan.py ├── importmulti.py ├── importprunedfunds.py ├── invalidateblock.py ├── invalidblockrequest.py ├── invalidtxrequest.py ├── keypool-hd.py ├── keypool-topup.py ├── keypool.py ├── listsinceblock.py ├── listtransactions.py ├── llmq-chainlocks.py ├── llmq-dkgerrors.py ├── llmq-is-cl-conflicts.py ├── llmq-is-retroactive.py ├── llmq-signing.py ├── llmq-simplepose.py ├── maxuploadtarget.py ├── mempool_limit.py ├── mempool_packages.py ├── mempool_persist.py ├── mempool_reorg.py ├── mempool_resurrect_test.py ├── mempool_spendcoinbase.py ├── merkle_blocks.py ├── minchainwork.py ├── mining.py ├── multi_rpc.py ├── multikeysporks.py ├── multiwallet.py ├── net.py ├── nulldummy.py ├── p2p-acceptblock.py ├── p2p-compactblocks.py ├── p2p-fingerprint.py ├── p2p-fullblocktest.py ├── p2p-instantsend.py ├── p2p-leaktests.py ├── p2p-mempool.py ├── p2p-timeouts.py ├── p2p-versionbits-warning.py ├── preciousblock.py ├── prioritise_transaction.py ├── proxy_test.py ├── pruning.py ├── rawtransactions.py ├── receivedby.py ├── reindex.py ├── resendwallettransactions.py ├── rest.py ├── rpc_getblockstats.py ├── rpcbind_test.py ├── rpcnamedargs.py ├── sendheaders.py ├── signmessages.py ├── signrawtransactions.py ├── smartfees.py ├── spentindex.py ├── sporks.py ├── test_framework │ ├── __init__.py │ ├── authproxy.py │ ├── bignum.py │ ├── blockstore.py │ ├── blocktools.py │ ├── comptool.py │ ├── coverage.py │ ├── key.py │ ├── mininode.py │ ├── netutil.py │ ├── script.py │ ├── siphash.py │ ├── socks5.py │ ├── test_framework.py │ ├── test_node.py │ └── util.py ├── test_runner.py ├── timestampindex.py ├── txindex.py ├── txn_clone.py ├── txn_doublespend.py ├── uptime.py ├── wallet-accounts.py ├── wallet-dump.py ├── wallet-encryption.py ├── wallet-hd.py ├── wallet.py ├── walletbackup.py ├── zapwallettxes.py └── zmq_test.py └── util ├── bitcoin-util-test.py └── data ├── bitcoin-util-test.json ├── blanktxv1.hex ├── blanktxv1.json ├── blanktxv2.hex ├── blanktxv2.json ├── tt-delin1-out.hex ├── tt-delin1-out.json ├── tt-delout1-out.hex ├── tt-delout1-out.json ├── tt-locktime317000-out.hex ├── tt-locktime317000-out.json ├── tx394b54bb.hex ├── txcreate1.hex ├── txcreate1.json ├── txcreate2.hex ├── txcreate2.json ├── txcreatedata1.hex ├── txcreatedata1.json ├── txcreatedata2.hex ├── txcreatedata2.json ├── txcreatedata_seq0.hex ├── txcreatedata_seq0.json ├── txcreatedata_seq1.hex ├── txcreatedata_seq1.json ├── txcreatemultisig1.hex ├── txcreatemultisig1.json ├── txcreatemultisig2.hex ├── txcreatemultisig2.json ├── txcreateoutpubkey1.hex ├── txcreateoutpubkey1.json ├── txcreatescript1.hex ├── txcreatescript1.json ├── txcreatescript2.hex ├── txcreatescript2.json ├── txcreatesignv1.hex ├── txcreatesignv1.json └── txcreatesignv2.hex /.gitattributes: -------------------------------------------------------------------------------- 1 | src/clientversion.cpp export-subst 2 | -------------------------------------------------------------------------------- /.tx/config: -------------------------------------------------------------------------------- 1 | [main] 2 | host = https://www.transifex.com 3 | 4 | [bitcoin.qt-translation-014x] 5 | file_filter = src/qt/locale/bitcoin_.ts 6 | source_file = src/qt/locale/bitcoin_en.ts 7 | source_lang = en 8 | -------------------------------------------------------------------------------- /INSTALL.md: -------------------------------------------------------------------------------- 1 | Building Pigeon 2 | ============= 3 | 4 | See doc/build-*.md for instructions on building the various 5 | elements of the Pigeon Core reference implementation of Pigeon. 6 | -------------------------------------------------------------------------------- /autogen.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Copyright (c) 2013-2016 The Bitcoin Core developers 3 | # Distributed under the MIT software license, see the accompanying 4 | # file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | set -e 7 | srcdir="$(dirname $0)" 8 | cd "$srcdir" 9 | if [ -z ${LIBTOOLIZE} ] && GLIBTOOLIZE="`which glibtoolize 2>/dev/null`"; then 10 | LIBTOOLIZE="${GLIBTOOLIZE}" 11 | export LIBTOOLIZE 12 | fi 13 | which autoreconf >/dev/null || \ 14 | (echo "configuration failed, please install autoconf first" && exit 1) 15 | autoreconf --install --force --warnings=all 16 | -------------------------------------------------------------------------------- /build-aux/m4/bitcoin_subdir_to_include.m4: -------------------------------------------------------------------------------- 1 | dnl Copyright (c) 2013-2014 The Bitcoin Core developers 2 | dnl Distributed under the MIT software license, see the accompanying 3 | dnl file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | dnl BITCOIN_SUBDIR_TO_INCLUDE([CPPFLAGS-VARIABLE-NAME],[SUBDIRECTORY-NAME],[HEADER-FILE]) 6 | dnl SUBDIRECTORY-NAME must end with a path separator 7 | AC_DEFUN([BITCOIN_SUBDIR_TO_INCLUDE],[ 8 | if test "x$2" = "x"; then 9 | AC_MSG_RESULT([default]) 10 | else 11 | echo "#include <$2$3.h>" >conftest.cpp 12 | newinclpath=`${CXXCPP} ${CPPFLAGS} -M conftest.cpp 2>/dev/null | [ tr -d '\\n\\r\\\\' | sed -e 's/^.*[[:space:]:]\(\/[^[:space:]]*\)]$3[\.h[[:space:]].*$/\1/' -e t -e d`] 13 | AC_MSG_RESULT([${newinclpath}]) 14 | if test "x${newinclpath}" != "x"; then 15 | eval "$1=\"\$$1\"' -I${newinclpath}'" 16 | fi 17 | fi 18 | ]) 19 | -------------------------------------------------------------------------------- /build-win.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | compileSource() 3 | { 4 | echo "Depends built, preping build." 5 | 6 | bash autogen.sh 7 | clear 8 | 9 | echo "autogen complete" 10 | 11 | ./configure --prefix=$(pwd)/depends/x86_64-w64-mingw32 12 | 13 | echo "configure complete" 14 | 15 | make -j10 $* 16 | 17 | echo "compile complete" 18 | 19 | } 20 | 21 | depends() 22 | { 23 | echo "depends not built, building now" 24 | cd depends/ 25 | make HOST=x86_64-w64-mingw32 -j10 $* 26 | cd .. 27 | } 28 | if [ -d $PWD"/depends/x86_64-w64-mingw32/" ] 29 | then 30 | compileSource 31 | else 32 | depends 33 | compileSource 34 | fi 35 | -------------------------------------------------------------------------------- /build.properties: -------------------------------------------------------------------------------- 1 | snapshot-version=1.19.2.0-SNAPSHOT 2 | release-version=1.19.2.0 -------------------------------------------------------------------------------- /build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | compileSource() 3 | { 4 | echo "Depends built, preping build." 5 | 6 | bash autogen.sh 7 | clear 8 | 9 | echo "autogen complete" 10 | 11 | ./configure --prefix=$(pwd)/depends/x86_64-pc-linux-gnu 12 | 13 | echo "configure complete" 14 | 15 | make 16 | 17 | echo "compile complete" 18 | 19 | } 20 | 21 | depends() 22 | { 23 | echo "depends not built, building now" 24 | cd depends/ 25 | make 26 | cd .. 27 | } 28 | 29 | if [ -d $PWD"/depends/x86_64-pc-linux-gnu/" ] 30 | then 31 | compileSource 32 | else 33 | depends 34 | compileSource 35 | fi -------------------------------------------------------------------------------- /ci/Dockerfile.gitian-builder: -------------------------------------------------------------------------------- 1 | FROM ubuntu:bionic 2 | 3 | RUN apt-get update && apt-get install -y \ 4 | ruby curl make libltdl7 git apache2 apt-cacher-ng python-vm-builder ruby qemu-utils \ 5 | && rm -rf /var/lib/apt/lists 6 | 7 | ARG USER_ID=1000 8 | ARG GROUP_ID=1000 9 | 10 | # add user with specified (or default) user/group ids 11 | ENV USER_ID ${USER_ID} 12 | ENV GROUP_ID ${GROUP_ID} 13 | RUN groupadd -g ${GROUP_ID} pigeon 14 | RUN useradd -u ${USER_ID} -g pigeon -s /bin/bash -m -d /pigeon pigeon 15 | 16 | WORKDIR /pigeon 17 | USER pigeon -------------------------------------------------------------------------------- /ci/build_depends.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # This script is executed inside the builder image 4 | 5 | set -e 6 | 7 | source ./ci/matrix.sh 8 | 9 | unset CC; unset CXX 10 | unset DISPLAY 11 | 12 | mkdir -p $CACHE_DIR/depends 13 | mkdir -p $CACHE_DIR/sdk-sources 14 | 15 | ln -s $CACHE_DIR/depends depends/built 16 | ln -s $CACHE_DIR/sdk-sources depends/sdk-sources 17 | 18 | mkdir -p depends/SDKs 19 | 20 | if [ -n "$OSX_SDK" ]; then 21 | if [ ! -f depends/sdk-sources/MacOSX${OSX_SDK}.sdk.tar.gz ]; then 22 | curl --location --fail $SDK_URL/MacOSX${OSX_SDK}.sdk.tar.gz -o depends/sdk-sources/MacOSX${OSX_SDK}.sdk.tar.gz 23 | fi 24 | if [ -f depends/sdk-sources/MacOSX${OSX_SDK}.sdk.tar.gz ]; then 25 | tar -C depends/SDKs -xf depends/sdk-sources/MacOSX${OSX_SDK}.sdk.tar.gz 26 | fi 27 | fi 28 | 29 | make $MAKEJOBS -C depends HOST=$HOST $DEP_OPTS 30 | -------------------------------------------------------------------------------- /ci/test_unittests.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # This script is executed inside the builder image 4 | 5 | set -e 6 | 7 | source ./ci/matrix.sh 8 | 9 | if [ "$RUN_UNITTESTS" != "true" ]; then 10 | echo "Skipping unit tests" 11 | exit 0 12 | fi 13 | 14 | # TODO this is not Travis agnostic 15 | export BOOST_TEST_RANDOM=1$TRAVIS_BUILD_ID 16 | export LD_LIBRARY_PATH=$BUILD_DIR/depends/$HOST/lib 17 | 18 | export WINEDEBUG=fixme-all 19 | export BOOST_TEST_LOG_LEVEL=test_suite 20 | 21 | cd build-ci/pigeoncore-$BUILD_TARGET 22 | 23 | if [ "$DIRECT_WINE_EXEC_TESTS" = "true" ]; then 24 | # Inside Docker, binfmt isn't working so we can't trust in make invoking windows binaries correctly 25 | wine ./src/test/test_pigeon.exe 26 | else 27 | make $MAKEJOBS check VERBOSE=1 28 | fi 29 | -------------------------------------------------------------------------------- /contrib/auto_gdb/debug.gdb: -------------------------------------------------------------------------------- 1 | set pagination off 2 | source used_size.py 3 | source log_size.py 4 | source test_used_size.gdb 5 | #logsize privateSendClient "memlog.txt" 6 | #logsize privateSendServer "memlog.txt" 7 | #logsize mnodeman "memlog.txt" 8 | logsize mnpayments "memlog.txt" 9 | #logsize instantsend "memlog.txt" 10 | #logsize sporkManager "memlog.txt" 11 | #logsize masternodeSync "memlog.txt" 12 | #logsize governance "memlog.txt" 13 | -------------------------------------------------------------------------------- /contrib/auto_gdb/pigeon_dbg.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # use testnet settings, if you need mainnet, use ~/.pigeoncore/pigeond.pid file instead 3 | pigeon_pid=$(<~/.pigeoncore/testnet3/pigeond.pid) 4 | sudo gdb -batch -ex "source debug.gdb" pigeond ${pigeon_pid} 5 | -------------------------------------------------------------------------------- /contrib/auto_gdb/test_used_size.gdb: -------------------------------------------------------------------------------- 1 | define test_used_size 2 | set $size_ext = 0 3 | usedsize $size_ext $arg0 4 | p $size_ext 5 | end 6 | -------------------------------------------------------------------------------- /contrib/debian/README.md: -------------------------------------------------------------------------------- 1 | 2 | Debian 3 | ==================== 4 | This directory contains files used to package pigeond/pigeon-qt 5 | for Debian-based Linux systems. If you compile pigeond/pigeon-qt yourself, there are some useful files here. 6 | 7 | ## pigeon: URI support ## 8 | 9 | 10 | pigeon-qt.desktop (Gnome / Open Desktop) 11 | To install: 12 | 13 | sudo desktop-file-install pigeon-qt.desktop 14 | sudo update-desktop-database 15 | 16 | If you build yourself, you will either need to modify the paths in 17 | the .desktop file or copy or symlink your pigeon-qt binary to `/usr/bin` 18 | and the `../../share/pixmaps/pigeon128.png` to `/usr/share/pixmaps` 19 | 20 | pigeon-qt.protocol (KDE) 21 | 22 | -------------------------------------------------------------------------------- /contrib/debian/compat: -------------------------------------------------------------------------------- 1 | 7 2 | -------------------------------------------------------------------------------- /contrib/debian/gbp.conf: -------------------------------------------------------------------------------- 1 | # Configuration file for git-buildpackage and friends 2 | 3 | [DEFAULT] 4 | pristine-tar = True 5 | sign-tags = True 6 | -------------------------------------------------------------------------------- /contrib/debian/patches/README: -------------------------------------------------------------------------------- 1 | 0xxx: Grabbed from upstream development. 2 | 1xxx: Possibly relevant for upstream adoption. 3 | 2xxx: Only relevant for official Debian release. 4 | -------------------------------------------------------------------------------- /contrib/debian/patches/series: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /contrib/debian/pigeon-qt.desktop: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Encoding=UTF-8 3 | Name=Pigeon Core 4 | Comment=Pigeon P2P Cryptocurrency 5 | Comment[de]=Verbinde mit dem Pigeon peer-to-peer Netzwerk 6 | Comment[fr]=Pigeon, monnaie virtuelle cryptographique pair à pair 7 | Comment[tr]=Pigeon, eşten eşe kriptografik sanal para birimi 8 | Exec=pigeon-qt %u 9 | Terminal=false 10 | Type=Application 11 | Icon=pigeon128 12 | MimeType=x-scheme-handler/pigeon; 13 | Categories=Office;Finance; 14 | -------------------------------------------------------------------------------- /contrib/debian/pigeon-qt.install: -------------------------------------------------------------------------------- 1 | usr/local/bin/pigeon-qt usr/bin 2 | share/pixmaps/pigeon32.xpm usr/share/pixmaps 3 | share/pixmaps/pigeon16.xpm usr/share/pixmaps 4 | share/pixmaps/pigeon128.png usr/share/pixmaps 5 | debian/pigeon-qt.desktop usr/share/applications 6 | debian/pigeon-qt.protocol usr/share/kde4/services/ 7 | -------------------------------------------------------------------------------- /contrib/debian/pigeon-qt.lintian-overrides: -------------------------------------------------------------------------------- 1 | # Linked code is Expat - only Debian packaging is GPL-2+ 2 | pigeon-qt: possible-gpl-code-linked-with-openssl 3 | -------------------------------------------------------------------------------- /contrib/debian/pigeon-qt.manpages: -------------------------------------------------------------------------------- 1 | doc/man/pigeon-qt.1 2 | -------------------------------------------------------------------------------- /contrib/debian/pigeon-qt.protocol: -------------------------------------------------------------------------------- 1 | [Protocol] 2 | exec=pigeon-qt '%u' 3 | protocol=pigeon 4 | input=none 5 | output=none 6 | helper=true 7 | listing= 8 | reading=false 9 | writing=false 10 | makedir=false 11 | deleting=false 12 | -------------------------------------------------------------------------------- /contrib/debian/pigeon-tx.bash-completion: -------------------------------------------------------------------------------- 1 | contrib/pigeon-tx.bash-completion pigeon-tx 2 | -------------------------------------------------------------------------------- /contrib/debian/pigeon-tx.install: -------------------------------------------------------------------------------- 1 | usr/local/bin/pigeon-tx usr/bin 2 | -------------------------------------------------------------------------------- /contrib/debian/pigeon-tx.manpages: -------------------------------------------------------------------------------- 1 | doc/man/pigeon-tx.1 2 | -------------------------------------------------------------------------------- /contrib/debian/pigeond.bash-completion: -------------------------------------------------------------------------------- 1 | contrib/pigeond.bash-completion pigeond 2 | contrib/pigeon-cli.bash-completion pigeon-cli 3 | -------------------------------------------------------------------------------- /contrib/debian/pigeond.examples: -------------------------------------------------------------------------------- 1 | debian/examples/pigeon.conf 2 | -------------------------------------------------------------------------------- /contrib/debian/pigeond.install: -------------------------------------------------------------------------------- 1 | usr/local/bin/pigeond usr/bin 2 | usr/local/bin/pigeon-cli usr/bin 3 | -------------------------------------------------------------------------------- /contrib/debian/pigeond.lintian-overrides: -------------------------------------------------------------------------------- 1 | # Linked code is Expat - only Debian packaging is GPL-2+ 2 | pigeond: possible-gpl-code-linked-with-openssl 3 | -------------------------------------------------------------------------------- /contrib/debian/pigeond.manpages: -------------------------------------------------------------------------------- 1 | doc/man/pigeond.1 2 | doc/man/pigeon-cli.1 3 | -------------------------------------------------------------------------------- /contrib/debian/rules: -------------------------------------------------------------------------------- 1 | #!/usr/bin/make -f 2 | # -*- mode: makefile; coding: utf-8 -*- 3 | 4 | #DEB_MAKE_CHECK_TARGET = test_pigeon 5 | #build/pigeond:: 6 | # $(if $(filter nocheck,$(DEB_BUILD_OPTIONS)),,src/test_pigeon) 7 | 8 | %: 9 | dh --with bash-completion $@ 10 | 11 | override_dh_auto_clean: 12 | if [ -f Makefile ]; then $(MAKE) distclean; fi 13 | rm -rf Makefile.in aclocal.m4 configure src/Makefile.in src/pigeon-config.h.in src/build-aux src/qt/Makefile.in src/qt/test/Makefile.in src/test/Makefile.in 14 | 15 | QT=$(shell dpkg-vendor --derives-from Ubuntu && echo qt4 || echo qt5) 16 | 17 | # Yea, autogen should be run on the source archive, but I like doing git archive 18 | override_dh_auto_configure: 19 | ./autogen.sh 20 | ./configure --with-gui=$(QT) 21 | 22 | override_dh_auto_test: 23 | make check 24 | -------------------------------------------------------------------------------- /contrib/debian/source/format: -------------------------------------------------------------------------------- 1 | 3.0 (quilt) 2 | -------------------------------------------------------------------------------- /contrib/debian/watch: -------------------------------------------------------------------------------- 1 | # Run the "uscan" command to check for upstream updates and more. 2 | version=3 3 | # use qa.debian.org redirector; see man uscan 4 | opts=uversionmangle=s/(\d)(alpha|beta|rc)/$1~$2/,dversionmangle=s/~dfsg\d*// \ 5 | http://githubredir.debian.net/github/pigeonpay/pigeon v(.*).tar.gz 6 | -------------------------------------------------------------------------------- /contrib/devtools/split-debug.sh.in: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | if [ $# -ne 3 ]; 4 | then echo "usage: $0 " 5 | fi 6 | 7 | @OBJCOPY@ --enable-deterministic-archives -p --only-keep-debug $1 $3 8 | @OBJCOPY@ --enable-deterministic-archives -p --strip-debug $1 $2 9 | @STRIP@ --enable-deterministic-archives -p -s $2 10 | @OBJCOPY@ --enable-deterministic-archives -p --add-gnu-debuglink=$3 $2 11 | -------------------------------------------------------------------------------- /contrib/gitian-keys/README.md: -------------------------------------------------------------------------------- 1 | PGP keys 2 | ======== 3 | 4 | This folder contains the public keys of developers and active contributors. 5 | 6 | The keys are mainly used to sign git commits or the build results of gitian 7 | builds. 8 | 9 | You can import the keys into gpg as follows. Also, make sure to fetch the 10 | latest version from the key server to see if any key was revoked in the 11 | meantime. 12 | 13 | ```sh 14 | gpg --import ./*.pgp 15 | gpg --refresh-keys 16 | ``` 17 | -------------------------------------------------------------------------------- /contrib/init/README.md: -------------------------------------------------------------------------------- 1 | Sample configuration files for: 2 | ``` 3 | SystemD: pigeond.service 4 | Upstart: pigeond.conf 5 | OpenRC: pigeond.openrc 6 | pigeond.openrcconf 7 | CentOS: pigeond.init 8 | OS X: org.pigeon.pigeond.plist 9 | ``` 10 | have been made available to assist packagers in creating node packages here. 11 | 12 | See doc/init.md for more information. 13 | -------------------------------------------------------------------------------- /contrib/init/org.pigeon.pigeond.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Label 6 | org.pigeon.pigeond 7 | ProgramArguments 8 | 9 | /usr/local/bin/pigeond 10 | -daemon 11 | 12 | RunAtLoad 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /contrib/init/pigeond.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Pigeon's distributed currency daemon 3 | After=network.target 4 | 5 | [Service] 6 | User=pigeoncore 7 | Group=pigeoncore 8 | 9 | Type=forking 10 | PIDFile=/var/lib/pigeond/pigeond.pid 11 | ExecStart=/usr/bin/pigeond -daemon -pid=/var/lib/pigeond/pigeond.pid \ 12 | -conf=/etc/pigeoncore/pigeon.conf -datadir=/var/lib/pigeond -disablewallet 13 | 14 | Restart=always 15 | PrivateTmp=true 16 | TimeoutStopSec=60s 17 | TimeoutStartSec=2s 18 | StartLimitInterval=120s 19 | StartLimitBurst=5 20 | 21 | [Install] 22 | WantedBy=multi-user.target 23 | -------------------------------------------------------------------------------- /contrib/linearize/example-linearize-testnet.cfg: -------------------------------------------------------------------------------- 1 | 2 | # bitcoind RPC settings (linearize-hashes) 3 | rpcuser=someuser 4 | rpcpassword=somepassword 5 | host=127.0.0.1 6 | port=19998 7 | 8 | # bootstrap.dat hashlist settings (linearize-hashes) 9 | max_height=3130000 10 | 11 | # bootstrap.dat input/output settings (linearize-data) 12 | netmagic=cee2caff 13 | input=/home/example/.pigeoncore/testnet3/blocks 14 | output_file=/home/example/Downloads/bootstrap.dat 15 | hashlist=hashlist.txt 16 | split_year=1 17 | genesis=00000bafbc94add76cb75e2ec92894837288a481e5c005f6563d91623bf8bc2c 18 | 19 | # Maxmimum size in bytes of out-of-order blocks cache in memory 20 | out_of_order_cache_sz = 10000000 21 | -------------------------------------------------------------------------------- /contrib/macdeploy/README.md: -------------------------------------------------------------------------------- 1 | ### MacDeploy ### 2 | 3 | For Snow Leopard (which uses [Python 2.6](http://www.python.org/download/releases/2.6/)), you will need the param_parser package: 4 | 5 | sudo easy_install argparse 6 | 7 | This script should not be run manually, instead, after building as usual: 8 | 9 | make deploy 10 | 11 | During the process, the disk image window will pop up briefly where the fancy 12 | settings are applied. This is normal, please do not interfere. 13 | 14 | When finished, it will produce `Pigeon-Core.dmg`. 15 | 16 | -------------------------------------------------------------------------------- /contrib/macdeploy/fancy.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | window_bounds 6 | 7 | 300 8 | 300 9 | 800 10 | 620 11 | 12 | background_picture 13 | background.tiff 14 | icon_size 15 | 96 16 | applications_symlink 17 | 18 | items_position 19 | 20 | Applications 21 | 22 | 370 23 | 156 24 | 25 | Pigeon-Qt.app 26 | 27 | 128 28 | 156 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /contrib/pigeon-qt.pro: -------------------------------------------------------------------------------- 1 | FORMS += \ 2 | ../src/qt/forms/aboutdialog.ui \ 3 | ../src/qt/forms/addressbookpage.ui \ 4 | ../src/qt/forms/askpassphrasedialog.ui \ 5 | ../src/qt/forms/coincontroldialog.ui \ 6 | ../src/qt/forms/debugwindow.ui \ 7 | ../src/qt/forms/editaddressdialog.ui \ 8 | ../src/qt/forms/helpmessagedialog.ui \ 9 | ../src/qt/forms/intro.ui \ 10 | ../src/qt/forms/masternodelist.ui \ 11 | ../src/qt/forms/qrdialog.ui \ 12 | ../src/qt/forms/openuridialog.ui \ 13 | ../src/qt/forms/optionsdialog.ui \ 14 | ../src/qt/forms/overviewpage.ui \ 15 | ../src/qt/forms/receivecoinsdialog.ui \ 16 | ../src/qt/forms/receiverequestdialog.ui \ 17 | ../src/qt/forms/sendcoinsdialog.ui \ 18 | ../src/qt/forms/sendcoinsentry.ui \ 19 | ../src/qt/forms/signverifymessagedialog.ui \ 20 | ../src/qt/forms/transactiondescdialog.ui 21 | 22 | RESOURCES += \ 23 | ../src/qt/pigeon.qrc 24 | -------------------------------------------------------------------------------- /contrib/qos/README.md: -------------------------------------------------------------------------------- 1 | ### QoS (Quality of service) ### 2 | 3 | This is a Linux bash script that will set up tc to limit the outgoing bandwidth for connections to the Pigeon network. It limits outbound TCP traffic with a source or destination port of 8757, but not if the destination IP is within a LAN. 4 | 5 | This means one can have an always-on bitcoind instance running, and another local bitcoind/bitcoin-qt instance which connects to this node and receives blocks from it. 6 | -------------------------------------------------------------------------------- /contrib/seeds/README.md: -------------------------------------------------------------------------------- 1 | # Seeds 2 | 3 | Utility to generate the seeds.txt list that is compiled into the client 4 | (see [src/chainparamsseeds.h](/src/chainparamsseeds.h) and other utilities in [contrib/seeds](/contrib/seeds)). 5 | 6 | The seeds compiled into the release are created from the current protx list, like this: 7 | 8 | pigeon-cli protx list valid 1 1185193 > protx_list.json 9 | python3 makeseeds.py < protx_list.json > nodes_main.txt 10 | python3 generate-seeds.py . > ../../src/chainparamsseeds.h 11 | 12 | Make sure to use a recent block height in the "protx list" call. After updating, create a PR and 13 | specify which block height you used so that reviewers can re-run the same commands and verify 14 | that the list is as expected. 15 | 16 | ## Dependencies 17 | 18 | Ubuntu: 19 | 20 | sudo apt-get install python3-dnspython 21 | -------------------------------------------------------------------------------- /contrib/seeds/nodes_test.txt: -------------------------------------------------------------------------------- 1 | 3.213.227.101:18757 2 | 35.185.202.219:18757 3 | 45.32.237.76:18757 4 | 51.68.175.79:18757 5 | 52.35.83.81:18757 6 | 52.204.225.60:18757 7 | 95.183.53.17:10011 8 | 95.183.53.128:10001 9 | 106.12.73.74:18757 10 | 108.61.189.144:18757 11 | 108.61.192.47:18757 12 | 109.235.71.56:18757 13 | 134.209.90.112:18757 14 | 134.209.231.79:18757 15 | 140.82.59.51:10003 16 | 144.76.66.20:18757 17 | 144.217.86.47:18757 18 | 165.22.213.149:18757 19 | 178.62.203.249:18757 20 | 185.213.37.1:18757 21 | 185.213.37.2:18757 22 | -------------------------------------------------------------------------------- /contrib/testgen/README.md: -------------------------------------------------------------------------------- 1 | ### TestGen ### 2 | 3 | Utilities to generate test vectors for the data-driven Pigeon tests. 4 | 5 | Usage: 6 | 7 | gen_base58_test_vectors.py valid 50 > ../../src/test/data/base58_keys_valid.json 8 | gen_base58_test_vectors.py invalid 50 > ../../src/test/data/base58_keys_invalid.json -------------------------------------------------------------------------------- /contrib/verify-commits/allow-revsig-commits: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/contrib/verify-commits/allow-revsig-commits -------------------------------------------------------------------------------- /contrib/verify-commits/pre-push-hook.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Copyright (c) 2014-2015 The Bitcoin Core developers 3 | # Distributed under the MIT software license, see the accompanying 4 | # file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | if ! [[ "$2" =~ ^(git@)?(www.)?github.com(:|/)pigeonpay/pigeon(.git)?$ ]]; then 7 | exit 0 8 | fi 9 | 10 | while read LINE; do 11 | set -- A $LINE 12 | if [ "$4" != "refs/heads/master" ]; then 13 | continue 14 | fi 15 | if ! ./contrib/verify-commits/verify-commits.sh $3 > /dev/null 2>&1; then 16 | echo "ERROR: A commit is not signed, can't push" 17 | ./contrib/verify-commits/verify-commits.sh 18 | exit 1 19 | fi 20 | done < /dev/stdin 21 | -------------------------------------------------------------------------------- /contrib/verify-commits/trusted-git-root: -------------------------------------------------------------------------------- 1 | 82bcf405f6db1d55b684a1f63a4aabad376cdad7 2 | -------------------------------------------------------------------------------- /contrib/verify-commits/trusted-keys: -------------------------------------------------------------------------------- 1 | 71A3B16735405025D447E8F274810B012346C9A6 2 | 133EAC179436F14A5CF1B794860FEB804E669320 3 | 32EE5C4C3FA15CCADB46ABE529D4BCB6416F53EC 4 | B8B3F1C0E58C15DB6A81D30C3648A882F4316B9B 5 | -------------------------------------------------------------------------------- /contrib/verify-commits/trusted-sha512-root-commit: -------------------------------------------------------------------------------- 1 | 309bf16257b2395ce502017be627186b749ee749 2 | -------------------------------------------------------------------------------- /depends/.gitignore: -------------------------------------------------------------------------------- 1 | SDKs/ 2 | work/ 3 | built/ 4 | sources/ 5 | config.site 6 | x86_64* 7 | i686* 8 | mips* 9 | arm* 10 | aarch64* 11 | -------------------------------------------------------------------------------- /depends/builders/default.mk: -------------------------------------------------------------------------------- 1 | default_build_CC = gcc 2 | default_build_CXX = g++ 3 | default_build_AR = ar 4 | default_build_RANLIB = ranlib 5 | default_build_STRIP = strip 6 | default_build_NM = nm 7 | default_build_OTOOL = otool 8 | default_build_INSTALL_NAME_TOOL = install_name_tool 9 | 10 | define add_build_tool_func 11 | build_$(build_os)_$1 ?= $$(default_build_$1) 12 | build_$(build_arch)_$(build_os)_$1 ?= $$(build_$(build_os)_$1) 13 | build_$1=$$(build_$(build_arch)_$(build_os)_$1) 14 | endef 15 | $(foreach var,CC CXX AR RANLIB NM STRIP SHA256SUM DOWNLOAD OTOOL INSTALL_NAME_TOOL,$(eval $(call add_build_tool_func,$(var)))) 16 | define add_build_flags_func 17 | build_$(build_arch)_$(build_os)_$1 += $(build_$(build_os)_$1) 18 | build_$1=$$(build_$(build_arch)_$(build_os)_$1) 19 | endef 20 | $(foreach flags, CFLAGS CXXFLAGS LDFLAGS, $(eval $(call add_build_flags_func,$(flags)))) 21 | -------------------------------------------------------------------------------- /depends/builders/linux.mk: -------------------------------------------------------------------------------- 1 | build_linux_SHA256SUM = sha256sum 2 | build_linux_DOWNLOAD = curl --location --fail --connect-timeout $(DOWNLOAD_CONNECT_TIMEOUT) -o 3 | -------------------------------------------------------------------------------- /depends/hosts/darwin.mk: -------------------------------------------------------------------------------- 1 | OSX_MIN_VERSION=10.8 2 | OSX_SDK_VERSION=10.11 3 | OSX_SDK=$(SDK_PATH)/MacOSX$(OSX_SDK_VERSION).sdk 4 | LD64_VERSION=253.9 5 | darwin_CC=clang -target $(host) -mmacosx-version-min=$(OSX_MIN_VERSION) --sysroot $(OSX_SDK) -mlinker-version=$(LD64_VERSION) 6 | darwin_CXX=clang++ -target $(host) -mmacosx-version-min=$(OSX_MIN_VERSION) --sysroot $(OSX_SDK) -mlinker-version=$(LD64_VERSION) -stdlib=libc++ 7 | 8 | darwin_CFLAGS=-pipe 9 | darwin_CXXFLAGS=$(darwin_CFLAGS) 10 | 11 | darwin_release_CFLAGS=-O2 12 | darwin_release_CXXFLAGS=$(darwin_release_CFLAGS) 13 | 14 | darwin_debug_CFLAGS=-O1 15 | darwin_debug_CXXFLAGS=$(darwin_debug_CFLAGS) 16 | 17 | darwin_native_toolchain=native_cctools 18 | -------------------------------------------------------------------------------- /depends/hosts/linux.mk: -------------------------------------------------------------------------------- 1 | linux_CFLAGS=-pipe 2 | linux_CXXFLAGS=$(linux_CFLAGS) -static-libstdc++ 3 | 4 | linux_release_CFLAGS=-O2 5 | linux_release_CXXFLAGS=$(linux_release_CFLAGS) 6 | 7 | linux_debug_CFLAGS=-O1 8 | linux_debug_CXXFLAGS=$(linux_debug_CFLAGS) 9 | 10 | linux_debug_CPPFLAGS=-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC 11 | 12 | ifeq (86,$(findstring 86,$(build_arch))) 13 | i686_linux_CC=gcc -m32 14 | i686_linux_CXX=g++ -m32 15 | i686_linux_AR=ar 16 | i686_linux_RANLIB=ranlib 17 | i686_linux_NM=nm 18 | i686_linux_STRIP=strip 19 | 20 | x86_64_linux_CC=gcc -m64 21 | x86_64_linux_CXX=g++ -m64 22 | x86_64_linux_AR=ar 23 | x86_64_linux_RANLIB=ranlib 24 | x86_64_linux_NM=nm 25 | x86_64_linux_STRIP=strip 26 | else 27 | i686_linux_CC=$(default_host_CC) -m32 28 | i686_linux_CXX=$(default_host_CXX) -m32 29 | x86_64_linux_CC=$(default_host_CC) -m64 30 | x86_64_linux_CXX=$(default_host_CXX) -m64 31 | endif 32 | -------------------------------------------------------------------------------- /depends/hosts/mingw32.mk: -------------------------------------------------------------------------------- 1 | mingw32_CFLAGS=-pipe 2 | mingw32_CXXFLAGS=$(mingw32_CFLAGS) -static-libstdc++ 3 | 4 | mingw32_release_CFLAGS=-O2 5 | mingw32_release_CXXFLAGS=$(mingw32_release_CFLAGS) 6 | 7 | mingw32_debug_CFLAGS=-O1 8 | mingw32_debug_CXXFLAGS=$(mingw32_debug_CFLAGS) 9 | 10 | mingw32_debug_CPPFLAGS=-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC 11 | -------------------------------------------------------------------------------- /depends/packages/backtrace.mk: -------------------------------------------------------------------------------- 1 | package=backtrace 2 | $(package)_version=rust-snapshot-2018-05-22 3 | $(package)_download_path=https://github.com/rust-lang-nursery/libbacktrace/archive 4 | $(package)_file_name=$($(package)_version).tar.gz 5 | $(package)_sha256_hash=8da6daa0a582c9bbd1f2933501168b4c43664700f604f43e922e85b99e5049bc 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--disable-shared --enable-host-shared --prefix=$(host_prefix) 9 | endef 10 | 11 | define $(package)_config_cmds 12 | $($(package)_autoconf) 13 | endef 14 | 15 | define $(package)_build_cmds 16 | $(MAKE) 17 | endef 18 | 19 | define $(package)_stage_cmds 20 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 21 | endef 22 | -------------------------------------------------------------------------------- /depends/packages/dbus.mk: -------------------------------------------------------------------------------- 1 | package=dbus 2 | $(package)_version=1.10.18 3 | $(package)_download_path=https://dbus.freedesktop.org/releases/dbus 4 | $(package)_file_name=$(package)-$($(package)_version).tar.gz 5 | $(package)_sha256_hash=6049ddd5f3f3e2618f615f1faeda0a115104423a7996b7aa73e2f36e38cc514a 6 | $(package)_dependencies=expat 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-tests --disable-doxygen-docs --disable-xml-docs --disable-static --without-x 10 | endef 11 | 12 | define $(package)_config_cmds 13 | $($(package)_autoconf) 14 | endef 15 | 16 | define $(package)_build_cmds 17 | $(MAKE) -C dbus libdbus-1.la 18 | endef 19 | 20 | define $(package)_stage_cmds 21 | $(MAKE) -C dbus DESTDIR=$($(package)_staging_dir) install-libLTLIBRARIES install-dbusincludeHEADERS install-nodist_dbusarchincludeHEADERS && \ 22 | $(MAKE) DESTDIR=$($(package)_staging_dir) install-pkgconfigDATA 23 | endef 24 | -------------------------------------------------------------------------------- /depends/packages/expat.mk: -------------------------------------------------------------------------------- 1 | package=expat 2 | $(package)_version=2.2.1 3 | $(package)_download_path=https://github.com/libexpat/libexpat/releases/download/R_2_2_1/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=1868cadae4c82a018e361e2b2091de103cd820aaacb0d6cfa49bd2cd83978885 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--disable-static 9 | endef 10 | 11 | define $(package)_config_cmds 12 | $($(package)_autoconf) 13 | endef 14 | 15 | define $(package)_build_cmds 16 | $(MAKE) 17 | endef 18 | 19 | define $(package)_stage_cmds 20 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 21 | endef 22 | -------------------------------------------------------------------------------- /depends/packages/freetype.mk: -------------------------------------------------------------------------------- 1 | package=freetype 2 | $(package)_version=2.7.1 3 | $(package)_download_path=http://download.savannah.gnu.org/releases/$(package) 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=3a3bb2c4e15ffb433f2032f50a5b5a92558206822e22bfe8cbe339af4aa82f88 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--without-zlib --without-png --without-harfbuzz --without-bzip2 --disable-static 9 | $(package)_config_opts_linux=--with-pic 10 | endef 11 | 12 | define $(package)_config_cmds 13 | $($(package)_autoconf) 14 | endef 15 | 16 | define $(package)_build_cmds 17 | $(MAKE) 18 | endef 19 | 20 | define $(package)_stage_cmds 21 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 22 | endef 23 | -------------------------------------------------------------------------------- /depends/packages/gmp.mk: -------------------------------------------------------------------------------- 1 | package=gmp 2 | $(package)_version=6.1.2 3 | $(package)_download_path=https://gmplib.org/download/gmp 4 | $(package)_file_name=gmp-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=5275bb04f4863a13516b2f39392ac5e272f5e1bb8057b18aec1c9b79d73d8fb2 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts+=--enable-cxx --enable-fat --with-pic --disable-shared 9 | $(package)_cflags_armv7l_linux+=-march=armv7-a 10 | endef 11 | 12 | define $(package)_config_cmds 13 | $($(package)_autoconf) 14 | endef 15 | 16 | define $(package)_build_cmds 17 | $(MAKE) 18 | endef 19 | 20 | define $(package)_stage_cmds 21 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 22 | endef 23 | 24 | -------------------------------------------------------------------------------- /depends/packages/libICE.mk: -------------------------------------------------------------------------------- 1 | package=libICE 2 | $(package)_version=1.0.9 3 | $(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=8f7032f2c1c64352b5423f6b48a8ebdc339cc63064af34d66a6c9aa79759e202 6 | $(package)_dependencies=xtrans xproto 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-static --disable-docs --disable-specs --without-xsltproc 10 | $(package)_config_opts_linux=--with-pic 11 | endef 12 | 13 | define $(package)_config_cmds 14 | $($(package)_autoconf) 15 | endef 16 | 17 | define $(package)_build_cmds 18 | $(MAKE) 19 | endef 20 | 21 | define $(package)_stage_cmds 22 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 23 | endef 24 | -------------------------------------------------------------------------------- /depends/packages/libSM.mk: -------------------------------------------------------------------------------- 1 | package=libSM 2 | $(package)_version=1.2.2 3 | $(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=0baca8c9f5d934450a70896c4ad38d06475521255ca63b717a6510fdb6e287bd 6 | $(package)_dependencies=xtrans xproto libICE 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--without-libuuid --without-xsltproc --disable-docs --disable-static 10 | $(package)_config_opts_linux=--with-pic 11 | endef 12 | 13 | define $(package)_config_cmds 14 | $($(package)_autoconf) 15 | endef 16 | 17 | define $(package)_build_cmds 18 | $(MAKE) 19 | endef 20 | 21 | define $(package)_stage_cmds 22 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 23 | endef 24 | -------------------------------------------------------------------------------- /depends/packages/libX11.mk: -------------------------------------------------------------------------------- 1 | package=libX11 2 | $(package)_version=1.6.2 3 | $(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=2aa027e837231d2eeea90f3a4afe19948a6eb4c8b2bec0241eba7dbc8106bd16 6 | $(package)_dependencies=libxcb xtrans xextproto xproto 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-xkb --disable-static 10 | $(package)_config_opts_linux=--with-pic 11 | endef 12 | 13 | define $(package)_config_cmds 14 | $($(package)_autoconf) 15 | endef 16 | 17 | define $(package)_build_cmds 18 | $(MAKE) 19 | endef 20 | 21 | define $(package)_stage_cmds 22 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 23 | endef 24 | -------------------------------------------------------------------------------- /depends/packages/libXau.mk: -------------------------------------------------------------------------------- 1 | package=libXau 2 | $(package)_version=1.0.8 3 | $(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=fdd477320aeb5cdd67272838722d6b7d544887dfe7de46e1e7cc0c27c2bea4f2 6 | $(package)_dependencies=xproto 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-shared 10 | $(package)_config_opts_linux=--with-pic 11 | endef 12 | 13 | define $(package)_config_cmds 14 | $($(package)_autoconf) 15 | endef 16 | 17 | define $(package)_build_cmds 18 | $(MAKE) 19 | endef 20 | 21 | define $(package)_stage_cmds 22 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 23 | endef 24 | -------------------------------------------------------------------------------- /depends/packages/libXext.mk: -------------------------------------------------------------------------------- 1 | package=libXext 2 | $(package)_version=1.3.2 3 | $(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=f829075bc646cdc085fa25d98d5885d83b1759ceb355933127c257e8e50432e0 6 | $(package)_dependencies=xproto xextproto libX11 libXau 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-static 10 | endef 11 | 12 | define $(package)_config_cmds 13 | $($(package)_autoconf) 14 | endef 15 | 16 | define $(package)_build_cmds 17 | $(MAKE) 18 | endef 19 | 20 | define $(package)_stage_cmds 21 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 22 | endef 23 | -------------------------------------------------------------------------------- /depends/packages/libevent.mk: -------------------------------------------------------------------------------- 1 | package=libevent 2 | $(package)_version=2.1.8 3 | $(package)_download_path=https://github.com/libevent/libevent/releases/download/release-$($(package)_version)-stable 4 | $(package)_file_name=$(package)-$($(package)_version)-stable.tar.gz 5 | $(package)_sha256_hash=965cc5a8bb46ce4199a47e9b2c9e1cae3b137e8356ffdad6d94d3b9069b71dc2 6 | 7 | define $(package)_preprocess_cmds 8 | ./autogen.sh 9 | endef 10 | 11 | define $(package)_set_vars 12 | $(package)_config_opts=--disable-shared --disable-openssl --disable-libevent-regress 13 | $(package)_config_opts_release=--disable-debug-mode 14 | $(package)_config_opts_linux=--with-pic 15 | endef 16 | 17 | define $(package)_config_cmds 18 | $($(package)_autoconf) 19 | endef 20 | 21 | define $(package)_build_cmds 22 | $(MAKE) 23 | endef 24 | 25 | define $(package)_stage_cmds 26 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 27 | endef 28 | 29 | define $(package)_postprocess_cmds 30 | endef 31 | -------------------------------------------------------------------------------- /depends/packages/native_biplist.mk: -------------------------------------------------------------------------------- 1 | package=native_biplist 2 | $(package)_version=0.9 3 | $(package)_download_path=https://pypi.python.org/packages/source/b/biplist 4 | $(package)_file_name=biplist-$($(package)_version).tar.gz 5 | $(package)_sha256_hash=b57cadfd26e4754efdf89e9e37de87885f9b5c847b2615688ca04adfaf6ca604 6 | $(package)_install_libdir=$(build_prefix)/lib/python/dist-packages 7 | $(package)_patches=sorted_list.patch 8 | 9 | define $(package)_preprocess_cmds 10 | patch -p1 < $($(package)_patch_dir)/sorted_list.patch 11 | endef 12 | 13 | define $(package)_build_cmds 14 | python3 setup.py build 15 | endef 16 | 17 | define $(package)_stage_cmds 18 | mkdir -p $($(package)_install_libdir) && \ 19 | python3 setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir) 20 | endef 21 | -------------------------------------------------------------------------------- /depends/packages/native_cdrkit.mk: -------------------------------------------------------------------------------- 1 | package=native_cdrkit 2 | $(package)_version=1.1.11 3 | $(package)_download_path=http://distro.ibiblio.org/fatdog/source/600/c 4 | $(package)_file_name=cdrkit-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=b50d64c214a65b1a79afe3a964c691931a4233e2ba605d793eb85d0ac3652564 6 | $(package)_patches=cdrkit-deterministic.patch 7 | 8 | define $(package)_preprocess_cmds 9 | patch -p1 < $($(package)_patch_dir)/cdrkit-deterministic.patch 10 | endef 11 | 12 | define $(package)_config_cmds 13 | cmake -DCMAKE_INSTALL_PREFIX=$(build_prefix) 14 | endef 15 | 16 | define $(package)_build_cmds 17 | $(MAKE) genisoimage 18 | endef 19 | 20 | define $(package)_stage_cmds 21 | $(MAKE) DESTDIR=$($(package)_staging_dir) -C genisoimage install 22 | endef 23 | 24 | define $(package)_postprocess_cmds 25 | rm bin/isovfy bin/isoinfo bin/isodump bin/isodebug bin/devdump 26 | endef 27 | -------------------------------------------------------------------------------- /depends/packages/native_ds_store.mk: -------------------------------------------------------------------------------- 1 | package=native_ds_store 2 | $(package)_version=1.1.2 3 | $(package)_download_path=https://github.com/al45tair/ds_store/archive/ 4 | $(package)_file_name=v$($(package)_version).tar.gz 5 | $(package)_sha256_hash=3b3ecb7bf0a5157f5b6010bc3af7c141fb0ad3527084e63336220d22744bc20c 6 | $(package)_install_libdir=$(build_prefix)/lib/python/dist-packages 7 | $(package)_dependencies=native_biplist 8 | 9 | define $(package)_build_cmds 10 | python3 setup.py build 11 | endef 12 | 13 | define $(package)_stage_cmds 14 | mkdir -p $($(package)_install_libdir) && \ 15 | python3 setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir) 16 | endef 17 | -------------------------------------------------------------------------------- /depends/packages/native_libdmg-hfsplus.mk: -------------------------------------------------------------------------------- 1 | package=native_libdmg-hfsplus 2 | $(package)_version=0.1 3 | $(package)_download_path=https://github.com/theuni/libdmg-hfsplus/archive 4 | $(package)_file_name=libdmg-hfsplus-v$($(package)_version).tar.gz 5 | $(package)_sha256_hash=6569a02eb31c2827080d7d59001869ea14484c281efab0ae7f2b86af5c3120b3 6 | $(package)_build_subdir=build 7 | 8 | define $(package)_preprocess_cmds 9 | mkdir build 10 | endef 11 | 12 | define $(package)_config_cmds 13 | cmake -DCMAKE_INSTALL_PREFIX:PATH=$(build_prefix)/bin .. 14 | endef 15 | 16 | define $(package)_build_cmds 17 | $(MAKE) -C dmg 18 | endef 19 | 20 | define $(package)_stage_cmds 21 | $(MAKE) DESTDIR=$($(package)_staging_dir) -C dmg install 22 | endef 23 | -------------------------------------------------------------------------------- /depends/packages/native_mac_alias.mk: -------------------------------------------------------------------------------- 1 | package=native_mac_alias 2 | $(package)_version=2.0.7 3 | $(package)_download_path=https://github.com/al45tair/mac_alias/archive/ 4 | $(package)_file_name=v$($(package)_version).tar.gz 5 | $(package)_sha256_hash=6f606d3b6bccd2112aeabf1a063f5b5ece87005a5d7e97c8faca23b916e88838 6 | $(package)_install_libdir=$(build_prefix)/lib/python/dist-packages 7 | 8 | define $(package)_build_cmds 9 | python3 setup.py build 10 | endef 11 | 12 | define $(package)_stage_cmds 13 | mkdir -p $($(package)_install_libdir) && \ 14 | python3 setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir) 15 | endef 16 | -------------------------------------------------------------------------------- /depends/packages/native_protobuf.mk: -------------------------------------------------------------------------------- 1 | package=native_protobuf 2 | $(package)_version=2.6.1 3 | $(package)_download_path=https://github.com/google/protobuf/releases/download/v$($(package)_version) 4 | $(package)_file_name=protobuf-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=ee445612d544d885ae240ffbcbf9267faa9f593b7b101f21d58beceb92661910 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--disable-shared 9 | endef 10 | 11 | define $(package)_config_cmds 12 | $($(package)_autoconf) 13 | endef 14 | 15 | define $(package)_build_cmds 16 | $(MAKE) -C src protoc 17 | endef 18 | 19 | define $(package)_stage_cmds 20 | $(MAKE) -C src DESTDIR=$($(package)_staging_dir) install-strip 21 | endef 22 | 23 | define $(package)_postprocess_cmds 24 | rm -rf lib include 25 | endef 26 | -------------------------------------------------------------------------------- /depends/packages/packages.mk: -------------------------------------------------------------------------------- 1 | packages:=boost openssl libevent zeromq gmp chia_bls backtrace 2 | 3 | qt_native_packages = native_protobuf 4 | qt_packages = qrencode protobuf zlib 5 | 6 | qt_x86_64_linux_packages:=qt expat dbus libxcb xcb_proto libXau xproto freetype fontconfig libX11 xextproto libXext xtrans 7 | qt_i686_linux_packages:=$(qt_x86_64_linux_packages) 8 | 9 | qt_darwin_packages=qt 10 | qt_mingw32_packages=qt 11 | 12 | wallet_packages=bdb 13 | 14 | upnp_packages=miniupnpc 15 | 16 | darwin_native_packages = native_biplist native_ds_store native_mac_alias 17 | 18 | ifneq ($(build_os),darwin) 19 | darwin_native_packages += native_cctools native_cdrkit native_libdmg-hfsplus 20 | endif 21 | -------------------------------------------------------------------------------- /depends/packages/qrencode.mk: -------------------------------------------------------------------------------- 1 | package=qrencode 2 | $(package)_version=3.4.4 3 | $(package)_download_path=https://fukuchi.org/works/qrencode/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=efe5188b1ddbcbf98763b819b146be6a90481aac30cfc8d858ab78a19cde1fa5 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--disable-shared -without-tools --disable-sdltest 9 | $(package)_config_opts_linux=--with-pic 10 | endef 11 | 12 | define $(package)_config_cmds 13 | $($(package)_autoconf) 14 | endef 15 | 16 | define $(package)_build_cmds 17 | $(MAKE) 18 | endef 19 | 20 | define $(package)_stage_cmds 21 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 22 | endef 23 | -------------------------------------------------------------------------------- /depends/packages/xcb_proto.mk: -------------------------------------------------------------------------------- 1 | package=xcb_proto 2 | $(package)_version=1.10 3 | $(package)_download_path=http://xcb.freedesktop.org/dist 4 | $(package)_file_name=xcb-proto-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=7ef40ddd855b750bc597d2a435da21e55e502a0fefa85b274f2c922800baaf05 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--disable-shared 9 | $(package)_config_opts_linux=--with-pic 10 | endef 11 | 12 | define $(package)_config_cmds 13 | $($(package)_autoconf) 14 | endef 15 | 16 | define $(package)_build_cmds 17 | $(MAKE) 18 | endef 19 | 20 | define $(package)_stage_cmds 21 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 22 | endef 23 | 24 | define $(package)_postprocess_cmds 25 | find -name "*.pyc" -delete && \ 26 | find -name "*.pyo" -delete 27 | endef 28 | -------------------------------------------------------------------------------- /depends/packages/xextproto.mk: -------------------------------------------------------------------------------- 1 | package=xextproto 2 | $(package)_version=7.3.0 3 | $(package)_download_path=http://xorg.freedesktop.org/releases/individual/proto 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=f3f4b23ac8db9c3a9e0d8edb591713f3d70ef9c3b175970dd8823dfc92aa5bb0 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--disable-shared 9 | endef 10 | 11 | define $(package)_config_cmds 12 | $($(package)_autoconf) 13 | endef 14 | 15 | define $(package)_build_cmds 16 | $(MAKE) 17 | endef 18 | 19 | define $(package)_stage_cmds 20 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 21 | endef 22 | -------------------------------------------------------------------------------- /depends/packages/xproto.mk: -------------------------------------------------------------------------------- 1 | package=xproto 2 | $(package)_version=7.0.26 3 | $(package)_download_path=http://xorg.freedesktop.org/releases/individual/proto 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=636162c1759805a5a0114a369dffdeccb8af8c859ef6e1445f26a4e6e046514f 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--disable-shared 9 | endef 10 | 11 | define $(package)_config_cmds 12 | $($(package)_autoconf) 13 | endef 14 | 15 | define $(package)_build_cmds 16 | $(MAKE) 17 | endef 18 | 19 | define $(package)_stage_cmds 20 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 21 | endef 22 | -------------------------------------------------------------------------------- /depends/packages/xtrans.mk: -------------------------------------------------------------------------------- 1 | package=xtrans 2 | $(package)_version=1.3.4 3 | $(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=054d4ee3efd52508c753e9f7bc655ef185a29bd2850dd9e2fc2ccc33544f583a 6 | $(package)_dependencies= 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts_linux=--with-pic --disable-static 10 | endef 11 | 12 | define $(package)_config_cmds 13 | $($(package)_autoconf) 14 | endef 15 | 16 | define $(package)_build_cmds 17 | $(MAKE) 18 | endef 19 | 20 | define $(package)_stage_cmds 21 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 22 | endef 23 | -------------------------------------------------------------------------------- /depends/patches/openssl/0001-Add-OpenSSL-termios-fix-for-musl-libc.patch: -------------------------------------------------------------------------------- 1 | diff --git a/crypto/ui/ui_openssl.c b/crypto/ui/ui_openssl.c 2 | index a38c758..d99edc2 100644 3 | --- a/crypto/ui/ui_openssl.c 4 | +++ b/crypto/ui/ui_openssl.c 5 | @@ -190,9 +190,9 @@ 6 | # undef SGTTY 7 | #endif 8 | 9 | -#if defined(linux) && !defined(TERMIO) 10 | -# undef TERMIOS 11 | -# define TERMIO 12 | +#if defined(linux) 13 | +# define TERMIOS 14 | +# undef TERMIO 15 | # undef SGTTY 16 | #endif 17 | 18 | -------------------------------------------------------------------------------- /depends/patches/qt/fix_qt_configure.patch: -------------------------------------------------------------------------------- 1 | --- old/qtbase/configure 2 | +++ new/qtbase/configure 3 | @@ -2846,7 +2846,7 @@ 4 | # with the system. We use 'xcrun' to check the clang version that's part of 5 | # the Xcode installation. 6 | XCRUN=`/usr/bin/xcrun -sdk macosx clang -v 2>&1` 7 | - CLANGVERSION=`echo "$XCRUN" | sed -n 's/.*version \([0-9]\).*/\1/p'` 8 | + CLANGVERSION=`echo "$XCRUN" | sed -n 's/.*version \([0-9]*\).*/\1/p'` 9 | expr "$CLANGVERSION" : '[0-9]' > /dev/null || { echo "Unable to determine CLANG version from output of xcrun: $XCRUN" ; exit 2 ; } 10 | if [ "$CLANGVERSION" -ge 3 ]; then 11 | PLATFORM=macx-clang 12 | -------------------------------------------------------------------------------- /depends/patches/qt/fix_qt_pkgconfig.patch: -------------------------------------------------------------------------------- 1 | --- old/qtbase/mkspecs/features/qt_module.prf 2 | +++ new/qtbase/mkspecs/features/qt_module.prf 3 | @@ -245,7 +245,7 @@ 4 | load(qt_targets) 5 | 6 | # this builds on top of qt_common 7 | -!internal_module:!lib_bundle:if(unix|mingw) { 8 | +unix|mingw { 9 | CONFIG += create_pc 10 | QMAKE_PKGCONFIG_DESTDIR = pkgconfig 11 | host_build: \ 12 | -------------------------------------------------------------------------------- /depends/patches/zeromq/9114d3957725acd34aa8b8d011585812f3369411.patch: -------------------------------------------------------------------------------- 1 | From 9114d3957725acd34aa8b8d011585812f3369411 Mon Sep 17 00:00:00 2001 2 | From: Jeroen Ooms 3 | Date: Tue, 20 Oct 2015 13:10:38 +0200 4 | Subject: [PATCH] enable static libraries on mingw 5 | 6 | --- 7 | configure.ac | 2 +- 8 | 1 file changed, 1 insertion(+), 1 deletion(-) 9 | 10 | diff --git a/configure.ac b/configure.ac 11 | index d702461..da24aa5 100644 12 | --- a/configure.ac 13 | +++ b/configure.ac 14 | @@ -261,7 +261,7 @@ case "${host_os}" in 15 | libzmq_dso_visibility="no" 16 | 17 | if test "x$enable_static" = "xyes"; then 18 | - AC_MSG_ERROR([Building static libraries is not supported under MinGW32]) 19 | + CPPFLAGS="-DZMQ_STATIC" 20 | fi 21 | ;; 22 | *cygwin*) 23 | -------------------------------------------------------------------------------- /depends/patches/zeromq/9e6745c12e0b100cd38acecc16ce7db02905e27c.patch: -------------------------------------------------------------------------------- 1 | From 9e6745c12e0b100cd38acecc16ce7db02905e27c Mon Sep 17 00:00:00 2001 2 | From: David Millard 3 | Date: Tue, 10 May 2016 13:53:53 -0700 4 | Subject: [PATCH] Fix autotools for static MinGW builds 5 | 6 | --- 7 | configure.ac | 2 +- 8 | 1 file changed, 1 insertion(+), 1 deletion(-) 9 | 10 | diff --git a/configure.ac b/configure.ac 11 | index da24aa5..abfd88b 100644 12 | --- a/configure.ac 13 | +++ b/configure.ac 14 | @@ -261,7 +261,7 @@ case "${host_os}" in 15 | libzmq_dso_visibility="no" 16 | 17 | if test "x$enable_static" = "xyes"; then 18 | - CPPFLAGS="-DZMQ_STATIC" 19 | + CPPFLAGS="-DZMQ_STATIC $CPPFLAGS" 20 | fi 21 | ;; 22 | *cygwin*) 23 | -------------------------------------------------------------------------------- /doc/.gitignore: -------------------------------------------------------------------------------- 1 | Doxyfile 2 | -------------------------------------------------------------------------------- /doc/README_windows.txt: -------------------------------------------------------------------------------- 1 | Pigeon Core 2 | ========== 3 | 4 | Intro 5 | ----- 6 | Pigeon is a free open source peer-to-peer electronic cash system that is 7 | completely decentralized, without the need for a central server or trusted 8 | parties. Users hold the crypto keys to their own money and transact directly 9 | with each other, with the help of a P2P network to check for double-spending. 10 | 11 | 12 | Setup 13 | ----- 14 | Unpack the files into a directory and run pigeon-qt.exe. 15 | 16 | Pigeon Core is the original Pigeon client and it builds the backbone of the network. 17 | However, it downloads and stores the entire history of Pigeon transactions; 18 | depending on the speed of your computer and network connection, the synchronization 19 | process can take anywhere from a few hours to a day or more. 20 | 21 | See the Pigeon documentation at: 22 | https://docs.pigeon.org 23 | for more help and information. 24 | -------------------------------------------------------------------------------- /doc/assets-attribution.md: -------------------------------------------------------------------------------- 1 | The list of assets used in the Pigeon Core source and their attribution can now be found in [contrib/debian/copyright](../contrib/debian/copyright). 2 | -------------------------------------------------------------------------------- /doc/bitcoin_logo_doxygen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/bitcoin_logo_doxygen.png -------------------------------------------------------------------------------- /doc/gitian-building/all_files_in_one_partition.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/all_files_in_one_partition.png -------------------------------------------------------------------------------- /doc/gitian-building/create_new_vm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/create_new_vm.png -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_file_location_size.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/create_vm_file_location_size.png -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_hard_disk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/create_vm_hard_disk.png -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_hard_disk_file_type.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/create_vm_hard_disk_file_type.png -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_memsize.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/create_vm_memsize.png -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_storage_physical_hard_disk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/create_vm_storage_physical_hard_disk.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_10_configure_clock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_10_configure_clock.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_11_partition_disks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_11_partition_disks.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_12_choose_disk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_12_choose_disk.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_14_finish.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_14_finish.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_15_write_changes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_15_write_changes.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_16_choose_a_mirror.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_16_choose_a_mirror.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_18_proxy_settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_18_proxy_settings.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_19_software_selection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_19_software_selection.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_1_boot_menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_1_boot_menu.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_20_install_grub.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_20_install_grub.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_21_install_grub_bootloader.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_21_install_grub_bootloader.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_22_finish_installation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_22_finish_installation.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_2_select_a_language.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_2_select_a_language.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_3_select_location.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_3_select_location.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_4_configure_keyboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_4_configure_keyboard.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_5_configure_the_network.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_5_configure_the_network.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_6_domain_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_6_domain_name.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_6a_set_up_root_password.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_6a_set_up_root_password.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_7_set_up_user_fullname.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_7_set_up_user_fullname.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_8_set_up_username.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_8_set_up_username.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_9_user_password.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_install_9_user_password.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_root_login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/debian_root_login.png -------------------------------------------------------------------------------- /doc/gitian-building/network_settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/network_settings.png -------------------------------------------------------------------------------- /doc/gitian-building/port_forwarding_rules.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/port_forwarding_rules.png -------------------------------------------------------------------------------- /doc/gitian-building/select_startup_disk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/select_startup_disk.png -------------------------------------------------------------------------------- /doc/gitian-building/system_settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/doc/gitian-building/system_settings.png -------------------------------------------------------------------------------- /doc/man/Makefile.am: -------------------------------------------------------------------------------- 1 | dist_man1_MANS= 2 | 3 | if BUILD_BITCOIND 4 | dist_man1_MANS+=pigeond.1 5 | endif 6 | 7 | if ENABLE_QT 8 | dist_man1_MANS+=pigeon-qt.1 9 | endif 10 | 11 | if BUILD_BITCOIN_UTILS 12 | dist_man1_MANS+=pigeon-cli.1 pigeon-tx.1 13 | endif 14 | -------------------------------------------------------------------------------- /docker/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM debian:stretch 2 | LABEL maintainer="Pigeon Developers " 3 | LABEL description="Dockerised PigeonCore, built from Travis" 4 | 5 | RUN apt-get update && apt-get -y upgrade && apt-get clean && rm -fr /var/cache/apt/* 6 | 7 | COPY bin/* /usr/bin/ 8 | -------------------------------------------------------------------------------- /docker/README.md: -------------------------------------------------------------------------------- 1 | This docker image is built and pushed from travis. It does not contain any default configs or any 2 | special startup scripts. This is to keep it simple and to not copy too much logic from the 3 | official/supported Docker Images found at https://hub.docker.com/r/pigeonpro/pigeond/ 4 | 5 | The image is mostly used for devops purposes, e.g. for testnet/devnet deployments. Regular users 6 | should use the official images instead of this one. 7 | 8 | **NOTE: Please update the image description at https://hub.docker.com/r/pigeonpro/pigeond-develop/ when changing the above text** -------------------------------------------------------------------------------- /docker/build-docker.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" 4 | cd $DIR/.. 5 | 6 | DOCKER_IMAGE=${DOCKER_IMAGE:-pigeonpro/pigeond-develop} 7 | DOCKER_TAG=${DOCKER_TAG:-latest} 8 | 9 | BUILD_DIR=${BUILD_DIR:-.} 10 | 11 | rm docker/bin/* 12 | mkdir docker/bin 13 | cp $BUILD_DIR/src/pigeond docker/bin/ 14 | cp $BUILD_DIR/src/pigeon-cli docker/bin/ 15 | cp $BUILD_DIR/src/pigeon-tx docker/bin/ 16 | strip docker/bin/pigeond 17 | strip docker/bin/pigeon-cli 18 | strip docker/bin/pigeon-tx 19 | 20 | docker build --pull -t $DOCKER_IMAGE:$DOCKER_TAG -f docker/Dockerfile docker 21 | -------------------------------------------------------------------------------- /docker/push-docker.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" 4 | cd $DIR/.. 5 | 6 | DOCKER_IMAGE=${DOCKER_IMAGE:-pigeonpro/pigeond-develop} 7 | DOCKER_TAG=${DOCKER_TAG:-latest} 8 | 9 | if [ -n "$DOCKER_REPO" ]; then 10 | DOCKER_IMAGE_WITH_REPO=$DOCKER_REPO/$DOCKER_IMAGE 11 | else 12 | DOCKER_IMAGE_WITH_REPO=$DOCKER_IMAGE 13 | fi 14 | 15 | docker tag $DOCKER_IMAGE:$DOCKER_TAG $DOCKER_IMAGE_WITH_REPO:$DOCKER_TAG 16 | docker push $DOCKER_IMAGE_WITH_REPO:$DOCKER_TAG 17 | docker rmi $DOCKER_IMAGE_WITH_REPO:$DOCKER_TAG 18 | -------------------------------------------------------------------------------- /libpigeonconsensus.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: @PACKAGE_NAME@ consensus library 7 | Description: Library for the Bitcoin consensus protocol. 8 | Version: @PACKAGE_VERSION@ 9 | Libs: -L${libdir} -lpigeonconsensus 10 | Cflags: -I${includedir} 11 | Requires.private: libcrypto 12 | -------------------------------------------------------------------------------- /share/pixmaps/bitcoin.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/bitcoin.ico -------------------------------------------------------------------------------- /share/pixmaps/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/favicon.png -------------------------------------------------------------------------------- /share/pixmaps/nsis-header.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/nsis-header.bmp -------------------------------------------------------------------------------- /share/pixmaps/nsis-wizard.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/nsis-wizard.bmp -------------------------------------------------------------------------------- /share/pixmaps/pigeon-HighContrast-128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/pigeon-HighContrast-128.png -------------------------------------------------------------------------------- /share/pixmaps/pigeon-HighContrast-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/pigeon-HighContrast-16.png -------------------------------------------------------------------------------- /share/pixmaps/pigeon-HighContrast-22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/pigeon-HighContrast-22.png -------------------------------------------------------------------------------- /share/pixmaps/pigeon-HighContrast-24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/pigeon-HighContrast-24.png -------------------------------------------------------------------------------- /share/pixmaps/pigeon-HighContrast-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/pigeon-HighContrast-256.png -------------------------------------------------------------------------------- /share/pixmaps/pigeon-HighContrast-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/pigeon-HighContrast-32.png -------------------------------------------------------------------------------- /share/pixmaps/pigeon-HighContrast-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/pigeon-HighContrast-48.png -------------------------------------------------------------------------------- /share/pixmaps/pigeon128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/pigeon128.png -------------------------------------------------------------------------------- /share/pixmaps/pigeon16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/pigeon16.png -------------------------------------------------------------------------------- /share/pixmaps/pigeon256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/pigeon256.png -------------------------------------------------------------------------------- /share/pixmaps/pigeon32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/pigeon32.png -------------------------------------------------------------------------------- /share/pixmaps/pigeon64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/share/pixmaps/pigeon64.png -------------------------------------------------------------------------------- /share/rpcuser/README.md: -------------------------------------------------------------------------------- 1 | RPC Tools 2 | --------------------- 3 | 4 | ### [RPCUser](/share/rpcuser) ### 5 | 6 | Create an RPC user login credential. 7 | 8 | Usage: 9 | 10 | ./rpcuser.py 11 | -------------------------------------------------------------------------------- /src/algo/Lyra2RE.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) The Bitcoin Core developers 2 | // Copyright (c) 2017 The Raven Core developers 3 | // Copyright (c) 2018 The Rito Core developers 4 | // Distributed under the MIT software license, see the accompanying 5 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 6 | #ifndef LYRA2RE_H 7 | #define LYRA2RE_H 8 | 9 | #ifdef __cplusplus 10 | extern "C" { 11 | #endif 12 | 13 | void lyra2re_hash(const char* input, char* output); 14 | void lyra2re2_hash(const char* input, char* output); 15 | 16 | #ifdef __cplusplus 17 | } 18 | #endif 19 | 20 | #endif 21 | -------------------------------------------------------------------------------- /src/algo/SWIFFTX/hash_interface.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) The Bitcoin Core developers 2 | // Copyright (c) 2017 The Raven Core developers 3 | // Copyright (c) 2018 The Rito Core developers 4 | // Distributed under the MIT software license, see the accompanying 5 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 6 | #pragma once 7 | 8 | #include 9 | 10 | namespace hash { 11 | 12 | using BitSequence = unsigned char; 13 | using DataLength = unsigned long long; 14 | 15 | struct hash_interface { 16 | virtual ~hash_interface() = default; 17 | 18 | virtual int Init(int hash_bitsize) = 0; 19 | virtual int Update(const BitSequence *data, DataLength data_bitsize) = 0; 20 | virtual int Final(BitSequence *hash) = 0; 21 | 22 | virtual int 23 | Hash(int hash_bitsize, const BitSequence *data, DataLength data_bitsize, BitSequence *hash) = 0; 24 | }; 25 | 26 | } // namespace hash 27 | -------------------------------------------------------------------------------- /src/algo/SWIFFTX/sha3_interface.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) The Bitcoin Core developers 2 | // Copyright (c) 2017 The Raven Core developers 3 | // Copyright (c) 2018 The Rito Core developers 4 | // Distributed under the MIT software license, see the accompanying 5 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 6 | #pragma once 7 | 8 | #include 9 | #include 10 | 11 | namespace sha3 { 12 | 13 | using BitSequence = hash::BitSequence; 14 | using DataLength = hash::DataLength; 15 | 16 | struct sha3_interface : hash::hash_interface {}; 17 | 18 | } // namespace sha3 19 | -------------------------------------------------------------------------------- /src/algo/extra.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) The Bitcoin Core developers 2 | // Copyright (c) 2017 The Raven Core developers 3 | // Copyright (c) 2018 The Rito Core developers 4 | // Distributed under the MIT software license, see the accompanying 5 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 6 | uint32_t be32dec(uint32_t *pp); 7 | uint32_t be32enc(uint32_t *pp, uint32_t x); 8 | uint32_t le32dec(uint32_t *pp); 9 | uint32_t le32enc(uint32_t *pp, uint32_t x); 10 | -------------------------------------------------------------------------------- /src/batchedlogger.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2018-2019 The Dash Core developers 2 | // Copyright (c) 2021-2022 The Pigeoncoin Core developers 3 | // Distributed under the MIT/X11 software license, see the accompanying 4 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | #include "batchedlogger.h" 7 | #include "util.h" 8 | 9 | CBatchedLogger::CBatchedLogger(uint64_t _category, const std::string& _header) : 10 | accept(LogAcceptCategory(_category)), header(_header) 11 | { 12 | } 13 | 14 | CBatchedLogger::~CBatchedLogger() 15 | { 16 | Flush(); 17 | } 18 | 19 | void CBatchedLogger::Flush() 20 | { 21 | if (!accept || msg.empty()) { 22 | return; 23 | } 24 | LogPrintStr(strprintf("%s:\n%s", header, msg)); 25 | msg.clear(); 26 | } 27 | -------------------------------------------------------------------------------- /src/batchedlogger.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2018-2019 The Dash Core developers 2 | // Copyright (c) 2021-2022 The Pigeoncoin Core developers 3 | // Distributed under the MIT/X11 software license, see the accompanying 4 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | #ifndef PIGEON_BATCHEDLOGGER_H 7 | #define PIGEON_BATCHEDLOGGER_H 8 | 9 | #include "tinyformat.h" 10 | 11 | class CBatchedLogger 12 | { 13 | private: 14 | bool accept; 15 | std::string header; 16 | std::string msg; 17 | public: 18 | CBatchedLogger(uint64_t _category, const std::string& _header); 19 | virtual ~CBatchedLogger(); 20 | 21 | template 22 | void Batch(const std::string& fmt, const Args&... args) 23 | { 24 | if (!accept) { 25 | return; 26 | } 27 | msg += " " + strprintf(fmt, args...) + "\n"; 28 | } 29 | 30 | void Flush(); 31 | }; 32 | 33 | #endif//PIGEON_BATCHEDLOGGER_H 34 | -------------------------------------------------------------------------------- /src/bench/.gitignore: -------------------------------------------------------------------------------- 1 | bench_pigeon 2 | -------------------------------------------------------------------------------- /src/bench/Examples.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "bench.h" 6 | #include "validation.h" 7 | #include "utiltime.h" 8 | 9 | // Sanity test: this should loop ten times, and 10 | // min/max/average should be close to 100ms. 11 | static void Sleep100ms(benchmark::State& state) 12 | { 13 | while (state.KeepRunning()) { 14 | MilliSleep(100); 15 | } 16 | } 17 | 18 | BENCHMARK(Sleep100ms); 19 | 20 | // Extremely fast-running benchmark: 21 | #include 22 | 23 | volatile double sum = 0.0; // volatile, global so not optimized away 24 | 25 | static void Trig(benchmark::State& state) 26 | { 27 | double d = 0.01; 28 | while (state.KeepRunning()) { 29 | sum += sin(d); 30 | d += 0.000001; 31 | } 32 | } 33 | 34 | BENCHMARK(Trig); 35 | -------------------------------------------------------------------------------- /src/bench/data/block813851.raw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/bench/data/block813851.raw -------------------------------------------------------------------------------- /src/bench/merkle_root.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2016 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "bench.h" 6 | 7 | #include "uint256.h" 8 | #include "random.h" 9 | #include "consensus/merkle.h" 10 | 11 | static void MerkleRoot(benchmark::State& state) 12 | { 13 | FastRandomContext rng(true); 14 | std::vector leaves; 15 | leaves.resize(9001); 16 | for (auto& item : leaves) { 17 | item = rng.rand256(); 18 | } 19 | while (state.KeepRunning()) { 20 | bool mutation = false; 21 | uint256 hash = ComputeMerkleRoot(std::vector(leaves), &mutation); 22 | leaves[mutation] = hash; 23 | } 24 | } 25 | 26 | BENCHMARK(MerkleRoot/*, 800*/); 27 | -------------------------------------------------------------------------------- /src/bench/perf.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2016 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | /** Functions for measurement of CPU cycles */ 6 | #ifndef H_PERF 7 | #define H_PERF 8 | 9 | #include 10 | 11 | #if defined(__i386__) 12 | 13 | static inline uint64_t perf_cpucycles(void) 14 | { 15 | uint64_t x; 16 | __asm__ volatile (".byte 0x0f, 0x31" : "=A" (x)); 17 | return x; 18 | } 19 | 20 | #elif defined(__x86_64__) 21 | 22 | static inline uint64_t perf_cpucycles(void) 23 | { 24 | uint32_t hi, lo; 25 | __asm__ __volatile__ ("rdtsc" : "=a"(lo), "=d"(hi)); 26 | return ((uint64_t)lo)|(((uint64_t)hi)<<32); 27 | } 28 | #else 29 | 30 | uint64_t perf_cpucycles(void); 31 | 32 | #endif 33 | 34 | void perf_init(void); 35 | void perf_fini(void); 36 | 37 | #endif // H_PERF 38 | -------------------------------------------------------------------------------- /src/checkpoints.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2015 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_CHECKPOINTS_H 6 | #define BITCOIN_CHECKPOINTS_H 7 | 8 | #include "uint256.h" 9 | 10 | #include 11 | 12 | class CBlockIndex; 13 | struct CCheckpointData; 14 | 15 | /** 16 | * Block-chain checkpoints are compiled-in sanity checks. 17 | * They are updated every release or three. 18 | */ 19 | namespace Checkpoints 20 | { 21 | 22 | //! Returns last CBlockIndex* in mapBlockIndex that is a checkpoint 23 | CBlockIndex* GetLastCheckpoint(const CCheckpointData& data); 24 | 25 | } //namespace Checkpoints 26 | 27 | #endif // BITCOIN_CHECKPOINTS_H 28 | -------------------------------------------------------------------------------- /src/compat/sanity.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2014 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_COMPAT_SANITY_H 6 | #define BITCOIN_COMPAT_SANITY_H 7 | 8 | bool glibc_sanity_test(); 9 | bool glibcxx_sanity_test(); 10 | 11 | #endif // BITCOIN_COMPAT_SANITY_H 12 | -------------------------------------------------------------------------------- /src/compat/strnlen.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2014 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #if defined(HAVE_CONFIG_H) 6 | #include "config/pigeon-config.h" 7 | #endif 8 | 9 | #include 10 | 11 | #if HAVE_DECL_STRNLEN == 0 12 | size_t strnlen( const char *start, size_t max_len) 13 | { 14 | const char *end = (const char *)memchr(start, '\0', max_len); 15 | 16 | return end ? (size_t)(end - start) : max_len; 17 | } 18 | #endif // HAVE_DECL_STRNLEN -------------------------------------------------------------------------------- /src/config/.empty: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/config/.empty -------------------------------------------------------------------------------- /src/consensus/merkle.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_MERKLE 6 | #define BITCOIN_MERKLE 7 | 8 | #include 9 | #include 10 | 11 | #include "primitives/transaction.h" 12 | #include "primitives/block.h" 13 | #include "uint256.h" 14 | 15 | uint256 ComputeMerkleRoot(std::vector hashes, bool* mutated = nullptr); 16 | 17 | /* 18 | * Compute the Merkle root of the transactions in a block. 19 | * *mutated is set to true if a duplicated subtree was found. 20 | */ 21 | uint256 BlockMerkleRoot(const CBlock& block, bool* mutated = nullptr); 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /src/crypto/hmac_sha256.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_CRYPTO_HMAC_SHA256_H 6 | #define BITCOIN_CRYPTO_HMAC_SHA256_H 7 | 8 | #include "crypto/sha256.h" 9 | 10 | #include 11 | #include 12 | 13 | /** A hasher class for HMAC-SHA-256. */ 14 | class CHMAC_SHA256 15 | { 16 | private: 17 | CSHA256 outer; 18 | CSHA256 inner; 19 | 20 | public: 21 | static const size_t OUTPUT_SIZE = 32; 22 | 23 | CHMAC_SHA256(const unsigned char* key, size_t keylen); 24 | CHMAC_SHA256& Write(const unsigned char* data, size_t len) 25 | { 26 | inner.Write(data, len); 27 | return *this; 28 | } 29 | void Finalize(unsigned char hash[OUTPUT_SIZE]); 30 | }; 31 | 32 | #endif // BITCOIN_CRYPTO_HMAC_SHA256_H 33 | -------------------------------------------------------------------------------- /src/crypto/hmac_sha512.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_CRYPTO_HMAC_SHA512_H 6 | #define BITCOIN_CRYPTO_HMAC_SHA512_H 7 | 8 | #include "crypto/sha512.h" 9 | 10 | #include 11 | #include 12 | 13 | /** A hasher class for HMAC-SHA-512. */ 14 | class CHMAC_SHA512 15 | { 16 | private: 17 | CSHA512 outer; 18 | CSHA512 inner; 19 | 20 | public: 21 | static const size_t OUTPUT_SIZE = 64; 22 | 23 | CHMAC_SHA512(const unsigned char* key, size_t keylen); 24 | CHMAC_SHA512& Write(const unsigned char* data, size_t len) 25 | { 26 | inner.Write(data, len); 27 | return *this; 28 | } 29 | void Finalize(unsigned char hash[OUTPUT_SIZE]); 30 | }; 31 | 32 | #endif // BITCOIN_CRYPTO_HMAC_SHA512_H 33 | -------------------------------------------------------------------------------- /src/crypto/poly1305.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2019 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_CRYPTO_POLY1305_H 6 | #define BITCOIN_CRYPTO_POLY1305_H 7 | 8 | #include 9 | #include 10 | 11 | #define POLY1305_KEYLEN 32 12 | #define POLY1305_TAGLEN 16 13 | 14 | void poly1305_auth(unsigned char out[POLY1305_TAGLEN], const unsigned char *m, size_t inlen, 15 | const unsigned char key[POLY1305_KEYLEN]); 16 | 17 | #endif // BITCOIN_CRYPTO_POLY1305_H 18 | -------------------------------------------------------------------------------- /src/crypto/ripemd160.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_CRYPTO_RIPEMD160_H 6 | #define BITCOIN_CRYPTO_RIPEMD160_H 7 | 8 | #include 9 | #include 10 | 11 | /** A hasher class for RIPEMD-160. */ 12 | class CRIPEMD160 13 | { 14 | private: 15 | uint32_t s[5]; 16 | unsigned char buf[64]; 17 | uint64_t bytes; 18 | 19 | public: 20 | static const size_t OUTPUT_SIZE = 20; 21 | 22 | CRIPEMD160(); 23 | CRIPEMD160& Write(const unsigned char* data, size_t len); 24 | void Finalize(unsigned char hash[OUTPUT_SIZE]); 25 | CRIPEMD160& Reset(); 26 | }; 27 | 28 | #endif // BITCOIN_CRYPTO_RIPEMD160_H 29 | -------------------------------------------------------------------------------- /src/crypto/sha1.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_CRYPTO_SHA1_H 6 | #define BITCOIN_CRYPTO_SHA1_H 7 | 8 | #include 9 | #include 10 | 11 | /** A hasher class for SHA1. */ 12 | class CSHA1 13 | { 14 | private: 15 | uint32_t s[5]; 16 | unsigned char buf[64]; 17 | uint64_t bytes; 18 | 19 | public: 20 | static const size_t OUTPUT_SIZE = 20; 21 | 22 | CSHA1(); 23 | CSHA1& Write(const unsigned char* data, size_t len); 24 | void Finalize(unsigned char hash[OUTPUT_SIZE]); 25 | CSHA1& Reset(); 26 | }; 27 | 28 | #endif // BITCOIN_CRYPTO_SHA1_H 29 | -------------------------------------------------------------------------------- /src/crypto/sha512.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_CRYPTO_SHA512_H 6 | #define BITCOIN_CRYPTO_SHA512_H 7 | 8 | #include 9 | #include 10 | 11 | /** A hasher class for SHA-512. */ 12 | class CSHA512 13 | { 14 | private: 15 | uint64_t s[8]; 16 | unsigned char buf[128]; 17 | uint64_t bytes; 18 | 19 | public: 20 | static const size_t OUTPUT_SIZE = 64; 21 | 22 | CSHA512(); 23 | CSHA512& Write(const unsigned char* data, size_t len); 24 | void Finalize(unsigned char hash[OUTPUT_SIZE]); 25 | CSHA512& Reset(); 26 | }; 27 | 28 | #endif // BITCOIN_CRYPTO_SHA512_H 29 | -------------------------------------------------------------------------------- /src/fs.cpp: -------------------------------------------------------------------------------- 1 | #include "fs.h" 2 | 3 | namespace fsbridge { 4 | 5 | FILE *fopen(const fs::path& p, const char *mode) 6 | { 7 | return ::fopen(p.string().c_str(), mode); 8 | } 9 | 10 | FILE *freopen(const fs::path& p, const char *mode, FILE *stream) 11 | { 12 | return ::freopen(p.string().c_str(), mode, stream); 13 | } 14 | 15 | } // fsbridge 16 | -------------------------------------------------------------------------------- /src/fs.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2017 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_FS_H 6 | #define BITCOIN_FS_H 7 | 8 | #include 9 | #include 10 | 11 | #include 12 | #include 13 | #include 14 | 15 | /** Filesystem operations and types */ 16 | namespace fs = boost::filesystem; 17 | 18 | /** Bridge operations to C stdio */ 19 | namespace fsbridge { 20 | FILE *fopen(const fs::path& p, const char *mode); 21 | FILE *freopen(const fs::path& p, const char *mode, FILE *stream); 22 | }; 23 | 24 | #endif // BITCOIN_FS_H 25 | -------------------------------------------------------------------------------- /src/httprpc.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_HTTPRPC_H 6 | #define BITCOIN_HTTPRPC_H 7 | 8 | #include 9 | #include 10 | 11 | /** Start HTTP RPC subsystem. 12 | * Precondition; HTTP and RPC has been started. 13 | */ 14 | bool StartHTTPRPC(); 15 | /** Interrupt HTTP RPC subsystem. 16 | */ 17 | void InterruptHTTPRPC(); 18 | /** Stop HTTP RPC subsystem. 19 | * Precondition; HTTP and RPC has been stopped. 20 | */ 21 | void StopHTTPRPC(); 22 | 23 | /** Start HTTP REST subsystem. 24 | * Precondition; HTTP and RPC has been started. 25 | */ 26 | bool StartREST(); 27 | /** Interrupt RPC REST subsystem. 28 | */ 29 | void InterruptREST(); 30 | /** Stop HTTP REST subsystem. 31 | * Precondition; HTTP and RPC has been stopped. 32 | */ 33 | void StopREST(); 34 | 35 | #endif 36 | -------------------------------------------------------------------------------- /src/immer/detail/rbts/bits.hpp: -------------------------------------------------------------------------------- 1 | // 2 | // immer: immutable data structures for C++ 3 | // Copyright (C) 2016, 2017, 2018 Juan Pedro Bolivar Puente 4 | // 5 | // This software is distributed under the Boost Software License, Version 1.0. 6 | // See accompanying file LICENSE or copy at http://boost.org/LICENSE_1_0.txt 7 | // 8 | 9 | #pragma once 10 | 11 | #include 12 | 13 | namespace immer { 14 | namespace detail { 15 | namespace rbts { 16 | 17 | using bits_t = std::uint32_t; 18 | using shift_t = std::uint32_t; 19 | using count_t = std::uint32_t; 20 | using size_t = std::size_t; 21 | 22 | template 23 | constexpr T branches = T{1} << B; 24 | 25 | template 26 | constexpr T mask = branches - 1; 27 | 28 | template 29 | constexpr shift_t endshift = shift_t{BL} - shift_t{B}; 30 | 31 | } // namespace rbts 32 | } // namespace detail 33 | } // namespace immer 34 | -------------------------------------------------------------------------------- /src/immer/heap/free_list_node.hpp: -------------------------------------------------------------------------------- 1 | // 2 | // immer: immutable data structures for C++ 3 | // Copyright (C) 2016, 2017, 2018 Juan Pedro Bolivar Puente 4 | // 5 | // This software is distributed under the Boost Software License, Version 1.0. 6 | // See accompanying file LICENSE or copy at http://boost.org/LICENSE_1_0.txt 7 | // 8 | 9 | #pragma once 10 | 11 | #include 12 | 13 | namespace immer { 14 | 15 | struct free_list_node 16 | { 17 | free_list_node* next; 18 | }; 19 | 20 | template 21 | struct with_free_list_node 22 | : with_data 23 | {}; 24 | 25 | } // namespace immer 26 | -------------------------------------------------------------------------------- /src/immer/heap/identity_heap.hpp: -------------------------------------------------------------------------------- 1 | // 2 | // immer: immutable data structures for C++ 3 | // Copyright (C) 2016, 2017, 2018 Juan Pedro Bolivar Puente 4 | // 5 | // This software is distributed under the Boost Software License, Version 1.0. 6 | // See accompanying file LICENSE or copy at http://boost.org/LICENSE_1_0.txt 7 | // 8 | 9 | #pragma once 10 | 11 | #include 12 | 13 | namespace immer { 14 | 15 | /*! 16 | * A heap that simply passes on to the parent heap. 17 | */ 18 | template 19 | struct identity_heap : Base 20 | { 21 | template 22 | static void* allocate(std::size_t size, Tags... tags) 23 | { 24 | return Base::allocate(size, tags...); 25 | } 26 | 27 | template 28 | static void deallocate(std::size_t size, void* data, Tags... tags) 29 | { 30 | Base::deallocate(size, data, tags...); 31 | } 32 | }; 33 | 34 | } // namespace immer 35 | -------------------------------------------------------------------------------- /src/immer/heap/tags.hpp: -------------------------------------------------------------------------------- 1 | // 2 | // immer: immutable data structures for C++ 3 | // Copyright (C) 2016, 2017, 2018 Juan Pedro Bolivar Puente 4 | // 5 | // This software is distributed under the Boost Software License, Version 1.0. 6 | // See accompanying file LICENSE or copy at http://boost.org/LICENSE_1_0.txt 7 | // 8 | 9 | #pragma once 10 | 11 | namespace immer { 12 | 13 | struct norefs_tag {}; 14 | 15 | } // namespace immer 16 | -------------------------------------------------------------------------------- /src/immer/map_transient.hpp: -------------------------------------------------------------------------------- 1 | // 2 | // immer: immutable data structures for C++ 3 | // Copyright (C) 2016, 2017, 2018 Juan Pedro Bolivar Puente 4 | // 5 | // This software is distributed under the Boost Software License, Version 1.0. 6 | // See accompanying file LICENSE or copy at http://boost.org/LICENSE_1_0.txt 7 | // 8 | 9 | #pragma once 10 | 11 | #include 12 | #include 13 | 14 | #include 15 | 16 | namespace immer { 17 | 18 | /*! 19 | * **WORK IN PROGRESS** 20 | */ 21 | template , 24 | typename Equal = std::equal_to, 25 | typename MemoryPolicy = default_memory_policy, 26 | detail::hamts::bits_t B = default_bits> 27 | class map_transient; 28 | 29 | } // namespace immer 30 | -------------------------------------------------------------------------------- /src/immer/set_transient.hpp: -------------------------------------------------------------------------------- 1 | // 2 | // immer: immutable data structures for C++ 3 | // Copyright (C) 2016, 2017, 2018 Juan Pedro Bolivar Puente 4 | // 5 | // This software is distributed under the Boost Software License, Version 1.0. 6 | // See accompanying file LICENSE or copy at http://boost.org/LICENSE_1_0.txt 7 | // 8 | 9 | #pragma once 10 | 11 | #include 12 | #include 13 | 14 | #include 15 | 16 | namespace immer { 17 | 18 | /*! 19 | * **WORK IN PROGRESS** 20 | */ 21 | template , 23 | typename Equal = std::equal_to, 24 | typename MemoryPolicy = default_memory_policy, 25 | detail::hamts::bits_t B = default_bits> 26 | class set_transient; 27 | 28 | } // namespace immer 29 | -------------------------------------------------------------------------------- /src/leveldb/.gitignore: -------------------------------------------------------------------------------- 1 | build_config.mk 2 | *.a 3 | *.o 4 | *.dylib* 5 | *.so 6 | *.so.* 7 | *_test 8 | db_bench 9 | leveldbutil 10 | Release 11 | Debug 12 | Benchmark 13 | vs2010.* 14 | -------------------------------------------------------------------------------- /src/leveldb/.travis.yml: -------------------------------------------------------------------------------- 1 | language: cpp 2 | compiler: 3 | - clang 4 | - gcc 5 | os: 6 | - linux 7 | - osx 8 | sudo: false 9 | before_install: 10 | - echo $LANG 11 | - echo $LC_ALL 12 | script: 13 | - make -j 4 check 14 | -------------------------------------------------------------------------------- /src/leveldb/AUTHORS: -------------------------------------------------------------------------------- 1 | # Names should be added to this file like so: 2 | # Name or Organization 3 | 4 | Google Inc. 5 | 6 | # Initial version authors: 7 | Jeffrey Dean 8 | Sanjay Ghemawat 9 | 10 | # Partial list of contributors: 11 | Kevin Regan 12 | Johan Bilien 13 | -------------------------------------------------------------------------------- /src/leveldb/NEWS: -------------------------------------------------------------------------------- 1 | Release 1.2 2011-05-16 2 | ---------------------- 3 | 4 | Fixes for larger databases (tested up to one billion 100-byte entries, 5 | i.e., ~100GB). 6 | 7 | (1) Place hard limit on number of level-0 files. This fixes errors 8 | of the form "too many open files". 9 | 10 | (2) Fixed memtable management. Before the fix, a heavy write burst 11 | could cause unbounded memory usage. 12 | 13 | A fix for a logging bug where the reader would incorrectly complain 14 | about corruption. 15 | 16 | Allow public access to WriteBatch contents so that users can easily 17 | wrap a DB. 18 | -------------------------------------------------------------------------------- /src/leveldb/TODO: -------------------------------------------------------------------------------- 1 | ss 2 | - Stats 3 | 4 | db 5 | - Maybe implement DB::BulkDeleteForRange(start_key, end_key) 6 | that would blow away files whose ranges are entirely contained 7 | within [start_key..end_key]? For Chrome, deletion of obsolete 8 | object stores, etc. can be done in the background anyway, so 9 | probably not that important. 10 | - There have been requests for MultiGet. 11 | 12 | After a range is completely deleted, what gets rid of the 13 | corresponding files if we do no future changes to that range. Make 14 | the conditions for triggering compactions fire in more situations? 15 | -------------------------------------------------------------------------------- /src/leveldb/db/db_iter.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011 The LevelDB Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style license that can be 3 | // found in the LICENSE file. See the AUTHORS file for names of contributors. 4 | 5 | #ifndef STORAGE_LEVELDB_DB_DB_ITER_H_ 6 | #define STORAGE_LEVELDB_DB_DB_ITER_H_ 7 | 8 | #include 9 | #include "leveldb/db.h" 10 | #include "db/dbformat.h" 11 | 12 | namespace leveldb { 13 | 14 | class DBImpl; 15 | 16 | // Return a new iterator that converts internal keys (yielded by 17 | // "*internal_iter") that were live at the specified "sequence" number 18 | // into appropriate user keys. 19 | extern Iterator* NewDBIterator( 20 | DBImpl* db, 21 | const Comparator* user_key_comparator, 22 | Iterator* internal_iter, 23 | SequenceNumber sequence, 24 | uint32_t seed); 25 | 26 | } // namespace leveldb 27 | 28 | #endif // STORAGE_LEVELDB_DB_DB_ITER_H_ 29 | -------------------------------------------------------------------------------- /src/leveldb/helpers/memenv/memenv.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011 The LevelDB Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style license that can be 3 | // found in the LICENSE file. See the AUTHORS file for names of contributors. 4 | 5 | #ifndef STORAGE_LEVELDB_HELPERS_MEMENV_MEMENV_H_ 6 | #define STORAGE_LEVELDB_HELPERS_MEMENV_MEMENV_H_ 7 | 8 | namespace leveldb { 9 | 10 | class Env; 11 | 12 | // Returns a new environment that stores its data in memory and delegates 13 | // all non-file-storage tasks to base_env. The caller must delete the result 14 | // when it is no longer needed. 15 | // *base_env must remain live while the result is in use. 16 | Env* NewMemEnv(Env* base_env); 17 | 18 | } // namespace leveldb 19 | 20 | #endif // STORAGE_LEVELDB_HELPERS_MEMENV_MEMENV_H_ 21 | -------------------------------------------------------------------------------- /src/leveldb/port/README: -------------------------------------------------------------------------------- 1 | This directory contains interfaces and implementations that isolate the 2 | rest of the package from platform details. 3 | 4 | Code in the rest of the package includes "port.h" from this directory. 5 | "port.h" in turn includes a platform specific "port_.h" file 6 | that provides the platform specific implementation. 7 | 8 | See port_posix.h for an example of what must be provided in a platform 9 | specific header file. 10 | 11 | -------------------------------------------------------------------------------- /src/leveldb/port/port.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011 The LevelDB Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style license that can be 3 | // found in the LICENSE file. See the AUTHORS file for names of contributors. 4 | 5 | #ifndef STORAGE_LEVELDB_PORT_PORT_H_ 6 | #define STORAGE_LEVELDB_PORT_PORT_H_ 7 | 8 | #include 9 | 10 | // Include the appropriate platform specific file below. If you are 11 | // porting to a new platform, see "port_example.h" for documentation 12 | // of what the new port_.h file must provide. 13 | #if defined(LEVELDB_PLATFORM_POSIX) 14 | # include "port/port_posix.h" 15 | #elif defined(LEVELDB_PLATFORM_CHROMIUM) 16 | # include "port/port_chromium.h" 17 | #elif defined(LEVELDB_PLATFORM_WINDOWS) 18 | # include "port/port_win.h" 19 | #endif 20 | 21 | #endif // STORAGE_LEVELDB_PORT_PORT_H_ 22 | -------------------------------------------------------------------------------- /src/leveldb/port/win/stdint.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011 The LevelDB Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style license that can be 3 | // found in the LICENSE file. See the AUTHORS file for names of contributors. 4 | 5 | // MSVC didn't ship with this file until the 2010 version. 6 | 7 | #ifndef STORAGE_LEVELDB_PORT_WIN_STDINT_H_ 8 | #define STORAGE_LEVELDB_PORT_WIN_STDINT_H_ 9 | 10 | #if !defined(_MSC_VER) 11 | #error This file should only be included when compiling with MSVC. 12 | #endif 13 | 14 | // Define C99 equivalent types. 15 | typedef signed char int8_t; 16 | typedef signed short int16_t; 17 | typedef signed int int32_t; 18 | typedef signed long long int64_t; 19 | typedef unsigned char uint8_t; 20 | typedef unsigned short uint16_t; 21 | typedef unsigned int uint32_t; 22 | typedef unsigned long long uint64_t; 23 | 24 | #endif // STORAGE_LEVELDB_PORT_WIN_STDINT_H_ 25 | -------------------------------------------------------------------------------- /src/leveldb/util/filter_policy.cc: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 The LevelDB Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style license that can be 3 | // found in the LICENSE file. See the AUTHORS file for names of contributors. 4 | 5 | #include "leveldb/filter_policy.h" 6 | 7 | namespace leveldb { 8 | 9 | FilterPolicy::~FilterPolicy() { } 10 | 11 | } // namespace leveldb 12 | -------------------------------------------------------------------------------- /src/leveldb/util/hash.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011 The LevelDB Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style license that can be 3 | // found in the LICENSE file. See the AUTHORS file for names of contributors. 4 | // 5 | // Simple hash function used for internal data structures 6 | 7 | #ifndef STORAGE_LEVELDB_UTIL_HASH_H_ 8 | #define STORAGE_LEVELDB_UTIL_HASH_H_ 9 | 10 | #include 11 | #include 12 | 13 | namespace leveldb { 14 | 15 | extern uint32_t Hash(const char* data, size_t n, uint32_t seed); 16 | 17 | } 18 | 19 | #endif // STORAGE_LEVELDB_UTIL_HASH_H_ 20 | -------------------------------------------------------------------------------- /src/leveldb/util/options.cc: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011 The LevelDB Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style license that can be 3 | // found in the LICENSE file. See the AUTHORS file for names of contributors. 4 | 5 | #include "leveldb/options.h" 6 | 7 | #include "leveldb/comparator.h" 8 | #include "leveldb/env.h" 9 | 10 | namespace leveldb { 11 | 12 | Options::Options() 13 | : comparator(BytewiseComparator()), 14 | create_if_missing(false), 15 | error_if_exists(false), 16 | paranoid_checks(false), 17 | env(Env::Default()), 18 | info_log(NULL), 19 | write_buffer_size(4<<20), 20 | max_open_files(1000), 21 | block_cache(NULL), 22 | block_size(4096), 23 | block_restart_interval(16), 24 | max_file_size(2<<20), 25 | compression(kSnappyCompression), 26 | reuse_logs(false), 27 | filter_policy(NULL) { 28 | } 29 | 30 | } // namespace leveldb 31 | -------------------------------------------------------------------------------- /src/llmq/quorums_init.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2018-2019 The Dash Core developers 2 | // Copyright (c) 2021-2022 The Pigeoncoin Core developers 3 | // Distributed under the MIT/X11 software license, see the accompanying 4 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | #ifndef PIGEON_QUORUMS_INIT_H 7 | #define PIGEON_QUORUMS_INIT_H 8 | 9 | class CDBWrapper; 10 | class CEvoDB; 11 | class CScheduler; 12 | 13 | namespace llmq 14 | { 15 | 16 | // If true, we will connect to all new quorums and watch their communication 17 | static const bool DEFAULT_WATCH_QUORUMS = false; 18 | 19 | // Init/destroy LLMQ globals 20 | void InitLLMQSystem(CEvoDB& evoDb, CScheduler* scheduler, bool unitTests, bool fWipe = false); 21 | void DestroyLLMQSystem(); 22 | 23 | // Manage scheduled tasks, threads, listeners etc. 24 | void StartLLMQSystem(); 25 | void StopLLMQSystem(); 26 | void InterruptLLMQSystem(); 27 | } // namespace llmq 28 | 29 | #endif //PIGEON_QUORUMS_INIT_H 30 | -------------------------------------------------------------------------------- /src/masternode/masternode-utils.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014-2020 The Dash Core developers 2 | // Copyright (c) 2021-2022 The Pigeoncoin Core developers 3 | // Distributed under the MIT/X11 software license, see the accompanying 4 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | #ifndef MASTERNODE_UTILS_H 7 | #define MASTERNODE_UTILS_H 8 | 9 | #include "evo/deterministicmns.h" 10 | 11 | class CConnman; 12 | 13 | class CMasternodeUtils 14 | { 15 | public: 16 | static void ProcessMasternodeConnections(CConnman& connman); 17 | static void DoMaintenance(CConnman &connman); 18 | }; 19 | 20 | #endif//MASTERNODE_UTILS_H 21 | -------------------------------------------------------------------------------- /src/noui.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2013-2014 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_NOUI_H 6 | #define BITCOIN_NOUI_H 7 | 8 | extern void noui_connect(); 9 | 10 | #endif // BITCOIN_NOUI_H 11 | -------------------------------------------------------------------------------- /src/obj-test/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /src/obj/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /src/pow.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2010 Satoshi Nakamoto 2 | // Copyright (c) 2009-2015 The Bitcoin Core developers 3 | // Distributed under the MIT software license, see the accompanying 4 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | #ifndef BITCOIN_POW_H 7 | #define BITCOIN_POW_H 8 | 9 | #include "consensus/params.h" 10 | 11 | #include 12 | 13 | class CBlockHeader; 14 | class CBlockIndex; 15 | class uint256; 16 | 17 | unsigned int GetNextWorkRequired(const CBlockIndex* pindexLast, const CBlockHeader *pblock, const Consensus::Params&); 18 | unsigned int CalculateNextWorkRequired(const CBlockIndex* pindexLast, int64_t nFirstBlockTime, const Consensus::Params&); 19 | 20 | 21 | /** Check whether a block hash satisfies the proof-of-work requirement specified by nBits */ 22 | bool CheckProofOfWork(uint256 hash, unsigned int nBits, const Consensus::Params&); 23 | 24 | #endif // BITCOIN_POW_H 25 | -------------------------------------------------------------------------------- /src/qt/callback.h: -------------------------------------------------------------------------------- 1 | #ifndef BITCOIN_QT_CALLBACK_H 2 | #define BITCOIN_QT_CALLBACK_H 3 | 4 | #include 5 | 6 | class Callback : public QObject 7 | { 8 | Q_OBJECT 9 | public Q_SLOTS: 10 | virtual void call() = 0; 11 | }; 12 | 13 | template 14 | class FunctionCallback : public Callback 15 | { 16 | F f; 17 | 18 | public: 19 | FunctionCallback(F f_) : f(std::move(f_)) {} 20 | ~FunctionCallback() override {} 21 | void call() override { f(this); } 22 | }; 23 | 24 | template 25 | FunctionCallback* makeCallback(F f) 26 | { 27 | return new FunctionCallback(std::move(f)); 28 | } 29 | 30 | #endif // BITCOIN_QT_CALLBACK_H 31 | -------------------------------------------------------------------------------- /src/qt/coincontroltreewidget.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2014 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_QT_COINCONTROLTREEWIDGET_H 6 | #define BITCOIN_QT_COINCONTROLTREEWIDGET_H 7 | 8 | #include 9 | #include 10 | 11 | class CoinControlTreeWidget : public QTreeWidget 12 | { 13 | Q_OBJECT 14 | 15 | public: 16 | explicit CoinControlTreeWidget(QWidget *parent = 0); 17 | 18 | protected: 19 | virtual void keyPressEvent(QKeyEvent *event) override; 20 | }; 21 | 22 | #endif // BITCOIN_QT_COINCONTROLTREEWIDGET_H 23 | -------------------------------------------------------------------------------- /src/qt/macos_appnap.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2018 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_QT_MACOS_APPNAP_H 6 | #define BITCOIN_QT_MACOS_APPNAP_H 7 | 8 | #include 9 | 10 | class CAppNapInhibitor final 11 | { 12 | public: 13 | explicit CAppNapInhibitor(); 14 | ~CAppNapInhibitor(); 15 | 16 | void disableAppNap(); 17 | void enableAppNap(); 18 | 19 | private: 20 | class CAppNapImpl; 21 | std::unique_ptr impl; 22 | }; 23 | 24 | #endif // BITCOIN_QT_MACOS_APPNAP_H 25 | -------------------------------------------------------------------------------- /src/qt/openuridialog.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2015 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_QT_OPENURIDIALOG_H 6 | #define BITCOIN_QT_OPENURIDIALOG_H 7 | 8 | #include 9 | 10 | namespace Ui { 11 | class OpenURIDialog; 12 | } 13 | 14 | class OpenURIDialog : public QDialog 15 | { 16 | Q_OBJECT 17 | 18 | public: 19 | explicit OpenURIDialog(QWidget *parent); 20 | ~OpenURIDialog(); 21 | 22 | QString getURI(); 23 | 24 | protected Q_SLOTS: 25 | void accept(); 26 | 27 | private Q_SLOTS: 28 | void on_selectFileButton_clicked(); 29 | 30 | private: 31 | Ui::OpenURIDialog *ui; 32 | }; 33 | 34 | #endif // BITCOIN_QT_OPENURIDIALOG_H 35 | -------------------------------------------------------------------------------- /src/qt/qvaluecombobox.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2015 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "qvaluecombobox.h" 6 | 7 | QValueComboBox::QValueComboBox(QWidget *parent) : 8 | QComboBox(parent), role(Qt::UserRole) 9 | { 10 | connect(this, SIGNAL(currentIndexChanged(int)), this, SLOT(handleSelectionChanged(int))); 11 | } 12 | 13 | QVariant QValueComboBox::value() const 14 | { 15 | return itemData(currentIndex(), role); 16 | } 17 | 18 | void QValueComboBox::setValue(const QVariant &value) 19 | { 20 | setCurrentIndex(findData(value, role)); 21 | } 22 | 23 | void QValueComboBox::setRole(int _role) 24 | { 25 | this->role = _role; 26 | } 27 | 28 | void QValueComboBox::handleSelectionChanged(int idx) 29 | { 30 | Q_EMIT valueChanged(); 31 | } 32 | -------------------------------------------------------------------------------- /src/qt/res/css/trad.css: -------------------------------------------------------------------------------- 1 | /* MODAL OVERLAY */ 2 | 3 | QWidget#bgWidget { /* The 'frame' overlaying the overview-page */ 4 | background: rgba(0,0,0,220); 5 | } 6 | 7 | QWidget#contentWidget { /* The actual content with the text/buttons/etc... */ 8 | background: rgba(255,255,255,240); 9 | border-radius: 6px; 10 | } 11 | 12 | /* OVERVIEW SCREEN */ 13 | 14 | QWidget .QFrame#frame .QLabel#labelWalletStatus, /* Wallet Sync Status */ 15 | QWidget .QFrame#framePrivateSend .QLabel#labelPrivateSendSyncStatus, /* PrivateSend Sync Status */ 16 | QWidget .QFrame#frame_2 .QLabel#labelTransactionsStatus { /* Recent Transactions Sync Status */ 17 | color: red; 18 | } 19 | 20 | /* SEND DIALOG */ 21 | 22 | QDialog#SendCoinsDialog QLabel#labelBalance { 23 | margin-left:0px; 24 | padding-left:0px; 25 | } 26 | 27 | QDialog#SendCoinsDialog .QFrame#frameCoinControl .QLabel#labelCoinControlInsuffFunds { /* Insufficient Funds Label */ 28 | color: red; 29 | } 30 | -------------------------------------------------------------------------------- /src/qt/res/icons/about.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/about.png -------------------------------------------------------------------------------- /src/qt/res/icons/about_qt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/about_qt.png -------------------------------------------------------------------------------- /src/qt/res/icons/add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/add.png -------------------------------------------------------------------------------- /src/qt/res/icons/address-book.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/address-book.png -------------------------------------------------------------------------------- /src/qt/res/icons/bitcoin.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/bitcoin.icns -------------------------------------------------------------------------------- /src/qt/res/icons/bitcoin.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/bitcoin.ico -------------------------------------------------------------------------------- /src/qt/res/icons/bitcoin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/bitcoin.png -------------------------------------------------------------------------------- /src/qt/res/icons/bitcoin_testnet.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/bitcoin_testnet.ico -------------------------------------------------------------------------------- /src/qt/res/icons/bitcoin_testnet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/bitcoin_testnet.png -------------------------------------------------------------------------------- /src/qt/res/icons/browse.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/browse.png -------------------------------------------------------------------------------- /src/qt/res/icons/chevron.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/chevron.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/clock1.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/clock2.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/clock3.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/clock4.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/clock5.png -------------------------------------------------------------------------------- /src/qt/res/icons/configure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/configure.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect0_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/connect0_16.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect1_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/connect1_16.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect2_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/connect2_16.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect3_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/connect3_16.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect4_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/connect4_16.png -------------------------------------------------------------------------------- /src/qt/res/icons/console_remove.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/console_remove.png -------------------------------------------------------------------------------- /src/qt/res/icons/debugwindow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/debugwindow.png -------------------------------------------------------------------------------- /src/qt/res/icons/edit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/edit.png -------------------------------------------------------------------------------- /src/qt/res/icons/editcopy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/editcopy.png -------------------------------------------------------------------------------- /src/qt/res/icons/editpaste.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/editpaste.png -------------------------------------------------------------------------------- /src/qt/res/icons/export.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/export.png -------------------------------------------------------------------------------- /src/qt/res/icons/eye.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/eye.png -------------------------------------------------------------------------------- /src/qt/res/icons/eye_minus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/eye_minus.png -------------------------------------------------------------------------------- /src/qt/res/icons/eye_plus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/eye_plus.png -------------------------------------------------------------------------------- /src/qt/res/icons/filesave.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/filesave.png -------------------------------------------------------------------------------- /src/qt/res/icons/fontbigger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/fontbigger.png -------------------------------------------------------------------------------- /src/qt/res/icons/fontsmaller.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/fontsmaller.png -------------------------------------------------------------------------------- /src/qt/res/icons/hd_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/hd_disabled.png -------------------------------------------------------------------------------- /src/qt/res/icons/hd_enabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/hd_enabled.png -------------------------------------------------------------------------------- /src/qt/res/icons/key.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/key.png -------------------------------------------------------------------------------- /src/qt/res/icons/lock_closed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/lock_closed.png -------------------------------------------------------------------------------- /src/qt/res/icons/lock_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/lock_open.png -------------------------------------------------------------------------------- /src/qt/res/icons/network_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/network_disabled.png -------------------------------------------------------------------------------- /src/qt/res/icons/notsynced.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/notsynced.png -------------------------------------------------------------------------------- /src/qt/res/icons/quit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/quit.png -------------------------------------------------------------------------------- /src/qt/res/icons/receive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/receive.png -------------------------------------------------------------------------------- /src/qt/res/icons/remove.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/remove.png -------------------------------------------------------------------------------- /src/qt/res/icons/send.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/send.png -------------------------------------------------------------------------------- /src/qt/res/icons/synced.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/synced.png -------------------------------------------------------------------------------- /src/qt/res/icons/transaction0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/transaction0.png -------------------------------------------------------------------------------- /src/qt/res/icons/transaction2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/transaction2.png -------------------------------------------------------------------------------- /src/qt/res/icons/transaction_abandoned.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/transaction_abandoned.png -------------------------------------------------------------------------------- /src/qt/res/icons/transaction_conflicted.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/transaction_conflicted.png -------------------------------------------------------------------------------- /src/qt/res/icons/tx_inout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/tx_inout.png -------------------------------------------------------------------------------- /src/qt/res/icons/tx_input.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/tx_input.png -------------------------------------------------------------------------------- /src/qt/res/icons/tx_mined.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/tx_mined.png -------------------------------------------------------------------------------- /src/qt/res/icons/tx_output.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/tx_output.png -------------------------------------------------------------------------------- /src/qt/res/icons/verify.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/verify.png -------------------------------------------------------------------------------- /src/qt/res/icons/warning.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/icons/warning.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_down.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_down_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_down_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_down_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_down_light.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_down_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_down_small.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_left_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_left_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_left_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_left_light.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_left_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_left_small.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_light_down_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_light_down_hover.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_light_down_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_light_down_normal.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_light_left_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_light_left_hover.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_light_left_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_light_left_normal.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_light_right_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_light_right_hover.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_light_right_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_light_right_normal.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_light_up_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_light_up_hover.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_light_up_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_light_up_normal.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_right_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_right_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_right_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_right_light.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_right_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_right_small.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_up_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_up_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_up_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_up_light.png -------------------------------------------------------------------------------- /src/qt/res/images/arrow_up_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/arrow_up_small.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_checked_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_checked_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_checked_disabled_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_checked_disabled_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_checked_disabled_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_checked_disabled_light.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_checked_hover_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_checked_hover_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_checked_hover_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_checked_hover_light.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_checked_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_checked_light.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_normal_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_normal_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_normal_disabled_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_normal_disabled_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_normal_disabled_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_normal_disabled_light.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_normal_hover_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_normal_hover_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_normal_hover_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_normal_hover_light.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_normal_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_normal_light.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_partly_checked_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_partly_checked_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_partly_checked_disabled_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_partly_checked_disabled_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_partly_checked_disabled_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_partly_checked_disabled_light.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_partly_checked_hover_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_partly_checked_hover_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_partly_checked_hover_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_partly_checked_hover_light.png -------------------------------------------------------------------------------- /src/qt/res/images/checkbox_partly_checked_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checkbox_partly_checked_light.png -------------------------------------------------------------------------------- /src/qt/res/images/checked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/checked.png -------------------------------------------------------------------------------- /src/qt/res/images/dash_logo_toolbar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/dash_logo_toolbar.png -------------------------------------------------------------------------------- /src/qt/res/images/dash_logo_toolbar_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/dash_logo_toolbar_blue.png -------------------------------------------------------------------------------- /src/qt/res/images/pigeon_logo_horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/pigeon_logo_horizontal.png -------------------------------------------------------------------------------- /src/qt/res/images/pigeon_logo_toolbar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/pigeon_logo_toolbar.png -------------------------------------------------------------------------------- /src/qt/res/images/pigeon_logo_toolbar_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/pigeon_logo_toolbar_blue.png -------------------------------------------------------------------------------- /src/qt/res/images/qtreeview_selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/qtreeview_selected.png -------------------------------------------------------------------------------- /src/qt/res/images/radio_checked_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/radio_checked_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/radio_checked_disabled_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/radio_checked_disabled_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/radio_checked_disabled_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/radio_checked_disabled_light.png -------------------------------------------------------------------------------- /src/qt/res/images/radio_checked_hover_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/radio_checked_hover_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/radio_checked_hover_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/radio_checked_hover_light.png -------------------------------------------------------------------------------- /src/qt/res/images/radio_checked_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/radio_checked_light.png -------------------------------------------------------------------------------- /src/qt/res/images/radio_normal_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/radio_normal_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/radio_normal_disabled_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/radio_normal_disabled_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/radio_normal_disabled_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/radio_normal_disabled_light.png -------------------------------------------------------------------------------- /src/qt/res/images/radio_normal_hover_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/radio_normal_hover_dark.png -------------------------------------------------------------------------------- /src/qt/res/images/radio_normal_hover_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/radio_normal_hover_light.png -------------------------------------------------------------------------------- /src/qt/res/images/radio_normal_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/radio_normal_light.png -------------------------------------------------------------------------------- /src/qt/res/images/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/splash.png -------------------------------------------------------------------------------- /src/qt/res/images/unchecked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/images/unchecked.png -------------------------------------------------------------------------------- /src/qt/res/movies/makespinner.sh: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2014-2015 The Bitcoin Core developers 2 | # Distributed under the MIT software license, see the accompanying 3 | # file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | FRAMEDIR=$(dirname $0) 6 | for i in {0..35} 7 | do 8 | frame=$(printf "%03d" $i) 9 | angle=$(($i * 10)) 10 | convert $FRAMEDIR/../src/spinner.png -background "rgba(0,0,0,0.0)" -distort SRT $angle $FRAMEDIR/spinner-$frame.png 11 | done 12 | -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-000.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-000.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-001.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-001.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-002.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-002.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-003.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-003.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-004.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-004.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-005.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-005.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-006.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-006.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-007.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-007.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-008.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-008.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-009.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-009.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-010.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-010.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-011.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-011.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-012.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-012.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-013.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-013.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-014.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-014.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-015.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-015.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-016.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-016.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-017.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-017.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-018.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-018.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-019.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-019.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-020.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-020.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-021.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-021.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-022.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-022.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-023.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-023.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-024.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-025.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-025.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-026.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-026.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-027.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-027.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-028.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-028.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-029.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-029.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-030.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-030.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-031.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-031.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-032.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-032.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-033.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-033.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-034.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-034.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-035.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/movies/spinner-035.png -------------------------------------------------------------------------------- /src/qt/res/src/spinner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/qt/res/src/spinner.png -------------------------------------------------------------------------------- /src/qt/res/src/tx_in.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /src/qt/test/compattests.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2016 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "paymentrequestplus.h" // this includes protobuf's port.h which defines its own bswap macos 6 | 7 | #include "compattests.h" 8 | 9 | #include "compat/byteswap.h" 10 | 11 | void CompatTests::bswapTests() 12 | { 13 | // Sibling in bitcoin/src/test/bswap_tests.cpp 14 | uint16_t u1 = 0x1234; 15 | uint32_t u2 = 0x56789abc; 16 | uint64_t u3 = 0xdef0123456789abc; 17 | uint16_t e1 = 0x3412; 18 | uint32_t e2 = 0xbc9a7856; 19 | uint64_t e3 = 0xbc9a78563412f0de; 20 | QVERIFY(bswap_16(u1) == e1); 21 | QVERIFY(bswap_32(u2) == e2); 22 | QVERIFY(bswap_64(u3) == e3); 23 | } 24 | -------------------------------------------------------------------------------- /src/qt/test/compattests.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2015 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_QT_TEST_COMPATTESTS_H 6 | #define BITCOIN_QT_TEST_COMPATTESTS_H 7 | 8 | #include 9 | #include 10 | 11 | class CompatTests : public QObject 12 | { 13 | Q_OBJECT 14 | 15 | private Q_SLOTS: 16 | void bswapTests(); 17 | }; 18 | 19 | #endif // BITCOIN_QT_TEST_COMPATTESTS_H 20 | -------------------------------------------------------------------------------- /src/qt/test/rpcnestedtests.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2016 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_QT_TEST_RPC_NESTED_TESTS_H 6 | #define BITCOIN_QT_TEST_RPC_NESTED_TESTS_H 7 | 8 | #include 9 | #include 10 | 11 | #include "txdb.h" 12 | #include "txmempool.h" 13 | 14 | class RPCNestedTests : public QObject 15 | { 16 | Q_OBJECT 17 | 18 | private Q_SLOTS: 19 | void rpcNestedTests(); 20 | 21 | private: 22 | CCoinsViewDB *pcoinsdbview; 23 | }; 24 | 25 | #endif // BITCOIN_QT_TEST_RPC_NESTED_TESTS_H 26 | -------------------------------------------------------------------------------- /src/qt/test/trafficgraphdatatests.h: -------------------------------------------------------------------------------- 1 | #ifndef TRAFFICGRAPHDATATESTS_H 2 | #define TRAFFICGRAPHDATATESTS_H 3 | 4 | #include 5 | #include 6 | 7 | class TrafficGraphDataTests : public QObject 8 | { 9 | Q_OBJECT 10 | 11 | private Q_SLOTS: 12 | void simpleCurrentSampleQueueTests(); 13 | void accumulationCurrentSampleQueueTests(); 14 | void getRangeTests(); 15 | void switchRangeTests(); 16 | void clearTests(); 17 | void averageBandwidthTest(); 18 | void averageBandwidthEvery2EmptyTest(); 19 | 20 | }; 21 | 22 | 23 | #endif // TRAFFICGRAPHDATATESTS_H 24 | -------------------------------------------------------------------------------- /src/qt/test/uritests.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2015 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_QT_TEST_URITESTS_H 6 | #define BITCOIN_QT_TEST_URITESTS_H 7 | 8 | #include 9 | #include 10 | 11 | class URITests : public QObject 12 | { 13 | Q_OBJECT 14 | 15 | private Q_SLOTS: 16 | void uriTests(); 17 | }; 18 | 19 | #endif // BITCOIN_QT_TEST_URITESTS_H 20 | -------------------------------------------------------------------------------- /src/qt/test/wallettests.h: -------------------------------------------------------------------------------- 1 | #ifndef BITCOIN_QT_TEST_WALLETTESTS_H 2 | #define BITCOIN_QT_TEST_WALLETTESTS_H 3 | 4 | #include 5 | #include 6 | 7 | class WalletTests : public QObject 8 | { 9 | Q_OBJECT 10 | 11 | private Q_SLOTS: 12 | void walletTests(); 13 | }; 14 | 15 | #endif // BITCOIN_QT_TEST_WALLETTESTS_H 16 | -------------------------------------------------------------------------------- /src/qt/transactiondesc.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2014 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_QT_TRANSACTIONDESC_H 6 | #define BITCOIN_QT_TRANSACTIONDESC_H 7 | 8 | #include 9 | #include 10 | 11 | class TransactionRecord; 12 | 13 | class CWallet; 14 | class CWalletTx; 15 | 16 | /** Provide a human-readable extended HTML description of a transaction. 17 | */ 18 | class TransactionDesc: public QObject 19 | { 20 | Q_OBJECT 21 | 22 | public: 23 | static QString toHTML(CWallet *wallet, CWalletTx &wtx, TransactionRecord *rec, int unit); 24 | 25 | private: 26 | TransactionDesc() {} 27 | 28 | static QString FormatTxStatus(const CWalletTx& wtx); 29 | }; 30 | 31 | #endif // BITCOIN_QT_TRANSACTIONDESC_H 32 | -------------------------------------------------------------------------------- /src/qt/transactiondescdialog.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2014 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_QT_TRANSACTIONDESCDIALOG_H 6 | #define BITCOIN_QT_TRANSACTIONDESCDIALOG_H 7 | 8 | #include 9 | 10 | namespace Ui { 11 | class TransactionDescDialog; 12 | } 13 | 14 | QT_BEGIN_NAMESPACE 15 | class QModelIndex; 16 | QT_END_NAMESPACE 17 | 18 | /** Dialog showing transaction details. */ 19 | class TransactionDescDialog : public QDialog 20 | { 21 | Q_OBJECT 22 | 23 | public: 24 | explicit TransactionDescDialog(const QModelIndex &idx, QWidget *parent = 0); 25 | ~TransactionDescDialog(); 26 | 27 | private: 28 | Ui::TransactionDescDialog *ui; 29 | }; 30 | 31 | #endif // BITCOIN_QT_TRANSACTIONDESCDIALOG_H 32 | -------------------------------------------------------------------------------- /src/reverse_iterator.h: -------------------------------------------------------------------------------- 1 | // Taken from https://gist.github.com/arvidsson/7231973 2 | 3 | #ifndef BITCOIN_REVERSE_ITERATOR_H 4 | #define BITCOIN_REVERSE_ITERATOR_H 5 | 6 | /** 7 | * Template used for reverse iteration in C++11 range-based for loops. 8 | * 9 | * std::vector v = {1, 2, 3, 4, 5}; 10 | * for (auto x : reverse_iterate(v)) 11 | * std::cout << x << " "; 12 | */ 13 | 14 | template 15 | class reverse_range 16 | { 17 | T &m_x; 18 | 19 | public: 20 | reverse_range(T &x) : m_x(x) {} 21 | 22 | auto begin() const -> decltype(this->m_x.rbegin()) 23 | { 24 | return m_x.rbegin(); 25 | } 26 | 27 | auto end() const -> decltype(this->m_x.rend()) 28 | { 29 | return m_x.rend(); 30 | } 31 | }; 32 | 33 | template 34 | reverse_range reverse_iterate(T &x) 35 | { 36 | return reverse_range(x); 37 | } 38 | 39 | #endif // BITCOIN_REVERSE_ITERATOR_H 40 | -------------------------------------------------------------------------------- /src/reverselock.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_REVERSELOCK_H 6 | #define BITCOIN_REVERSELOCK_H 7 | 8 | /** 9 | * An RAII-style reverse lock. Unlocks on construction and locks on destruction. 10 | */ 11 | template 12 | class reverse_lock 13 | { 14 | public: 15 | 16 | explicit reverse_lock(Lock& _lock) : lock(_lock) { 17 | _lock.unlock(); 18 | _lock.swap(templock); 19 | } 20 | 21 | ~reverse_lock() { 22 | templock.lock(); 23 | templock.swap(lock); 24 | } 25 | 26 | private: 27 | reverse_lock(reverse_lock const&); 28 | reverse_lock& operator=(reverse_lock const&); 29 | 30 | Lock& lock; 31 | Lock templock; 32 | }; 33 | 34 | #endif // BITCOIN_REVERSELOCK_H 35 | -------------------------------------------------------------------------------- /src/rpc/mining.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2017 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_RPC_MINING_H 6 | #define BITCOIN_RPC_MINING_H 7 | 8 | #include "script/script.h" 9 | 10 | #include 11 | 12 | /** Generate blocks (mine) */ 13 | UniValue generateBlocks(std::shared_ptr coinbaseScript, int nGenerate, uint64_t nMaxTries, bool keepScript); 14 | 15 | /** Check bounds on a command line confirm target */ 16 | unsigned int ParseConfirmTarget(const UniValue& value); 17 | 18 | #endif 19 | -------------------------------------------------------------------------------- /src/saltedhasher.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2019 The Dash Core developers 2 | // Copyright (c) 2021-2022 The Pigeoncoin Core developers 3 | // Distributed under the MIT software license, see the accompanying 4 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | #include "saltedhasher.h" 7 | #include "random.h" 8 | 9 | #include 10 | 11 | SaltedHasherBase::SaltedHasherBase() : k0(GetRand(std::numeric_limits::max())), k1(GetRand(std::numeric_limits::max())) {} 12 | 13 | SaltedHasherBase StaticSaltedHasher::s; 14 | -------------------------------------------------------------------------------- /src/secp256k1/.gitignore: -------------------------------------------------------------------------------- 1 | bench_inv 2 | bench_ecdh 3 | bench_sign 4 | bench_verify 5 | bench_schnorr_verify 6 | bench_recover 7 | bench_internal 8 | tests 9 | exhaustive_tests 10 | gen_context 11 | *.exe 12 | *.so 13 | *.a 14 | !.gitignore 15 | 16 | Makefile 17 | configure 18 | .libs/ 19 | Makefile.in 20 | aclocal.m4 21 | autom4te.cache/ 22 | config.log 23 | config.status 24 | *.tar.gz 25 | *.la 26 | libtool 27 | .deps/ 28 | .dirstamp 29 | *.lo 30 | *.o 31 | *~ 32 | src/libsecp256k1-config.h 33 | src/libsecp256k1-config.h.in 34 | src/ecmult_static_context.h 35 | build-aux/config.guess 36 | build-aux/config.sub 37 | build-aux/depcomp 38 | build-aux/install-sh 39 | build-aux/ltmain.sh 40 | build-aux/m4/libtool.m4 41 | build-aux/m4/lt~obsolete.m4 42 | build-aux/m4/ltoptions.m4 43 | build-aux/m4/ltsugar.m4 44 | build-aux/m4/ltversion.m4 45 | build-aux/missing 46 | build-aux/compile 47 | build-aux/test-driver 48 | src/stamp-h1 49 | libsecp256k1.pc 50 | -------------------------------------------------------------------------------- /src/secp256k1/TODO: -------------------------------------------------------------------------------- 1 | * Unit tests for fieldelem/groupelem, including ones intended to 2 | trigger fieldelem's boundary cases. 3 | * Complete constant-time operations for signing/keygen 4 | -------------------------------------------------------------------------------- /src/secp256k1/autogen.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | autoreconf -if --warnings=all 4 | -------------------------------------------------------------------------------- /src/secp256k1/libsecp256k1.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libsecp256k1 7 | Description: Optimized C library for EC operations on curve secp256k1 8 | URL: https://github.com/bitcoin-core/secp256k1 9 | Version: @PACKAGE_VERSION@ 10 | Cflags: -I${includedir} 11 | Libs.private: @SECP_LIBS@ 12 | Libs: -L${libdir} -lsecp256k1 13 | 14 | -------------------------------------------------------------------------------- /src/secp256k1/obj/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/secp256k1/obj/.gitignore -------------------------------------------------------------------------------- /src/secp256k1/src/ecmult_const.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * Copyright (c) 2015 Andrew Poelstra * 3 | * Distributed under the MIT software license, see the accompanying * 4 | * file COPYING or http://www.opensource.org/licenses/mit-license.php.* 5 | **********************************************************************/ 6 | 7 | #ifndef _SECP256K1_ECMULT_CONST_ 8 | #define _SECP256K1_ECMULT_CONST_ 9 | 10 | #include "scalar.h" 11 | #include "group.h" 12 | 13 | static void secp256k1_ecmult_const(secp256k1_gej *r, const secp256k1_ge *a, const secp256k1_scalar *q); 14 | 15 | #endif 16 | -------------------------------------------------------------------------------- /src/secp256k1/src/java/org_bitcoin_Secp256k1Context.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include "org_bitcoin_Secp256k1Context.h" 4 | #include "include/secp256k1.h" 5 | 6 | SECP256K1_API jlong JNICALL Java_org_bitcoin_Secp256k1Context_secp256k1_1init_1context 7 | (JNIEnv* env, jclass classObject) 8 | { 9 | secp256k1_context *ctx = secp256k1_context_create(SECP256K1_CONTEXT_SIGN | SECP256K1_CONTEXT_VERIFY); 10 | 11 | (void)classObject;(void)env; 12 | 13 | return (uintptr_t)ctx; 14 | } 15 | 16 | -------------------------------------------------------------------------------- /src/secp256k1/src/java/org_bitcoin_Secp256k1Context.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include 3 | #include "include/secp256k1.h" 4 | /* Header for class org_bitcoin_Secp256k1Context */ 5 | 6 | #ifndef _Included_org_bitcoin_Secp256k1Context 7 | #define _Included_org_bitcoin_Secp256k1Context 8 | #ifdef __cplusplus 9 | extern "C" { 10 | #endif 11 | /* 12 | * Class: org_bitcoin_Secp256k1Context 13 | * Method: secp256k1_init_context 14 | * Signature: ()J 15 | */ 16 | SECP256K1_API jlong JNICALL Java_org_bitcoin_Secp256k1Context_secp256k1_1init_1context 17 | (JNIEnv *, jclass); 18 | 19 | #ifdef __cplusplus 20 | } 21 | #endif 22 | #endif 23 | -------------------------------------------------------------------------------- /src/secp256k1/src/modules/ecdh/Makefile.am.include: -------------------------------------------------------------------------------- 1 | include_HEADERS += include/secp256k1_ecdh.h 2 | noinst_HEADERS += src/modules/ecdh/main_impl.h 3 | noinst_HEADERS += src/modules/ecdh/tests_impl.h 4 | if USE_BENCHMARK 5 | noinst_PROGRAMS += bench_ecdh 6 | bench_ecdh_SOURCES = src/bench_ecdh.c 7 | bench_ecdh_LDADD = libsecp256k1.la $(SECP_LIBS) $(COMMON_LIB) 8 | endif 9 | -------------------------------------------------------------------------------- /src/secp256k1/src/modules/recovery/Makefile.am.include: -------------------------------------------------------------------------------- 1 | include_HEADERS += include/secp256k1_recovery.h 2 | noinst_HEADERS += src/modules/recovery/main_impl.h 3 | noinst_HEADERS += src/modules/recovery/tests_impl.h 4 | if USE_BENCHMARK 5 | noinst_PROGRAMS += bench_recover 6 | bench_recover_SOURCES = src/bench_recover.c 7 | bench_recover_LDADD = libsecp256k1.la $(SECP_LIBS) $(COMMON_LIB) 8 | endif 9 | -------------------------------------------------------------------------------- /src/secp256k1/src/num_gmp.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * Copyright (c) 2013, 2014 Pieter Wuille * 3 | * Distributed under the MIT software license, see the accompanying * 4 | * file COPYING or http://www.opensource.org/licenses/mit-license.php.* 5 | **********************************************************************/ 6 | 7 | #ifndef _SECP256K1_NUM_REPR_ 8 | #define _SECP256K1_NUM_REPR_ 9 | 10 | #include 11 | 12 | #define NUM_LIMBS ((256+GMP_NUMB_BITS-1)/GMP_NUMB_BITS) 13 | 14 | typedef struct { 15 | mp_limb_t data[2*NUM_LIMBS]; 16 | int neg; 17 | int limbs; 18 | } secp256k1_num; 19 | 20 | #endif 21 | -------------------------------------------------------------------------------- /src/secp256k1/src/num_impl.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * Copyright (c) 2013, 2014 Pieter Wuille * 3 | * Distributed under the MIT software license, see the accompanying * 4 | * file COPYING or http://www.opensource.org/licenses/mit-license.php.* 5 | **********************************************************************/ 6 | 7 | #ifndef _SECP256K1_NUM_IMPL_H_ 8 | #define _SECP256K1_NUM_IMPL_H_ 9 | 10 | #if defined HAVE_CONFIG_H 11 | #include "libsecp256k1-config.h" 12 | #endif 13 | 14 | #include "num.h" 15 | 16 | #if defined(USE_NUM_GMP) 17 | #include "num_gmp_impl.h" 18 | #elif defined(USE_NUM_NONE) 19 | /* Nothing. */ 20 | #else 21 | #error "Please select num implementation" 22 | #endif 23 | 24 | #endif 25 | -------------------------------------------------------------------------------- /src/secp256k1/src/scalar_4x64.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * Copyright (c) 2014 Pieter Wuille * 3 | * Distributed under the MIT software license, see the accompanying * 4 | * file COPYING or http://www.opensource.org/licenses/mit-license.php.* 5 | **********************************************************************/ 6 | 7 | #ifndef _SECP256K1_SCALAR_REPR_ 8 | #define _SECP256K1_SCALAR_REPR_ 9 | 10 | #include 11 | 12 | /** A scalar modulo the group order of the secp256k1 curve. */ 13 | typedef struct { 14 | uint64_t d[4]; 15 | } secp256k1_scalar; 16 | 17 | #define SECP256K1_SCALAR_CONST(d7, d6, d5, d4, d3, d2, d1, d0) {{((uint64_t)(d1)) << 32 | (d0), ((uint64_t)(d3)) << 32 | (d2), ((uint64_t)(d5)) << 32 | (d4), ((uint64_t)(d7)) << 32 | (d6)}} 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /src/secp256k1/src/scalar_8x32.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * Copyright (c) 2014 Pieter Wuille * 3 | * Distributed under the MIT software license, see the accompanying * 4 | * file COPYING or http://www.opensource.org/licenses/mit-license.php.* 5 | **********************************************************************/ 6 | 7 | #ifndef _SECP256K1_SCALAR_REPR_ 8 | #define _SECP256K1_SCALAR_REPR_ 9 | 10 | #include 11 | 12 | /** A scalar modulo the group order of the secp256k1 curve. */ 13 | typedef struct { 14 | uint32_t d[8]; 15 | } secp256k1_scalar; 16 | 17 | #define SECP256K1_SCALAR_CONST(d7, d6, d5, d4, d3, d2, d1, d0) {{(d0), (d1), (d2), (d3), (d4), (d5), (d6), (d7)}} 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /src/secp256k1/src/scalar_low.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * Copyright (c) 2015 Andrew Poelstra * 3 | * Distributed under the MIT software license, see the accompanying * 4 | * file COPYING or http://www.opensource.org/licenses/mit-license.php.* 5 | **********************************************************************/ 6 | 7 | #ifndef _SECP256K1_SCALAR_REPR_ 8 | #define _SECP256K1_SCALAR_REPR_ 9 | 10 | #include 11 | 12 | /** A scalar modulo the group order of the secp256k1 curve. */ 13 | typedef uint32_t secp256k1_scalar; 14 | 15 | #endif 16 | -------------------------------------------------------------------------------- /src/support/cleanse.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2010 Satoshi Nakamoto 2 | // Copyright (c) 2009-2015 The Bitcoin Core developers 3 | // Distributed under the MIT software license, see the accompanying 4 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | #ifndef BITCOIN_SUPPORT_CLEANSE_H 7 | #define BITCOIN_SUPPORT_CLEANSE_H 8 | 9 | #include 10 | 11 | // Attempt to overwrite data in the specified memory span. 12 | void memory_cleanse(void *ptr, size_t len); 13 | 14 | #endif // BITCOIN_SUPPORT_CLEANSE_H 15 | -------------------------------------------------------------------------------- /src/test/bswap_tests.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2016 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "compat/byteswap.h" 6 | #include "test/test_pigeon.h" 7 | 8 | #include 9 | 10 | BOOST_FIXTURE_TEST_SUITE(bswap_tests, BasicTestingSetup) 11 | 12 | BOOST_AUTO_TEST_CASE(bswap_tests) 13 | { 14 | // Sibling in bitcoin/src/qt/test/compattests.cpp 15 | uint16_t u1 = 0x1234; 16 | uint32_t u2 = 0x56789abc; 17 | uint64_t u3 = 0xdef0123456789abc; 18 | uint16_t e1 = 0x3412; 19 | uint32_t e2 = 0xbc9a7856; 20 | uint64_t e3 = 0xbc9a78563412f0de; 21 | BOOST_CHECK(bswap_16(u1) == e1); 22 | BOOST_CHECK(bswap_32(u2) == e2); 23 | BOOST_CHECK(bswap_64(u3) == e3); 24 | } 25 | 26 | BOOST_AUTO_TEST_SUITE_END() 27 | -------------------------------------------------------------------------------- /src/test/data/README.md: -------------------------------------------------------------------------------- 1 | Description 2 | ------------ 3 | 4 | This directory contains data-driven tests for various aspects of Pigeon. 5 | 6 | License 7 | -------- 8 | 9 | The data files in this directory are distributed under the MIT software 10 | license, see the accompanying file COPYING or 11 | http://www.opensource.org/licenses/mit-license.php. 12 | 13 | -------------------------------------------------------------------------------- /src/test/data/base58_encode_decode.json: -------------------------------------------------------------------------------- 1 | [ 2 | ["", ""], 3 | ["61", "2g"], 4 | ["626262", "a3gV"], 5 | ["636363", "aPEr"], 6 | ["73696d706c792061206c6f6e6720737472696e67", "2cFupjhnEsSn59qHXstmK2ffpLv2"], 7 | ["00eb15231dfceb60925886b67d065299925915aeb172c06647", "1NS17iag9jJgTHD1VXjvLCEnZuQ3rJDE9L"], 8 | ["516b6fcd0f", "ABnLTmg"], 9 | ["bf4f89001e670274dd", "3SEo3LWLoPntC"], 10 | ["572e4794", "3EFU7m"], 11 | ["ecac89cad93923c02321", "EJDM8drfXA6uyA"], 12 | ["10c8511e", "Rt5zm"], 13 | ["00000000000000000000", "1111111111"] 14 | ] 15 | -------------------------------------------------------------------------------- /src/test/main_tests.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014-2015 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "net.h" 6 | 7 | #include "test/test_pigeon.h" 8 | 9 | #include 10 | #include 11 | 12 | BOOST_FIXTURE_TEST_SUITE(main_tests, TestingSetup) 13 | 14 | bool ReturnFalse() { return false; } 15 | bool ReturnTrue() { return true; } 16 | 17 | BOOST_AUTO_TEST_CASE(test_combiner_all) 18 | { 19 | boost::signals2::signal Test; 20 | BOOST_CHECK(Test()); 21 | Test.connect(&ReturnFalse); 22 | BOOST_CHECK(!Test()); 23 | Test.connect(&ReturnTrue); 24 | BOOST_CHECK(!Test()); 25 | Test.disconnect(&ReturnFalse); 26 | BOOST_CHECK(Test()); 27 | Test.disconnect(&ReturnTrue); 28 | BOOST_CHECK(Test()); 29 | } 30 | BOOST_AUTO_TEST_SUITE_END() 31 | -------------------------------------------------------------------------------- /src/test/sanity_tests.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012-2015 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "compat/sanity.h" 6 | #include "key.h" 7 | #include "test/test_pigeon.h" 8 | 9 | #include 10 | 11 | BOOST_FIXTURE_TEST_SUITE(sanity_tests, BasicTestingSetup) 12 | 13 | BOOST_AUTO_TEST_CASE(basic_sanity) 14 | { 15 | BOOST_CHECK_MESSAGE(glibc_sanity_test() == true, "libc sanity test"); 16 | BOOST_CHECK_MESSAGE(glibcxx_sanity_test() == true, "stdlib sanity test"); 17 | BOOST_CHECK_MESSAGE(ECC_InitSanityCheck() == true, "openssl ECC test"); 18 | } 19 | 20 | BOOST_AUTO_TEST_SUITE_END() 21 | -------------------------------------------------------------------------------- /src/torcontrol.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | /** 6 | * Functionality for communicating with Tor. 7 | */ 8 | #ifndef BITCOIN_TORCONTROL_H 9 | #define BITCOIN_TORCONTROL_H 10 | 11 | #include "scheduler.h" 12 | 13 | extern const std::string DEFAULT_TOR_CONTROL; 14 | static const bool DEFAULT_LISTEN_ONION = true; 15 | 16 | void StartTorControl(boost::thread_group& threadGroup, CScheduler& scheduler); 17 | void InterruptTorControl(); 18 | void StopTorControl(); 19 | 20 | #endif /* BITCOIN_TORCONTROL_H */ 21 | -------------------------------------------------------------------------------- /src/ui_interface.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2010-2016 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "ui_interface.h" 6 | #include "util.h" 7 | 8 | CClientUIInterface uiInterface; 9 | 10 | bool InitError(const std::string& str) 11 | { 12 | uiInterface.ThreadSafeMessageBox(str, "", CClientUIInterface::MSG_ERROR); 13 | return false; 14 | } 15 | 16 | void InitWarning(const std::string& str) 17 | { 18 | uiInterface.ThreadSafeMessageBox(str, "", CClientUIInterface::MSG_WARNING); 19 | } 20 | 21 | std::string AmountHighWarn(const std::string& optname) 22 | { 23 | return strprintf(_("%s is set very high!"), optname); 24 | } 25 | 26 | std::string AmountErrMsg(const char* const optname, const std::string& strValue) 27 | { 28 | return strprintf(_("Invalid amount for -%s=: '%s'"), optname, strValue); 29 | } 30 | -------------------------------------------------------------------------------- /src/univalue/.gitignore: -------------------------------------------------------------------------------- 1 | .deps/ 2 | INSTALL 3 | Makefile 4 | Makefile.in 5 | aclocal.m4 6 | autom4te.cache/ 7 | compile 8 | config.log 9 | config.status 10 | config.guess 11 | config.sub 12 | configure 13 | depcomp 14 | install-sh 15 | missing 16 | stamp-h1 17 | univalue-config.h* 18 | test-driver 19 | libtool 20 | ltmain.sh 21 | test-suite.log 22 | 23 | *.a 24 | *.la 25 | *.lo 26 | *.logs 27 | *.o 28 | *.pc 29 | *.trs 30 | 31 | .dirstamp 32 | .libs 33 | -------------------------------------------------------------------------------- /src/univalue/README: -------------------------------------------------------------------------------- 1 | 2 | UniValue 3 | 4 | A universal value object, with JSON encoding (output) and decoding (input). 5 | 6 | Built as a single dynamic RAII C++ object class, and no templates. 7 | 8 | -------------------------------------------------------------------------------- /src/univalue/TODO: -------------------------------------------------------------------------------- 1 | 2 | Rearrange tree for easier 'git subtree' style use 3 | 4 | Move towards C++11 etc. 5 | 6 | Namespace support - must come up with useful shorthand, avoiding 7 | long Univalue::Univalue::Univalue usages forced upon library users. 8 | 9 | Improve test suite 10 | 11 | -------------------------------------------------------------------------------- /src/univalue/autogen.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | srcdir="$(dirname $0)" 4 | cd "$srcdir" 5 | if [ -z ${LIBTOOLIZE} ] && GLIBTOOLIZE="`which glibtoolize 2>/dev/null`"; then 6 | LIBTOOLIZE="${GLIBTOOLIZE}" 7 | export LIBTOOLIZE 8 | fi 9 | autoreconf --install --force 10 | -------------------------------------------------------------------------------- /src/univalue/build-aux/m4/.gitignore: -------------------------------------------------------------------------------- 1 | /*.m4 2 | -------------------------------------------------------------------------------- /src/univalue/lib/.gitignore: -------------------------------------------------------------------------------- 1 | gen 2 | .libs 3 | -------------------------------------------------------------------------------- /src/univalue/pc/libunivalue-uninstalled.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libunivalue 7 | Description: libunivalue, C++ universal value object and JSON library 8 | Version: @VERSION@ 9 | Libs: ${pc_top_builddir}/${pcfiledir}/libunivalue.la 10 | -------------------------------------------------------------------------------- /src/univalue/pc/libunivalue.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libunivalue 7 | Description: libunivalue, C++ universal value object and JSON library 8 | Version: @VERSION@ 9 | Libs: -L${libdir} -lunivalue 10 | Cflags: -I${includedir} 11 | -------------------------------------------------------------------------------- /src/univalue/test/.gitignore: -------------------------------------------------------------------------------- 1 | unitester 2 | 3 | *.trs 4 | *.log 5 | -------------------------------------------------------------------------------- /src/univalue/test/fail1.json: -------------------------------------------------------------------------------- 1 | "A JSON payload should be an object or array, not a string." -------------------------------------------------------------------------------- /src/univalue/test/fail10.json: -------------------------------------------------------------------------------- 1 | {"Extra value after close": true} "misplaced quoted value" -------------------------------------------------------------------------------- /src/univalue/test/fail11.json: -------------------------------------------------------------------------------- 1 | {"Illegal expression": 1 + 2} -------------------------------------------------------------------------------- /src/univalue/test/fail12.json: -------------------------------------------------------------------------------- 1 | {"Illegal invocation": alert()} -------------------------------------------------------------------------------- /src/univalue/test/fail13.json: -------------------------------------------------------------------------------- 1 | {"Numbers cannot have leading zeroes": 013} -------------------------------------------------------------------------------- /src/univalue/test/fail14.json: -------------------------------------------------------------------------------- 1 | {"Numbers cannot be hex": 0x14} -------------------------------------------------------------------------------- /src/univalue/test/fail15.json: -------------------------------------------------------------------------------- 1 | ["Illegal backslash escape: \x15"] -------------------------------------------------------------------------------- /src/univalue/test/fail16.json: -------------------------------------------------------------------------------- 1 | [\naked] -------------------------------------------------------------------------------- /src/univalue/test/fail17.json: -------------------------------------------------------------------------------- 1 | ["Illegal backslash escape: \017"] -------------------------------------------------------------------------------- /src/univalue/test/fail18.json: -------------------------------------------------------------------------------- 1 | [[[[[[[[[[[[[[[[[[[["Too deep"]]]]]]]]]]]]]]]]]]]] -------------------------------------------------------------------------------- /src/univalue/test/fail19.json: -------------------------------------------------------------------------------- 1 | {"Missing colon" null} -------------------------------------------------------------------------------- /src/univalue/test/fail2.json: -------------------------------------------------------------------------------- 1 | ["Unclosed array" -------------------------------------------------------------------------------- /src/univalue/test/fail20.json: -------------------------------------------------------------------------------- 1 | {"Double colon":: null} -------------------------------------------------------------------------------- /src/univalue/test/fail21.json: -------------------------------------------------------------------------------- 1 | {"Comma instead of colon", null} -------------------------------------------------------------------------------- /src/univalue/test/fail22.json: -------------------------------------------------------------------------------- 1 | ["Colon instead of comma": false] -------------------------------------------------------------------------------- /src/univalue/test/fail23.json: -------------------------------------------------------------------------------- 1 | ["Bad value", truth] -------------------------------------------------------------------------------- /src/univalue/test/fail24.json: -------------------------------------------------------------------------------- 1 | ['single quote'] -------------------------------------------------------------------------------- /src/univalue/test/fail25.json: -------------------------------------------------------------------------------- 1 | [" tab character in string "] -------------------------------------------------------------------------------- /src/univalue/test/fail26.json: -------------------------------------------------------------------------------- 1 | ["tab\ character\ in\ string\ "] -------------------------------------------------------------------------------- /src/univalue/test/fail27.json: -------------------------------------------------------------------------------- 1 | ["line 2 | break"] -------------------------------------------------------------------------------- /src/univalue/test/fail28.json: -------------------------------------------------------------------------------- 1 | ["line\ 2 | break"] -------------------------------------------------------------------------------- /src/univalue/test/fail29.json: -------------------------------------------------------------------------------- 1 | [0e] -------------------------------------------------------------------------------- /src/univalue/test/fail3.json: -------------------------------------------------------------------------------- 1 | {unquoted_key: "keys must be quoted"} -------------------------------------------------------------------------------- /src/univalue/test/fail30.json: -------------------------------------------------------------------------------- 1 | [0e+] -------------------------------------------------------------------------------- /src/univalue/test/fail31.json: -------------------------------------------------------------------------------- 1 | [0e+-1] -------------------------------------------------------------------------------- /src/univalue/test/fail32.json: -------------------------------------------------------------------------------- 1 | {"Comma instead if closing brace": true, -------------------------------------------------------------------------------- /src/univalue/test/fail33.json: -------------------------------------------------------------------------------- 1 | ["mismatch"} -------------------------------------------------------------------------------- /src/univalue/test/fail34.json: -------------------------------------------------------------------------------- 1 | {} garbage -------------------------------------------------------------------------------- /src/univalue/test/fail35.json: -------------------------------------------------------------------------------- 1 | [ true true true [] [] [] ] 2 | -------------------------------------------------------------------------------- /src/univalue/test/fail36.json: -------------------------------------------------------------------------------- 1 | {"a":} 2 | -------------------------------------------------------------------------------- /src/univalue/test/fail37.json: -------------------------------------------------------------------------------- 1 | {"a":1 "b":2} 2 | -------------------------------------------------------------------------------- /src/univalue/test/fail38.json: -------------------------------------------------------------------------------- 1 | ["\ud834"] 2 | -------------------------------------------------------------------------------- /src/univalue/test/fail39.json: -------------------------------------------------------------------------------- 1 | ["\udd61"] 2 | -------------------------------------------------------------------------------- /src/univalue/test/fail4.json: -------------------------------------------------------------------------------- 1 | ["extra comma",] -------------------------------------------------------------------------------- /src/univalue/test/fail40.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/univalue/test/fail40.json -------------------------------------------------------------------------------- /src/univalue/test/fail41.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/src/univalue/test/fail41.json -------------------------------------------------------------------------------- /src/univalue/test/fail5.json: -------------------------------------------------------------------------------- 1 | ["double extra comma",,] -------------------------------------------------------------------------------- /src/univalue/test/fail6.json: -------------------------------------------------------------------------------- 1 | [ , "<-- missing value"] -------------------------------------------------------------------------------- /src/univalue/test/fail7.json: -------------------------------------------------------------------------------- 1 | ["Comma after the close"], -------------------------------------------------------------------------------- /src/univalue/test/fail8.json: -------------------------------------------------------------------------------- 1 | ["Extra close"]] -------------------------------------------------------------------------------- /src/univalue/test/fail9.json: -------------------------------------------------------------------------------- 1 | {"Extra comma": true,} -------------------------------------------------------------------------------- /src/univalue/test/pass2.json: -------------------------------------------------------------------------------- 1 | [[[[[[[[[[[[[[[[[[["Not too deep"]]]]]]]]]]]]]]]]]]] -------------------------------------------------------------------------------- /src/univalue/test/pass3.json: -------------------------------------------------------------------------------- 1 | { 2 | "JSON Test Pattern pass3": { 3 | "The outermost value": "must be an object or array.", 4 | "In this test": "It is an object." 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /src/univalue/test/round1.json: -------------------------------------------------------------------------------- 1 | ["\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u007f"] 2 | -------------------------------------------------------------------------------- /src/univalue/test/round2.json: -------------------------------------------------------------------------------- 1 | ["a§■𐎒𝅘𝅥𝅯"] 2 | -------------------------------------------------------------------------------- /src/utilmoneystr.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2010 Satoshi Nakamoto 2 | // Copyright (c) 2009-2015 The Bitcoin Core developers 3 | // Distributed under the MIT software license, see the accompanying 4 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | /** 7 | * Money parsing/formatting utilities. 8 | */ 9 | #ifndef BITCOIN_UTILMONEYSTR_H 10 | #define BITCOIN_UTILMONEYSTR_H 11 | 12 | #include 13 | #include 14 | 15 | #include "amount.h" 16 | 17 | /* Do not use these functions to represent or parse monetary amounts to or from 18 | * JSON but use AmountFromValue and ValueFromAmount for that. 19 | */ 20 | std::string FormatMoney(const CAmount& n); 21 | bool ParseMoney(const std::string& str, CAmount& nRet); 22 | bool ParseMoney(const char* pszIn, CAmount& nRet); 23 | 24 | #endif // BITCOIN_UTILMONEYSTR_H 25 | -------------------------------------------------------------------------------- /src/wallet/rpcwallet.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2016 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_WALLET_RPCWALLET_H 6 | #define BITCOIN_WALLET_RPCWALLET_H 7 | 8 | class CRPCTable; 9 | class JSONRPCRequest; 10 | 11 | void RegisterWalletRPCCommands(CRPCTable &t); 12 | 13 | /** 14 | * Figures out what wallet, if any, to use for a JSONRPCRequest. 15 | * 16 | * @param[in] request JSONRPCRequest that wishes to access a wallet 17 | * @return nullptr if no wallet should be used, or a pointer to the CWallet 18 | */ 19 | CWallet *GetWalletForJSONRPCRequest(const JSONRPCRequest& request); 20 | 21 | std::string HelpRequiringPassphrase(CWallet *); 22 | void EnsureWalletIsUnlocked(CWallet *); 23 | bool EnsureWalletIsAvailable(CWallet *, bool avoidException); 24 | 25 | #endif //BITCOIN_WALLET_RPCWALLET_H 26 | -------------------------------------------------------------------------------- /src/wallet/test/wallet_test_fixture.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2016 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_WALLET_TEST_FIXTURE_H 6 | #define BITCOIN_WALLET_TEST_FIXTURE_H 7 | 8 | #include "test/test_pigeon.h" 9 | 10 | /** Testing setup and teardown for wallet. 11 | */ 12 | struct WalletTestingSetup: public TestingSetup { 13 | WalletTestingSetup(const std::string& chainName = CBaseChainParams::MAIN); 14 | ~WalletTestingSetup(); 15 | }; 16 | 17 | #endif 18 | 19 | -------------------------------------------------------------------------------- /src/zmq/zmqconfig.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_ZMQ_ZMQCONFIG_H 6 | #define BITCOIN_ZMQ_ZMQCONFIG_H 7 | 8 | #if defined(HAVE_CONFIG_H) 9 | #include "config/pigeon-config.h" 10 | #endif 11 | 12 | #include 13 | #include 14 | 15 | #if ENABLE_ZMQ 16 | #include 17 | #endif 18 | 19 | #include "primitives/block.h" 20 | #include "primitives/transaction.h" 21 | 22 | #include "governance/governance-object.h" 23 | #include "governance/governance-vote.h" 24 | 25 | #include "llmq/quorums_chainlocks.h" 26 | #include "llmq/quorums_instantsend.h" 27 | 28 | void zmqError(const char *str); 29 | 30 | #endif // BITCOIN_ZMQ_ZMQCONFIG_H 31 | -------------------------------------------------------------------------------- /test/config.ini.in: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2013-2016 The Bitcoin Core developers 2 | # Distributed under the MIT software license, see the accompanying 3 | # file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | # These environment variables are set by the build process and read by 6 | # test/functional/test_runner.py and test/util/bitcoin-util-test.py 7 | 8 | [environment] 9 | SRCDIR=@abs_top_srcdir@ 10 | BUILDDIR=@abs_top_builddir@ 11 | EXEEXT=@EXEEXT@ 12 | 13 | [components] 14 | # Which components are enabled. These are commented out by `configure` if they were disabled when running config. 15 | @ENABLE_WALLET_TRUE@ENABLE_WALLET=true 16 | @BUILD_BITCOIN_UTILS_TRUE@ENABLE_UTILS=true 17 | @BUILD_BITCOIND_TRUE@ENABLE_BITCOIND=true 18 | @ENABLE_ZMQ_TRUE@ENABLE_ZMQ=true 19 | -------------------------------------------------------------------------------- /test/functional/.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | cache 3 | -------------------------------------------------------------------------------- /test/functional/create_cache.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | # Copyright (c) 2016 The Bitcoin Core developers 3 | # Distributed under the MIT software license, see the accompanying 4 | # file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | """Create a blockchain cache. 6 | 7 | Creating a cache of the blockchain speeds up test execution when running 8 | multiple functional tests. This helper script is executed by test_runner when multiple 9 | tests are being run in parallel. 10 | """ 11 | 12 | from test_framework.test_framework import BitcoinTestFramework 13 | 14 | class CreateCache(BitcoinTestFramework): 15 | # Test network and test nodes are not required: 16 | 17 | def set_test_params(self): 18 | self.num_nodes = 0 19 | 20 | def setup_network(self): 21 | pass 22 | 23 | def run_test(self): 24 | pass 25 | 26 | if __name__ == '__main__': 27 | CreateCache().main() 28 | -------------------------------------------------------------------------------- /test/functional/test_framework/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Pigeoncoin/pigeoncoin/fbb9aa8fd750085e9d1aded6feb8eb23002c2acf/test/functional/test_framework/__init__.py -------------------------------------------------------------------------------- /test/functional/uptime.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | # Copyright (c) 2017 The Bitcoin Core developers 3 | # Distributed under the MIT software license, see the accompanying 4 | # file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | """Test the RPC call related to the uptime command. 6 | 7 | Test corresponds to code in rpc/server.cpp. 8 | """ 9 | 10 | import time 11 | 12 | from test_framework.test_framework import BitcoinTestFramework 13 | 14 | 15 | class UptimeTest(BitcoinTestFramework): 16 | def set_test_params(self): 17 | self.num_nodes = 1 18 | self.setup_clean_chain = True 19 | 20 | def run_test(self): 21 | self._test_uptime() 22 | 23 | def _test_uptime(self): 24 | wait_time = 10 25 | self.nodes[0].setmocktime(int(time.time() + wait_time)) 26 | assert(self.nodes[0].uptime() >= wait_time) 27 | 28 | 29 | if __name__ == '__main__': 30 | UptimeTest().main() 31 | -------------------------------------------------------------------------------- /test/util/data/blanktxv1.hex: -------------------------------------------------------------------------------- 1 | 01000000000000000000 2 | -------------------------------------------------------------------------------- /test/util/data/blanktxv1.json: -------------------------------------------------------------------------------- 1 | { 2 | "txid": "d21633ba23f70118185227be58a63527675641ad37967e2aa461559f577aec43", 3 | "version": 1, 4 | "type": 0, 5 | "size": 10, 6 | "locktime": 0, 7 | "vin": [ 8 | ], 9 | "vout": [ 10 | ], 11 | "hex": "01000000000000000000" 12 | } 13 | -------------------------------------------------------------------------------- /test/util/data/blanktxv2.hex: -------------------------------------------------------------------------------- 1 | 02000000000000000000 2 | -------------------------------------------------------------------------------- /test/util/data/blanktxv2.json: -------------------------------------------------------------------------------- 1 | { 2 | "txid": "4ebd325a4b394cff8c57e8317ccf5a8d0e2bdf1b8526f8aad6c8e43d8240621a", 3 | "version": 2, 4 | "type": 0, 5 | "size": 10, 6 | "locktime": 0, 7 | "vin": [ 8 | ], 9 | "vout": [ 10 | ], 11 | "hex": "02000000000000000000" 12 | } 13 | -------------------------------------------------------------------------------- /test/util/data/txcreate1.hex: -------------------------------------------------------------------------------- 1 | 02000000031f5c38dfcf6f1a5f5a87c416076d392c87e6d41970d5ad5e477a02d66bde97580000000000ffffffff7cca453133921c50d5025878f7f738d1df891fd359763331935784cf6b9c82bf1200000000fffffffffccd319e04a996c96cfc0bf4c07539aa90bd0b1a700ef72fae535d6504f9a6220100000000ffffffff0280a81201000000001976a9141fc11f39be1729bf973a7ab6a615ca4729d6457488ac0084d717000000001976a914f2d4db28cad6502226ee484ae24505c2885cb12d88ac00000000 2 | -------------------------------------------------------------------------------- /test/util/data/txcreate2.hex: -------------------------------------------------------------------------------- 1 | 02000000000100000000000000000000000000 2 | -------------------------------------------------------------------------------- /test/util/data/txcreate2.json: -------------------------------------------------------------------------------- 1 | { 2 | "txid": "0481afb29931341d0d7861d8a2f6f26456fa042abf54a23e96440ed7946e0715", 3 | "version": 2, 4 | "type": 0, 5 | "size": 19, 6 | "locktime": 0, 7 | "vin": [ 8 | ], 9 | "vout": [ 10 | { 11 | "value": 0.00000000, 12 | "valueSat": 0, 13 | "n": 0, 14 | "scriptPubKey": { 15 | "asm": "", 16 | "hex": "", 17 | "type": "nonstandard" 18 | } 19 | } 20 | ], 21 | "hex": "02000000000100000000000000000000000000" 22 | } 23 | -------------------------------------------------------------------------------- /test/util/data/txcreatedata1.hex: -------------------------------------------------------------------------------- 1 | 02000000011f5c38dfcf6f1a5f5a87c416076d392c87e6d41970d5ad5e477a02d66bde97580000000000ffffffff0280a81201000000001976a9145834479edbbe0539b31ffd3a8f8ebadc2165ed0188ac0084d71700000000526a4c4f54686973204f505f52455455524e207472616e73616374696f6e206f7574707574207761732063726561746564206279206d6f646966696564206372656174657261777472616e73616374696f6e2e00000000 2 | -------------------------------------------------------------------------------- /test/util/data/txcreatedata2.hex: -------------------------------------------------------------------------------- 1 | 02000000011f5c38dfcf6f1a5f5a87c416076d392c87e6d41970d5ad5e477a02d66bde97580000000000ffffffff0280a81201000000001976a9145834479edbbe0539b31ffd3a8f8ebadc2165ed0188ac0000000000000000526a4c4f54686973204f505f52455455524e207472616e73616374696f6e206f7574707574207761732063726561746564206279206d6f646966696564206372656174657261777472616e73616374696f6e2e00000000 2 | -------------------------------------------------------------------------------- /test/util/data/txcreatedata_seq0.hex: -------------------------------------------------------------------------------- 1 | 02000000011f5c38dfcf6f1a5f5a87c416076d392c87e6d41970d5ad5e477a02d66bde97580000000000fdffffff0180a81201000000001976a9145834479edbbe0539b31ffd3a8f8ebadc2165ed0188ac00000000 2 | -------------------------------------------------------------------------------- /test/util/data/txcreatedata_seq1.hex: -------------------------------------------------------------------------------- 1 | 01000000021f5c38dfcf6f1a5f5a87c416076d392c87e6d41970d5ad5e477a02d66bde97580000000000fdffffff1f5c38dfcf6f1a5f5a87c416076d392c87e6d41970d5ad5e477a02d66bde97580000000000010000000180a81201000000001976a9141fc11f39be1729bf973a7ab6a615ca4729d6457488ac00000000 2 | -------------------------------------------------------------------------------- /test/util/data/txcreatemultisig1.hex: -------------------------------------------------------------------------------- 1 | 01000000000100e1f5050000000069522102a5613bd857b7048924264d1e70e08fb2a7e6527d32b7ab1bb993ac59964ff39721021ac43c7ff740014c3b33737ede99c967e4764553d1b2b83db77c83b8715fa72d2102df2089105c77f266fa11a9d33f05c735234075f2e8780824c6b709415f9fb48553ae00000000 2 | -------------------------------------------------------------------------------- /test/util/data/txcreatemultisig2.hex: -------------------------------------------------------------------------------- 1 | 01000000000100e1f5050000000017a9141c6fbaf46d64221e80cbae182c33ddf81b9294ac8700000000 2 | -------------------------------------------------------------------------------- /test/util/data/txcreatemultisig2.json: -------------------------------------------------------------------------------- 1 | { 2 | "txid": "0d861f278a3b7bce7cb5a88d71e6e6a903336f95ad5a2c29b295b63835b6eee3", 3 | "version": 1, 4 | "type": 0, 5 | "size": 42, 6 | "locktime": 0, 7 | "vin": [ 8 | ], 9 | "vout": [ 10 | { 11 | "value": 1.00000000, 12 | "valueSat": 100000000, 13 | "n": 0, 14 | "scriptPubKey": { 15 | "asm": "OP_HASH160 1c6fbaf46d64221e80cbae182c33ddf81b9294ac OP_EQUAL", 16 | "hex": "a9141c6fbaf46d64221e80cbae182c33ddf81b9294ac87", 17 | "reqSigs": 1, 18 | "type": "scripthash", 19 | "addresses": [ 20 | "7V11XGPxzBWxkiuw15a1Vgk7XT74tyYtCY" 21 | ] 22 | } 23 | } 24 | ], 25 | "hex": "01000000000100e1f5050000000017a9141c6fbaf46d64221e80cbae182c33ddf81b9294ac8700000000" 26 | } 27 | -------------------------------------------------------------------------------- /test/util/data/txcreateoutpubkey1.hex: -------------------------------------------------------------------------------- 1 | 0100000000010000000000000000232102a5613bd857b7048924264d1e70e08fb2a7e6527d32b7ab1bb993ac59964ff397ac00000000 2 | -------------------------------------------------------------------------------- /test/util/data/txcreateoutpubkey1.json: -------------------------------------------------------------------------------- 1 | { 2 | "txid": "f42b38ac12e3fafc96ba1a9ba70cbfe326744aef75df5fb9db5d6e2855ca415f", 3 | "version": 1, 4 | "type": 0, 5 | "size": 54, 6 | "locktime": 0, 7 | "vin": [ 8 | ], 9 | "vout": [ 10 | { 11 | "value": 0.00000000, 12 | "valueSat": 0, 13 | "n": 0, 14 | "scriptPubKey": { 15 | "asm": "02a5613bd857b7048924264d1e70e08fb2a7e6527d32b7ab1bb993ac59964ff397 OP_CHECKSIG", 16 | "hex": "2102a5613bd857b7048924264d1e70e08fb2a7e6527d32b7ab1bb993ac59964ff397ac", 17 | "reqSigs": 1, 18 | "type": "pubkey", 19 | "addresses": [ 20 | "XqV6rHmzCyFUKF2jSVg8ZkZ7oRhGLVxifK" 21 | ] 22 | } 23 | } 24 | ], 25 | "hex": "0100000000010000000000000000232102a5613bd857b7048924264d1e70e08fb2a7e6527d32b7ab1bb993ac59964ff397ac00000000" 26 | } 27 | -------------------------------------------------------------------------------- /test/util/data/txcreatescript1.hex: -------------------------------------------------------------------------------- 1 | 0100000000010000000000000000017500000000 2 | -------------------------------------------------------------------------------- /test/util/data/txcreatescript1.json: -------------------------------------------------------------------------------- 1 | { 2 | "txid": "f0851b68202f736b792649cfc960259c2374badcb644ab20cac726b5f72f61c9", 3 | "version": 1, 4 | "type": 0, 5 | "size": 20, 6 | "locktime": 0, 7 | "vin": [ 8 | ], 9 | "vout": [ 10 | { 11 | "value": 0.00000000, 12 | "valueSat": 0, 13 | "n": 0, 14 | "scriptPubKey": { 15 | "asm": "OP_DROP", 16 | "hex": "75", 17 | "type": "nonstandard" 18 | } 19 | } 20 | ], 21 | "hex": "0100000000010000000000000000017500000000" 22 | } 23 | -------------------------------------------------------------------------------- /test/util/data/txcreatescript2.hex: -------------------------------------------------------------------------------- 1 | 010000000001000000000000000017a91471ed53322d470bb96657deb786b94f97dd46fb158700000000 2 | -------------------------------------------------------------------------------- /test/util/data/txcreatescript2.json: -------------------------------------------------------------------------------- 1 | { 2 | "txid": "6e07a7cc075e0703f32ee8c4e5373fe654bfbc315148fda364e1be286ff290d0", 3 | "version": 1, 4 | "type": 0, 5 | "size": 42, 6 | "locktime": 0, 7 | "vin": [ 8 | ], 9 | "vout": [ 10 | { 11 | "value": 0.00000000, 12 | "valueSat": 0, 13 | "n": 0, 14 | "scriptPubKey": { 15 | "asm": "OP_HASH160 71ed53322d470bb96657deb786b94f97dd46fb15 OP_EQUAL", 16 | "hex": "a91471ed53322d470bb96657deb786b94f97dd46fb1587", 17 | "reqSigs": 1, 18 | "type": "scripthash", 19 | "addresses": [ 20 | "7co3R3WSW8mHKMkFK2FrzQY2fLCBWsg56D" 21 | ] 22 | } 23 | } 24 | ], 25 | "hex": "010000000001000000000000000017a91471ed53322d470bb96657deb786b94f97dd46fb158700000000" 26 | } 27 | -------------------------------------------------------------------------------- /test/util/data/txcreatesignv1.hex: -------------------------------------------------------------------------------- 1 | 01000000018594c5bdcaec8f06b78b596f31cd292a294fd031e24eec716f43dac91ea7494d000000008b48304502210096a75056c9e2cc62b7214777b3d2a592cfda7092520126d4ebfcd6d590c99bd8022051bb746359cf98c0603f3004477eac68701132380db8facba19c89dc5ab5c5e201410479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8ffffffff01a0860100000000001976a9145834479edbbe0539b31ffd3a8f8ebadc2165ed0188ac00000000 2 | -------------------------------------------------------------------------------- /test/util/data/txcreatesignv2.hex: -------------------------------------------------------------------------------- 1 | 02000000018594c5bdcaec8f06b78b596f31cd292a294fd031e24eec716f43dac91ea7494d000000008a473044022079c7aa014177a2e973caf6df7c7b8f15399083b91eba370ea1e19c4caed9181e02205f8f8763505ce8e6cbdd2cd28fab3fd407a75003e7d0dc04e6bebb0a3c89e7cb01410479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8ffffffff01a0860100000000001976a9145834479edbbe0539b31ffd3a8f8ebadc2165ed0188ac00000000 2 | --------------------------------------------------------------------------------