├── .gitattributes ├── .gitignore ├── .travis.yml ├── .tx └── config ├── COPYING ├── INSTALL ├── 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_gcc_func_attribute.m4 │ ├── ax_pthread.m4 │ ├── truthcoin_find_bdb48.m4 │ ├── truthcoin_qt.m4 │ └── truthcoin_subdir_to_include.m4 ├── configure.ac ├── contrib ├── README.md ├── bitrpc │ ├── README.md │ └── bitrpc.py ├── debian │ ├── README.md │ ├── changelog │ ├── compat │ ├── control │ ├── copyright │ ├── examples │ │ └── truthcoin.conf │ ├── gbp.conf │ ├── manpages │ │ ├── truthcoin-qt.1 │ │ ├── truthcoin.conf.5 │ │ └── truthcoind.1 │ ├── patches │ │ ├── README │ │ └── series │ ├── rules │ ├── source │ │ └── format │ ├── truthcoin-qt.desktop │ ├── truthcoin-qt.install │ ├── truthcoin-qt.lintian-overrides │ ├── truthcoin-qt.protocol │ ├── truthcoind.bash-completion │ ├── truthcoind.examples │ ├── truthcoind.install │ ├── truthcoind.lintian-overrides │ ├── truthcoind.manpages │ └── watch ├── devtools │ ├── README.md │ ├── fix-copyright-headers.py │ ├── github-merge.sh │ ├── optimize-pngs.py │ ├── symbol-check.py │ └── update-translations.py ├── gitian-descriptors │ ├── README.md │ ├── gitian-linux.yml │ ├── gitian-osx-signer.yml │ ├── gitian-osx.yml │ └── gitian-win.yml ├── gitian-downloader │ ├── aschildbach-key.pgp │ ├── bluematt-key.pgp │ ├── cfields-key.pgp │ ├── devrandom-key.pgp │ ├── gavinandresen-key.pgp │ ├── jonasschnelli.pgp │ ├── laanwj-key.pgp │ ├── linux-download-config │ ├── luke-jr-key.pgp │ ├── michagogo-key.pgp │ ├── sipa-key.pgp │ ├── tcatm-key.pgp │ ├── win32-download-config │ └── wtogami-key.pgp ├── init │ ├── README.md │ ├── truthcoind.conf │ ├── truthcoind.openrc │ ├── truthcoind.openrcconf │ └── truthcoind.service ├── linearize │ ├── README.md │ ├── example-linearize.cfg │ ├── linearize-data.py │ └── linearize-hashes.py ├── macdeploy │ ├── DS_Store │ ├── LICENSE │ ├── README.md │ ├── background.png │ ├── background.psd │ ├── detached-sig-apply.sh │ ├── detached-sig-create.sh │ ├── fancy.plist │ └── macdeployqtplus ├── qos │ ├── README.md │ └── tc.sh ├── qt_translations.py ├── seeds │ ├── README.md │ └── makeseeds.py ├── spendfrom │ ├── README.md │ ├── setup.py │ └── spendfrom.py ├── test-patches │ ├── README.md │ └── temp-revert-2.patch ├── testgen │ ├── README.md │ ├── base58.py │ └── gen_base58_test_vectors.py ├── tidy_datadir.sh ├── truthcoin-qt.pro ├── truthcoind.bash-completion └── verifysfbinaries │ ├── README.md │ └── verify.sh ├── depends ├── .gitignore ├── Makefile ├── README ├── README.packages ├── README.usage ├── builders │ ├── darwin.mk │ ├── default.mk │ └── linux.mk ├── config.guess ├── config.site.in ├── config.sub ├── funcs.mk ├── hosts │ ├── darwin.mk │ ├── default.mk │ ├── linux.mk │ └── mingw32.mk ├── packages │ ├── bdb.mk │ ├── boost.mk │ ├── dbus.mk │ ├── expat.mk │ ├── fontconfig.mk │ ├── freetype.mk │ ├── libICE.mk │ ├── libSM.mk │ ├── libX11.mk │ ├── libXau.mk │ ├── libXext.mk │ ├── libxcb.mk │ ├── miniupnpc.mk │ ├── native_ccache.mk │ ├── native_cctools.mk │ ├── native_cdrkit.mk │ ├── native_comparisontool.mk │ ├── native_libdmg-hfsplus.mk │ ├── native_protobuf.mk │ ├── openssl.mk │ ├── packages.mk │ ├── protobuf.mk │ ├── qrencode.mk │ ├── qt.mk │ ├── qt46.mk │ ├── xcb_proto.mk │ ├── xextproto.mk │ ├── xproto.mk │ └── xtrans.mk └── patches │ ├── boost │ ├── darwin_boost_atomic-1.patch │ └── darwin_boost_atomic-2.patch │ ├── native_cdrkit │ └── cdrkit-deterministic.patch │ ├── qt │ ├── fix-xcb-include-order.patch │ ├── mac-qmake.conf │ ├── qt5-tablet-osx.patch │ └── qt5-yosemite.patch │ └── qt46 │ └── stlfix.patch ├── doc ├── Doxyfile ├── README.md ├── README_windows.txt ├── REST-interface.md ├── assets-attribution.md ├── build-osx.md ├── build-unix.md ├── developer-notes.md ├── dnsseed-policy.md ├── files.md ├── gitian-building.md ├── gitian-building │ ├── create_vm_file_location_size.png │ ├── create_vm_hard_drive.png │ ├── create_vm_hard_drive_file_type.png │ ├── create_vm_memsize.png │ ├── create_vm_page1.png │ ├── create_vm_storage_physical_hard_drive.png │ ├── debian_install_10_configure_clock.png │ ├── debian_install_11_partition_disks.png │ ├── debian_install_12_choose_disk.png │ ├── debian_install_13_partition_scheme.png │ ├── debian_install_14_finish.png │ ├── debian_install_15_write_changes.png │ ├── debian_install_16_choose_a_mirror.png │ ├── debian_install_17_choose_a_mirror2.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_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 │ ├── network_settings.png │ ├── port_forwarding_rules.png │ └── select_startup_disk.png ├── img │ ├── bootstrap1.png │ ├── bootstrap2.png │ ├── bootstrap4.png │ └── bootstrap5.png ├── init.md ├── multiwallet-qt.md ├── notes_blockchain.txt ├── notes_gitian.txt ├── notes_truthcoin.txt ├── release-notes.md ├── release-notes │ ├── release-notes-0.9.2.md │ └── release-notes-0.9.3.md ├── release-process.md ├── tor.md ├── translation_process.md ├── travis-ci.txt ├── truthcoin_logo_doxygen.png └── unit-tests.md ├── libtruthcoinconsensus.pc.in ├── pkg.m4 ├── qa ├── pull-tester │ ├── rpc-tests.sh │ ├── run-truthcoin-cli │ ├── run-truthcoind-for-test.sh.in │ └── tests-config.sh.in └── rpc-tests │ ├── .gitignore │ ├── README.md │ ├── conflictedbalance.sh │ ├── forknotify.py │ ├── getblocktemplate_longpoll.py │ ├── getblocktemplate_proposals.py │ ├── getchaintips.py │ ├── httpbasics.py │ ├── keypool.py │ ├── listtransactions.py │ ├── mempool_coinbase_spends.py │ ├── mempool_resurrect_test.py │ ├── mempool_spendcoinbase.py │ ├── netutil.py │ ├── python-truthcoinrpc │ ├── setup.py │ └── truthcoinrpc │ │ ├── .gitignore │ │ ├── __init__.py │ │ └── authproxy.py │ ├── receivedby.py │ ├── rest.py │ ├── rpcbind_test.py │ ├── send.sh │ ├── smartfees.py │ ├── test_framework.py │ ├── txn_doublespend.py │ ├── util.py │ ├── util.sh │ ├── wallet.py │ ├── walletbackup.py │ └── zapwallettxes.py ├── share ├── certs │ ├── PrivateKeyNotes.md │ ├── TruthcoinFoundation_Apple_Cert.pem │ └── TruthcoinFoundation_Comodo_Cert.pem ├── genbuild.sh ├── pixmaps │ ├── addressbook16.bmp │ ├── addressbook16mask.bmp │ ├── addressbook20.bmp │ ├── addressbook20mask.bmp │ ├── check.ico │ ├── favicon.ico │ ├── nsis-header.bmp │ ├── nsis-wizard.bmp │ ├── send16.bmp │ ├── send16mask.bmp │ ├── send16masknoshadow.bmp │ ├── send20.bmp │ ├── send20mask.bmp │ ├── truthcoin-bc.ico │ ├── truthcoin.ico │ ├── truthcoin128.png │ ├── truthcoin128.xpm │ ├── truthcoin16.png │ ├── truthcoin16.xpm │ ├── truthcoin256.png │ ├── truthcoin256.xpm │ ├── truthcoin32.png │ ├── truthcoin32.xpm │ ├── truthcoin64.png │ └── truthcoin64.xpm ├── qt │ ├── Info.plist.in │ ├── extract_strings_qt.py │ ├── img │ │ ├── reload.png │ │ └── reload.xcf │ ├── make_spinner.py │ ├── make_windows_icon.sh │ └── protobuf.pri ├── seeds │ ├── generate-seeds.py │ ├── nodes_main.txt │ └── nodes_test.txt ├── setup.nsi.in └── ui.rc └── src ├── .clang-format ├── Makefile.am ├── Makefile.qt.include ├── Makefile.qttest.include ├── Makefile.test.include ├── addrman.cpp ├── addrman.h ├── alert.cpp ├── alert.h ├── allocators.cpp ├── allocators.h ├── amount.cpp ├── amount.h ├── arith_uint256.cpp ├── arith_uint256.h ├── base58.cpp ├── base58.h ├── bloom.cpp ├── bloom.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 ├── coincontrol.h ├── coins.cpp ├── coins.h ├── compat.h ├── compat ├── glibc_compat.cpp ├── glibc_sanity.cpp ├── glibcxx_compat.cpp ├── glibcxx_sanity.cpp ├── sanity.h └── strnlen.cpp ├── compressor.cpp ├── compressor.h ├── config └── .empty ├── core_io.h ├── core_read.cpp ├── core_write.cpp ├── crypter.cpp ├── crypter.h ├── crypto ├── common.h ├── hmac_sha256.cpp ├── hmac_sha256.h ├── hmac_sha512.cpp ├── hmac_sha512.h ├── rfc6979_hmac_sha256.cpp ├── rfc6979_hmac_sha256.h ├── ripemd160.cpp ├── ripemd160.h ├── sha1.cpp ├── sha1.h ├── sha256.cpp ├── sha256.h ├── sha512.cpp └── sha512.h ├── db.cpp ├── db.h ├── eccryptoverify.cpp ├── eccryptoverify.h ├── ecwrapper.cpp ├── ecwrapper.h ├── fdlibm ├── COPYING ├── Makefile.am ├── README.md ├── autogen.sh ├── build-aux │ └── m4 │ │ └── truthcoin_fdlibm.m4 ├── configure.ac ├── libfdlibm.pc.in └── src │ ├── e_acos.c │ ├── e_acosh.c │ ├── e_asin.c │ ├── e_atan2.c │ ├── e_atanh.c │ ├── e_cosh.c │ ├── e_exp.c │ ├── e_fmod.c │ ├── e_gamma.c │ ├── e_gamma_r.c │ ├── e_hypot.c │ ├── e_j0.c │ ├── e_j1.c │ ├── e_jn.c │ ├── e_lgamma.c │ ├── e_lgamma_r.c │ ├── e_log.c │ ├── e_log10.c │ ├── e_pow.c │ ├── e_rem_pio2.c │ ├── e_remainder.c │ ├── e_scalb.c │ ├── e_sinh.c │ ├── e_sqrt.c │ ├── fdlibm.h │ ├── k_cos.c │ ├── k_rem_pio2.c │ ├── k_sin.c │ ├── k_standard.c │ ├── k_tan.c │ ├── s_asinh.c │ ├── s_atan.c │ ├── s_cbrt.c │ ├── s_ceil.c │ ├── s_copysign.c │ ├── s_cos.c │ ├── s_erf.c │ ├── s_expm1.c │ ├── s_fabs.c │ ├── s_finite.c │ ├── s_floor.c │ ├── s_frexp.c │ ├── s_ilogb.c │ ├── s_isnan.c │ ├── s_ldexp.c │ ├── s_lib_version.c │ ├── s_log1p.c │ ├── s_logb.c │ ├── s_matherr.c │ ├── s_modf.c │ ├── s_nextafter.c │ ├── s_rint.c │ ├── s_scalbn.c │ ├── s_signgam.c │ ├── s_significand.c │ ├── s_sin.c │ ├── s_tan.c │ ├── s_tanh.c │ ├── w_acos.c │ ├── w_acosh.c │ ├── w_asin.c │ ├── w_atan2.c │ ├── w_atanh.c │ ├── w_cosh.c │ ├── w_exp.c │ ├── w_fmod.c │ ├── w_gamma.c │ ├── w_gamma_r.c │ ├── w_hypot.c │ ├── w_j0.c │ ├── w_j1.c │ ├── w_jn.c │ ├── w_lgamma.c │ ├── w_lgamma_r.c │ ├── w_log.c │ ├── w_log10.c │ ├── w_pow.c │ ├── w_remainder.c │ ├── w_scalb.c │ ├── w_sinh.c │ └── w_sqrt.c ├── hash.cpp ├── hash.h ├── init.cpp ├── init.h ├── json ├── LICENSE.txt ├── json_spirit.h ├── json_spirit_error_position.h ├── json_spirit_reader.cpp ├── json_spirit_reader.h ├── json_spirit_reader_template.h ├── json_spirit_stream_reader.h ├── json_spirit_utils.h ├── json_spirit_value.cpp ├── json_spirit_value.h ├── json_spirit_writer.cpp ├── json_spirit_writer.h └── json_spirit_writer_template.h ├── key.cpp ├── key.h ├── keystore.cpp ├── keystore.h ├── leveldb ├── .gitignore ├── AUTHORS ├── CONTRIBUTING.md ├── LICENSE ├── Makefile ├── NEWS ├── README ├── 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 │ ├── filename.cc │ ├── filename.h │ ├── filename_test.cc │ ├── leveldb_main.cc │ ├── log_format.h │ ├── log_reader.cc │ ├── log_reader.h │ ├── log_test.cc │ ├── log_writer.cc │ ├── log_writer.h │ ├── memtable.cc │ ├── memtable.h │ ├── 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 │ ├── doc.css │ ├── impl.html │ ├── index.html │ ├── log_format.txt │ └── table_format.txt ├── 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_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_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 ├── leveldbwrapper.cpp ├── leveldbwrapper.h ├── limitedmap.h ├── linalg ├── COPYING ├── Makefile.am ├── README.md ├── autogen.sh ├── build-aux │ └── m4 │ │ └── truthcoin_linalg.m4 ├── configure.ac ├── liblinalg.pc.in └── src │ ├── tc_mat.c │ └── tc_mat.h ├── main.cpp ├── main.h ├── merkleblock.cpp ├── merkleblock.h ├── miner.cpp ├── miner.h ├── mruset.h ├── net.cpp ├── net.h ├── netbase.cpp ├── netbase.h ├── noui.cpp ├── noui.h ├── obj-test └── .gitignore ├── obj └── .gitignore ├── pow.cpp ├── pow.h ├── primitives ├── block.cpp ├── block.h ├── market.cpp ├── market.h ├── transaction.cpp └── transaction.h ├── protocol.cpp ├── protocol.h ├── pubkey.cpp ├── pubkey.h ├── qt ├── Makefile ├── addressbookpage.cpp ├── addressbookpage.h ├── addresstablemodel.cpp ├── addresstablemodel.h ├── askpassphrasedialog.cpp ├── askpassphrasedialog.h ├── ballotballotfilterproxymodel.cpp ├── ballotballotfilterproxymodel.h ├── ballotballottablemodel.cpp ├── ballotballottablemodel.h ├── ballotballotwindow.cpp ├── ballotballotwindow.h ├── ballotbranchwindow.cpp ├── ballotbranchwindow.h ├── ballotoutcomefilterproxymodel.cpp ├── ballotoutcomefilterproxymodel.h ├── ballotoutcometablemodel.cpp ├── ballotoutcometablemodel.h ├── ballotoutcomewindow.cpp ├── ballotoutcomewindow.h ├── ballotsealedvotefilterproxymodel.cpp ├── ballotsealedvotefilterproxymodel.h ├── ballotsealedvotetablemodel.cpp ├── ballotsealedvotetablemodel.h ├── ballotsealedvotewindow.cpp ├── ballotsealedvotewindow.h ├── ballotview.cpp ├── ballotview.h ├── ballotvotefilterproxymodel.cpp ├── ballotvotefilterproxymodel.h ├── ballotvotetablemodel.cpp ├── ballotvotetablemodel.h ├── ballotvotewindow.cpp ├── ballotvotewindow.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 │ ├── editaddressdialog.ui │ ├── helpmessagedialog.ui │ ├── intro.ui │ ├── openuridialog.ui │ ├── optionsdialog.ui │ ├── overviewpage.ui │ ├── receivecoinsdialog.ui │ ├── receiverequestdialog.ui │ ├── rpcconsole.ui │ ├── sendcoinsdialog.ui │ ├── sendcoinsentry.ui │ ├── signverifymessagedialog.ui │ └── transactiondescdialog.ui ├── guiconstants.h ├── guiutil.cpp ├── guiutil.h ├── intro.cpp ├── intro.h ├── locale │ ├── truthcoin_ach.ts │ ├── truthcoin_af_ZA.ts │ ├── truthcoin_ar.ts │ ├── truthcoin_be_BY.ts │ ├── truthcoin_bg.ts │ ├── truthcoin_bs.ts │ ├── truthcoin_ca.ts │ ├── truthcoin_ca@valencia.ts │ ├── truthcoin_ca_ES.ts │ ├── truthcoin_cmn.ts │ ├── truthcoin_cs.ts │ ├── truthcoin_cy.ts │ ├── truthcoin_da.ts │ ├── truthcoin_de.ts │ ├── truthcoin_el_GR.ts │ ├── truthcoin_en.ts │ ├── truthcoin_eo.ts │ ├── truthcoin_es.ts │ ├── truthcoin_es_CL.ts │ ├── truthcoin_es_DO.ts │ ├── truthcoin_es_MX.ts │ ├── truthcoin_es_UY.ts │ ├── truthcoin_et.ts │ ├── truthcoin_eu_ES.ts │ ├── truthcoin_fa.ts │ ├── truthcoin_fa_IR.ts │ ├── truthcoin_fi.ts │ ├── truthcoin_fr.ts │ ├── truthcoin_fr_CA.ts │ ├── truthcoin_gl.ts │ ├── truthcoin_gu_IN.ts │ ├── truthcoin_he.ts │ ├── truthcoin_hi_IN.ts │ ├── truthcoin_hr.ts │ ├── truthcoin_hu.ts │ ├── truthcoin_id_ID.ts │ ├── truthcoin_it.ts │ ├── truthcoin_ja.ts │ ├── truthcoin_ka.ts │ ├── truthcoin_kk_KZ.ts │ ├── truthcoin_ko_KR.ts │ ├── truthcoin_ky.ts │ ├── truthcoin_la.ts │ ├── truthcoin_lt.ts │ ├── truthcoin_lv_LV.ts │ ├── truthcoin_mn.ts │ ├── truthcoin_ms_MY.ts │ ├── truthcoin_nb.ts │ ├── truthcoin_nl.ts │ ├── truthcoin_pam.ts │ ├── truthcoin_pl.ts │ ├── truthcoin_pt_BR.ts │ ├── truthcoin_pt_PT.ts │ ├── truthcoin_ro_RO.ts │ ├── truthcoin_ru.ts │ ├── truthcoin_sah.ts │ ├── truthcoin_sk.ts │ ├── truthcoin_sl_SI.ts │ ├── truthcoin_sq.ts │ ├── truthcoin_sr.ts │ ├── truthcoin_sv.ts │ ├── truthcoin_th_TH.ts │ ├── truthcoin_tr.ts │ ├── truthcoin_uk.ts │ ├── truthcoin_ur_PK.ts │ ├── truthcoin_uz@Cyrl.ts │ ├── truthcoin_vi.ts │ ├── truthcoin_vi_VN.ts │ ├── truthcoin_zh_CN.ts │ ├── truthcoin_zh_HK.ts │ └── truthcoin_zh_TW.ts ├── macdockiconhandler.h ├── macdockiconhandler.mm ├── macnotificationhandler.h ├── macnotificationhandler.mm ├── marketbranchfilterproxymodel.cpp ├── marketbranchfilterproxymodel.h ├── marketbranchtablemodel.cpp ├── marketbranchtablemodel.h ├── marketbranchwindow.cpp ├── marketbranchwindow.h ├── marketdecisionfilterproxymodel.cpp ├── marketdecisionfilterproxymodel.h ├── marketdecisiontablemodel.cpp ├── marketdecisiontablemodel.h ├── marketdecisionwindow.cpp ├── marketdecisionwindow.h ├── marketmarketfilterproxymodel.cpp ├── marketmarketfilterproxymodel.h ├── marketmarkettablemodel.cpp ├── marketmarkettablemodel.h ├── marketmarketwindow.cpp ├── marketmarketwindow.h ├── markettradefilterproxymodel.cpp ├── markettradefilterproxymodel.h ├── markettradetablemodel.cpp ├── markettradetablemodel.h ├── markettradewindow.cpp ├── markettradewindow.h ├── marketview.cpp ├── marketview.h ├── marketviewgraph.cpp ├── marketviewgraph.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 ├── qvalidatedlineedit.cpp ├── qvalidatedlineedit.h ├── qvaluecombobox.cpp ├── qvaluecombobox.h ├── receivecoinsdialog.cpp ├── receivecoinsdialog.h ├── receiverequestdialog.cpp ├── receiverequestdialog.h ├── recentrequeststablemodel.cpp ├── recentrequeststablemodel.h ├── res │ ├── icons │ │ ├── about.png │ │ ├── about_qt.png │ │ ├── add.png │ │ ├── address-book.png │ │ ├── ballot.png │ │ ├── clock1.png │ │ ├── clock2.png │ │ ├── clock3.png │ │ ├── clock4.png │ │ ├── clock5.png │ │ ├── configure.png │ │ ├── connect0.png │ │ ├── connect1.png │ │ ├── connect2.png │ │ ├── connect3.png │ │ ├── connect4.png │ │ ├── debugwindow.png │ │ ├── decisions.png │ │ ├── edit.png │ │ ├── editcopy.png │ │ ├── editpaste.png │ │ ├── export.png │ │ ├── eye.png │ │ ├── eye_minus.png │ │ ├── eye_plus.png │ │ ├── filesave.png │ │ ├── history.png │ │ ├── info.png │ │ ├── key.png │ │ ├── lock_closed.png │ │ ├── lock_open.png │ │ ├── market.png │ │ ├── open.png │ │ ├── overview.png │ │ ├── quit.png │ │ ├── receive.png │ │ ├── remove.png │ │ ├── resolve.png │ │ ├── send.png │ │ ├── synced.png │ │ ├── transaction0.png │ │ ├── transaction2.png │ │ ├── transaction_conflicted.png │ │ ├── truthcoin.icns │ │ ├── truthcoin.ico │ │ ├── truthcoin.png │ │ ├── tx_inout.png │ │ ├── tx_input.png │ │ ├── tx_mined.png │ │ ├── tx_output.png │ │ └── verify.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 │ ├── spinner.png │ ├── src │ │ ├── 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 │ │ ├── mine.svg │ │ ├── qt.svg │ │ ├── truthcoin.svg │ │ ├── tx_in.svg │ │ ├── tx_inout.svg │ │ └── verify.svg │ └── truthcoin-qt-res.rc ├── resolvevotecoltablemodel.cpp ├── resolvevotecoltablemodel.h ├── resolvevotedialog.cpp ├── resolvevotedialog.h ├── resolvevotegraph.cpp ├── resolvevotegraph.h ├── resolvevoteinputtablemodel.cpp ├── resolvevoteinputtablemodel.h ├── resolvevoterowtablemodel.cpp ├── resolvevoterowtablemodel.h ├── rpcconsole.cpp ├── rpcconsole.h ├── scicon.cpp ├── scicon.h ├── sendcoinsdialog.cpp ├── sendcoinsdialog.h ├── sendcoinsentry.cpp ├── sendcoinsentry.h ├── signverifymessagedialog.cpp ├── signverifymessagedialog.h ├── splashscreen.cpp ├── splashscreen.h ├── test │ ├── Makefile │ ├── paymentrequestdata.h │ ├── paymentservertests.cpp │ ├── paymentservertests.h │ ├── test_main.cpp │ ├── uritests.cpp │ └── uritests.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 ├── truthcoin.cpp ├── truthcoin.qrc ├── truthcoin_locale.qrc ├── truthcoinaddressvalidator.cpp ├── truthcoinaddressvalidator.h ├── truthcoinamountfield.cpp ├── truthcoinamountfield.h ├── truthcoingui.cpp ├── truthcoingui.h ├── truthcoinstrings.cpp ├── truthcoinunits.cpp ├── truthcoinunits.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 ├── rpcblockchain.cpp ├── rpcclient.cpp ├── rpcclient.h ├── rpcdump.cpp ├── rpcmining.cpp ├── rpcmisc.cpp ├── rpcnet.cpp ├── rpcprotocol.cpp ├── rpcprotocol.h ├── rpcrawtransaction.cpp ├── rpcserver.cpp ├── rpcserver.h ├── rpcwallet.cpp ├── script ├── interpreter.cpp ├── interpreter.h ├── script.cpp ├── script.h ├── script_error.cpp ├── script_error.h ├── sigcache.cpp ├── sigcache.h ├── sign.cpp ├── sign.h ├── standard.cpp ├── standard.h ├── truthcoinconsensus.cpp └── truthcoinconsensus.h ├── secp256k1 ├── .gitignore ├── .travis.yml ├── COPYING ├── Makefile.am ├── README.md ├── TODO ├── autogen.sh ├── build-aux │ └── m4 │ │ └── truthcoin_secp.m4 ├── configure.ac ├── include │ └── secp256k1.h ├── libsecp256k1.pc.in ├── obj │ └── .gitignore └── src │ ├── bench.h │ ├── bench_inv.c │ ├── bench_recover.c │ ├── bench_sign.c │ ├── bench_verify.c │ ├── ecdsa.h │ ├── ecdsa_impl.h │ ├── eckey.h │ ├── eckey_impl.h │ ├── ecmult.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_gmp.h │ ├── field_gmp_impl.h │ ├── field_impl.h │ ├── group.h │ ├── group_impl.h │ ├── java │ ├── org │ │ └── truthcoin │ │ │ └── NativeSecp256k1.java │ ├── org_truthcoin_NativeSecp256k1.c │ └── org_truthcoin_NativeSecp256k1.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 │ ├── secp256k1.c │ ├── testrand.h │ ├── testrand_impl.h │ ├── tests.c │ └── util.h ├── serialize.h ├── streams.h ├── sync.cpp ├── sync.h ├── test ├── Checkpoints_tests.cpp ├── DoS_tests.cpp ├── Makefile ├── README.md ├── accounting_tests.cpp ├── alert_tests.cpp ├── allocator_tests.cpp ├── arith_uint256_tests.cpp ├── base32_tests.cpp ├── base58_tests.cpp ├── base64_tests.cpp ├── bctest.py ├── bignum.h ├── bip32_tests.cpp ├── bloom_tests.cpp ├── buildenv.py.in ├── checkblock_tests.cpp ├── coins_tests.cpp ├── compress_tests.cpp ├── crypto_tests.cpp ├── data │ ├── README.md │ ├── alertTests.raw │ ├── base58_encode_decode.json │ ├── base58_keys_invalid.json │ ├── base58_keys_valid.json │ ├── blanktx.hex │ ├── script_invalid.json │ ├── script_valid.json │ ├── sig_canonical.json │ ├── sig_noncanonical.json │ ├── sighash.json │ ├── truthcoin-util-test.json │ ├── tt-delin1-out.hex │ ├── tt-delout1-out.hex │ ├── tt-locktime317000-out.hex │ ├── tx394b54bb.hex │ ├── tx_invalid.json │ ├── tx_valid.json │ ├── txcreate1.hex │ ├── txcreate2.hex │ └── txcreatesign.hex ├── getarg_tests.cpp ├── hash_tests.cpp ├── key_tests.cpp ├── main_tests.cpp ├── miner_tests.cpp ├── mruset_tests.cpp ├── multisig_tests.cpp ├── netbase_tests.cpp ├── pmt_tests.cpp ├── rpc_tests.cpp ├── rpc_wallet_tests.cpp ├── sanity_tests.cpp ├── script_P2SH_tests.cpp ├── script_tests.cpp ├── scriptnum_tests.cpp ├── serialize_tests.cpp ├── sighash_tests.cpp ├── sigopcount_tests.cpp ├── skiplist_tests.cpp ├── test_truthcoin.cpp ├── timedata_tests.cpp ├── transaction_tests.cpp ├── truthcoin-util-test.py ├── uint256_tests.cpp ├── univalue_tests.cpp ├── util_tests.cpp └── wallet_tests.cpp ├── threadsafety.h ├── timedata.cpp ├── timedata.h ├── tinyformat.h ├── truthcoin-cli-res.rc ├── truthcoin-cli.cpp ├── truthcoin-tx.cpp ├── truthcoind-res.rc ├── truthcoind.cpp ├── txdb.cpp ├── txdb.h ├── txmempool.cpp ├── txmempool.h ├── ui_interface.h ├── uint256.cpp ├── uint256.h ├── undo.h ├── univalue ├── gen.cpp ├── univalue.cpp ├── univalue.h ├── univalue_escapes.h ├── univalue_read.cpp └── univalue_write.cpp ├── util.cpp ├── util.h ├── utilmoneystr.cpp ├── utilmoneystr.h ├── utilstrencodings.cpp ├── utilstrencodings.h ├── utiltime.cpp ├── utiltime.h ├── version.h ├── wallet.cpp ├── wallet.h ├── wallet_ismine.cpp ├── wallet_ismine.h ├── walletdb.cpp └── walletdb.h /.gitattributes: -------------------------------------------------------------------------------- 1 | src/clientversion.cpp export-subst 2 | -------------------------------------------------------------------------------- /.tx/config: -------------------------------------------------------------------------------- 1 | [main] 2 | host = https://www.transifex.com 3 | 4 | [bitcoin.qt-translation-010x] 5 | file_filter = src/qt/locale/bitcoin_.ts 6 | source_file = src/qt/locale/bitcoin_en.ts 7 | source_lang = en 8 | -------------------------------------------------------------------------------- /COPYING: -------------------------------------------------------------------------------- 1 | Copyright (c) 2009-2015 Bitcoin Developers 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /INSTALL: -------------------------------------------------------------------------------- 1 | Building Truthcoin 2 | 3 | See doc/build-*.md for instructions on building truthcoind, 4 | the intended-for-services, no-graphical-interface, reference 5 | implementation of Truthcoin. -------------------------------------------------------------------------------- /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 --warnings=all 10 | -------------------------------------------------------------------------------- /build-aux/m4/truthcoin_subdir_to_include.m4: -------------------------------------------------------------------------------- 1 | dnl TRUTHCOIN_SUBDIR_TO_INCLUDE([CPPFLAGS-VARIABLE-NAME],[SUBDIRECTORY-NAME],[HEADER-FILE]) 2 | dnl SUBDIRECTORY-NAME must end with a path separator 3 | AC_DEFUN([TRUTHCOIN_SUBDIR_TO_INCLUDE],[ 4 | if test "x$2" = "x"; then 5 | AC_MSG_RESULT([default]) 6 | else 7 | echo "#include <$2$3.h>" >conftest.cpp 8 | 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`] 9 | AC_MSG_RESULT([${newinclpath}]) 10 | if test "x${newinclpath}" != "x"; then 11 | eval "$1=\"\$$1\"' -I${newinclpath}'" 12 | fi 13 | fi 14 | ]) 15 | -------------------------------------------------------------------------------- /contrib/bitrpc/README.md: -------------------------------------------------------------------------------- 1 | ### BitRPC 2 | Allows for sending of all standard Truthcoin commands via RPC rather than as command line args. 3 | 4 | ### Looking for Wallet Tools? 5 | BitRPC.py is able to do the exact same thing as `walletchangepass.py` and `walletunlock.py`. Their respective commands in BitRPC.py are: 6 | 7 | bitrpc.py walletpassphrasechange 8 | bitrpc.py walletpassphrase -------------------------------------------------------------------------------- /contrib/debian/README.md: -------------------------------------------------------------------------------- 1 | 2 | Debian 3 | ==================== 4 | This directory contains files used to package truthcoind/truthcoin-qt 5 | for Debian-based Linux systems. If you compile truthcoind/truthcoin-qt yourself, there are some useful files here. 6 | 7 | ## truthcoin: URI support ## 8 | 9 | 10 | truthcoin-qt.desktop (Gnome / Open Desktop) 11 | To install: 12 | 13 | sudo desktop-file-install truthcoin-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 truthcoin-qt binary to `/usr/bin` 18 | and the `../../share/pixmaps/truthcoin128.png` to `/usr/share/pixmaps` 19 | 20 | truthcoin-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/rules: -------------------------------------------------------------------------------- 1 | #!/usr/bin/make -f 2 | # -*- mode: makefile; coding: utf-8 -*- 3 | 4 | #DEB_MAKE_CHECK_TARGET = test_truthcoin 5 | #build/truthcoind:: 6 | # $(if $(filter nocheck,$(DEB_BUILD_OPTIONS)),,src/test_truthcoin) 7 | 8 | DEB_INSTALL_EXAMPLES_truthcoind += debian/examples/* 9 | DEB_INSTALL_MANPAGES_truthcoind += debian/manpages/* 10 | 11 | %: 12 | dh --with bash-completion $@ 13 | 14 | override_dh_auto_clean: 15 | if [ -f Makefile ]; then $(MAKE) distclean; fi 16 | rm -rf Makefile.in aclocal.m4 configure src/Makefile.in src/truthcoin-config.h.in src/build-aux src/qt/Makefile.in src/qt/test/Makefile.in src/test/Makefile.in 17 | 18 | # Yea, autogen should be run on the source archive, but I like doing git archive 19 | override_dh_auto_configure: 20 | ./autogen.sh 21 | ./configure 22 | 23 | override_dh_auto_test: 24 | make check 25 | -------------------------------------------------------------------------------- /contrib/debian/source/format: -------------------------------------------------------------------------------- 1 | 3.0 (quilt) 2 | -------------------------------------------------------------------------------- /contrib/debian/truthcoin-qt.desktop: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Encoding=UTF-8 3 | Name=Truthcoin 4 | Comment=Truthcoin P2P Cryptocurrency 5 | Comment[fr]=Truthcoin, monnaie virtuelle cryptographique pair à pair 6 | Comment[tr]=Truthcoin, eşten eşe kriptografik sanal para birimi 7 | Exec=truthcoin-qt %u 8 | Terminal=false 9 | Type=Application 10 | Icon=truthcoin128 11 | MimeType=x-scheme-handler/truthcoin; 12 | Categories=Office;Finance; 13 | -------------------------------------------------------------------------------- /contrib/debian/truthcoin-qt.install: -------------------------------------------------------------------------------- 1 | usr/local/bin/truthcoin-qt usr/bin 2 | share/pixmaps/truthcoin32.xpm usr/share/pixmaps 3 | share/pixmaps/truthcoin16.xpm usr/share/pixmaps 4 | share/pixmaps/truthcoin128.png usr/share/pixmaps 5 | debian/truthcoin-qt.desktop usr/share/applications 6 | debian/truthcoin-qt.protocol usr/share/kde4/services/ 7 | -------------------------------------------------------------------------------- /contrib/debian/truthcoin-qt.lintian-overrides: -------------------------------------------------------------------------------- 1 | # Linked code is Expat - only Debian packaging is GPL-2+ 2 | truthcoin-qt: possible-gpl-code-linked-with-openssl 3 | -------------------------------------------------------------------------------- /contrib/debian/truthcoin-qt.protocol: -------------------------------------------------------------------------------- 1 | [Protocol] 2 | exec=truthcoin-qt '%u' 3 | protocol=truthcoin 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/truthcoind.bash-completion: -------------------------------------------------------------------------------- 1 | contrib/truthcoind.bash-completion truthcoind 2 | -------------------------------------------------------------------------------- /contrib/debian/truthcoind.examples: -------------------------------------------------------------------------------- 1 | debian/examples/truthcoin.conf 2 | -------------------------------------------------------------------------------- /contrib/debian/truthcoind.install: -------------------------------------------------------------------------------- 1 | usr/local/bin/truthcoind usr/bin 2 | usr/local/bin/truthcoin-cli usr/bin 3 | -------------------------------------------------------------------------------- /contrib/debian/truthcoind.lintian-overrides: -------------------------------------------------------------------------------- 1 | # Linked code is Expat - only Debian packaging is GPL-2+ 2 | truthcoind: possible-gpl-code-linked-with-openssl 3 | -------------------------------------------------------------------------------- /contrib/debian/truthcoind.manpages: -------------------------------------------------------------------------------- 1 | debian/manpages/truthcoind.1 2 | debian/manpages/truthcoin.conf.5 3 | -------------------------------------------------------------------------------- /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/;s/\-src//,dversionmangle=s/~dfsg\d*// \ 5 | http://sf.net/truthcoin/truthcoin-(\d.*)-linux\.tar\.gz debian 6 | opts=uversionmangle=s/(\d)(alpha|beta|rc)/$1~$2/,dversionmangle=s/~dfsg\d*// \ 7 | http://githubredir.debian.net/github/truthcoin/truthcoin v(.*).tar.gz 8 | -------------------------------------------------------------------------------- /contrib/gitian-downloader/aschildbach-key.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/contrib/gitian-downloader/aschildbach-key.pgp -------------------------------------------------------------------------------- /contrib/gitian-downloader/bluematt-key.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/contrib/gitian-downloader/bluematt-key.pgp -------------------------------------------------------------------------------- /contrib/gitian-downloader/devrandom-key.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/contrib/gitian-downloader/devrandom-key.pgp -------------------------------------------------------------------------------- /contrib/gitian-downloader/gavinandresen-key.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/contrib/gitian-downloader/gavinandresen-key.pgp -------------------------------------------------------------------------------- /contrib/gitian-downloader/jonasschnelli.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/contrib/gitian-downloader/jonasschnelli.pgp -------------------------------------------------------------------------------- /contrib/gitian-downloader/luke-jr-key.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/contrib/gitian-downloader/luke-jr-key.pgp -------------------------------------------------------------------------------- /contrib/gitian-downloader/sipa-key.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/contrib/gitian-downloader/sipa-key.pgp -------------------------------------------------------------------------------- /contrib/gitian-downloader/tcatm-key.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/contrib/gitian-downloader/tcatm-key.pgp -------------------------------------------------------------------------------- /contrib/init/README.md: -------------------------------------------------------------------------------- 1 | Sample configuration files for: 2 | 3 | SystemD: truthcoind.service 4 | Upstart: truthcoind.conf 5 | OpenRC: truthcoind.openrc 6 | truthcoind.openrcconf 7 | 8 | have been made available to assist packagers in creating node packages here. 9 | 10 | See doc/init.md for more information. 11 | -------------------------------------------------------------------------------- /contrib/init/truthcoind.openrcconf: -------------------------------------------------------------------------------- 1 | # /etc/conf.d/truthcoind: config file for /etc/init.d/truthcoind 2 | 3 | # Config file location 4 | #TRUTHCOIND_CONFIGFILE="/etc/truthcoin/truthcoin.conf" 5 | 6 | # What directory to write pidfile to? (created and owned by $TRUTHCOIND_USER) 7 | #TRUTHCOIND_PIDDIR="/var/run/truthcoind" 8 | 9 | # What filename to give the pidfile 10 | #TRUTHCOIND_PIDFILE="${TRUTHCOIND_PIDDIR}/truthcoind.pid" 11 | 12 | # Where to write truthcoind data (be mindful that the blockchain is large) 13 | #TRUTHCOIND_DATADIR="/var/lib/truthcoind" 14 | 15 | # User and group to own truthcoind process 16 | #TRUTHCOIND_USER="truthcoin" 17 | #TRUTHCOIND_GROUP="truthcoin" 18 | 19 | # Path to truthcoind executable 20 | #TRUTHCOIND_BIN="/usr/bin/truthcoind" 21 | 22 | # Nice value to run truthcoind under 23 | #TRUTHCOIND_NICE=0 24 | 25 | # Additional options (avoid -conf and -datadir, use flags above) 26 | TRUTHCOIND_OPTS="-disablewallet" 27 | 28 | -------------------------------------------------------------------------------- /contrib/init/truthcoind.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Truthcoin's distributed currency daemon 3 | After=network.target 4 | 5 | [Service] 6 | User=truthcoin 7 | Group=truthcoin 8 | 9 | Type=forking 10 | PIDFile=/var/lib/truthcoind/truthcoind.pid 11 | ExecStart=/usr/bin/truthcoind -daemon -pid=/var/lib/truthcoind/truthcoind.pid \ 12 | -conf=/etc/truthcoin/truthcoin.conf -datadir=/var/lib/truthcoind -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.cfg: -------------------------------------------------------------------------------- 1 | 2 | # truthcoind RPC settings (linearize-hashes) 3 | rpcuser=someuser 4 | rpcpassword=somepassword 5 | host=127.0.0.1 6 | port=8332 7 | 8 | # bootstrap.dat hashlist settings (linearize-hashes) 9 | max_height=313000 10 | 11 | # bootstrap.dat input/output settings (linearize-data) 12 | netmagic=f9beb4d9 13 | input=/home/example/.truthcoin/blocks 14 | output_file=/home/example/Downloads/bootstrap.dat 15 | hashlist=hashlist.txt 16 | split_year=1 17 | 18 | # Maxmimum size in bytes of out-of-order blocks cache in memory 19 | out_of_order_cache_sz = 100000000 20 | -------------------------------------------------------------------------------- /contrib/macdeploy/DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/contrib/macdeploy/DS_Store -------------------------------------------------------------------------------- /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 `Truthcoin-Qt.dmg`. 15 | 16 | -------------------------------------------------------------------------------- /contrib/macdeploy/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/contrib/macdeploy/background.png -------------------------------------------------------------------------------- /contrib/macdeploy/background.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/contrib/macdeploy/background.psd -------------------------------------------------------------------------------- /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.png 14 | icon_size 15 | 96 16 | applications_symlink 17 | 18 | items_position 19 | 20 | Applications 21 | 22 | 370 23 | 156 24 | 25 | Truthcoin-Qt.app 26 | 27 | 128 28 | 156 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /contrib/qos/README.md: -------------------------------------------------------------------------------- 1 | ### Qos ### 2 | 3 | This is a Linux bash script that will set up tc to limit the outgoing bandwidth for connections to the Truthcoin network. It limits outbound TCP traffic with a source or destination port of 8333, but not if the destination IP is within a LAN (defined as 192.168.x.x). 4 | 5 | This means one can have an always-on truthcoind instance running, and another local truthcoind/truthcoin-qt instance which connects to this node and receives blocks from it. 6 | -------------------------------------------------------------------------------- /contrib/qt_translations.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | # Helpful little script that spits out a comma-separated list of 4 | # language codes for Qt icons that should be included 5 | # in binary truthcoin distributions 6 | 7 | import glob 8 | import os 9 | import re 10 | import sys 11 | 12 | if len(sys.argv) != 3: 13 | sys.exit("Usage: %s $QTDIR/translations $TRUTHCOINDIR/src/qt/locale"%sys.argv[0]) 14 | 15 | d1 = sys.argv[1] 16 | d2 = sys.argv[2] 17 | 18 | l1 = set([ re.search(r'qt_(.*).qm', f).group(1) for f in glob.glob(os.path.join(d1, 'qt_*.qm')) ]) 19 | l2 = set([ re.search(r'truthcoin_(.*).qm', f).group(1) for f in glob.glob(os.path.join(d2, 'truthcoin_*.qm')) ]) 20 | 21 | print ",".join(sorted(l1.intersection(l2))) 22 | 23 | -------------------------------------------------------------------------------- /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 [share/seeds](/share/seeds)). 5 | 6 | The 512 seeds compiled into the 0.10 release were created from sipa's DNS seed data, like this: 7 | 8 | curl -s http://truthcoin.sipa.be/seeds.txt | makeseeds.py 9 | -------------------------------------------------------------------------------- /contrib/spendfrom/setup.py: -------------------------------------------------------------------------------- 1 | from distutils.core import setup 2 | setup(name='btcspendfrom', 3 | version='1.0', 4 | description='Command-line utility for truthcoin "coin control"', 5 | author='Gavin Andresen', 6 | author_email='gavin@truthcoinfoundation.org', 7 | requires=['jsonrpc'], 8 | scripts=['spendfrom.py'], 9 | ) 10 | -------------------------------------------------------------------------------- /contrib/test-patches/README.md: -------------------------------------------------------------------------------- 1 | ### Test Patches ### 2 | 3 | These patches are applied when the automated pull-tester 4 | tests each pull and when master is tested using jenkins. 5 | You can find more information about the tests run at 6 | [http://jenkins.bluematt.me/pull-tester/files/ 7 | ](http://jenkins.bluematt.me/pull-tester/files/) -------------------------------------------------------------------------------- /contrib/test-patches/temp-revert-2.patch: -------------------------------------------------------------------------------- 1 | commit cfae26916dba311f6f75d444301c1f9362267c3e 2 | Author: Matt Corallo 3 | Date: Sun Mar 24 20:45:50 2013 -0400 4 | 5 | Revert "Checkpoint at first block in 11 March chain fork" 6 | 7 | This reverts commit f817c496a1482d05b22c8e539de67f07db1c09d9. 8 | 9 | diff --git a/src/checkpoints.cpp b/src/checkpoints.cpp 10 | index 62234b9..9b11f0b 100644 11 | --- a/src/checkpoints.cpp 12 | +++ b/src/checkpoints.cpp 13 | @@ -44,7 +44,6 @@ namespace Checkpoints 14 | (193000, uint256("0x000000000000059f452a5f7340de6682a977387c17010ff6e6c3bd83ca8b1317")) 15 | (210000, uint256("0x000000000000048b95347e83192f69cf0366076336c639f9b7228e9ba171342e")) 16 | (216116, uint256("0x00000000000001b4f4b433e81ee46494af945cf96014816a4e2370f11b23df4e")) 17 | - (225430, uint256("0x00000000000001c108384350f74090433e7fcf79a606b8e797f065b130575932")) 18 | ; 19 | static const CCheckpointData data = { 20 | &mapCheckpoints, 21 | -------------------------------------------------------------------------------- /contrib/testgen/README.md: -------------------------------------------------------------------------------- 1 | ### TestGen ### 2 | 3 | Utilities to generate test vectors for the data-driven Truthcoin 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/truthcoin-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/editaddressdialog.ui \ 7 | ../src/qt/forms/helpmessagedialog.ui \ 8 | ../src/qt/forms/intro.ui \ 9 | ../src/qt/forms/openuridialog.ui \ 10 | ../src/qt/forms/optionsdialog.ui \ 11 | ../src/qt/forms/overviewpage.ui \ 12 | ../src/qt/forms/receivecoinsdialog.ui \ 13 | ../src/qt/forms/receiverequestdialog.ui \ 14 | ../src/qt/forms/rpcconsole.ui \ 15 | ../src/qt/forms/sendcoinsdialog.ui \ 16 | ../src/qt/forms/sendcoinsentry.ui \ 17 | ../src/qt/forms/signverifymessagedialog.ui \ 18 | ../src/qt/forms/transactiondescdialog.ui \ 19 | 20 | RESOURCES += \ 21 | ../src/qt/truthcoin.qrc 22 | -------------------------------------------------------------------------------- /contrib/verifysfbinaries/README.md: -------------------------------------------------------------------------------- 1 | ### Verify SF Binaries ### 2 | This script attempts to download the signature file `SHA256SUMS.asc` from https://truthcoin.org. 3 | 4 | It first checks if the signature passes, and then downloads the files specified in the file, and checks if the hashes of these files match those that are specified in the signature file. 5 | 6 | The script returns 0 if everything passes the checks. It returns 1 if either the signature check or the hash check doesn't pass. If an error occurs the return value is 2. -------------------------------------------------------------------------------- /depends/.gitignore: -------------------------------------------------------------------------------- 1 | SDKs/ 2 | work/ 3 | built/ 4 | sources/ 5 | config.site 6 | -------------------------------------------------------------------------------- /depends/builders/darwin.mk: -------------------------------------------------------------------------------- 1 | build_darwin_CC: = $(shell xcrun -f clang) 2 | build_darwin_CXX: = $(shell xcrun -f clang++) 3 | build_darwin_AR: = $(shell xcrun -f ar) 4 | build_darwin_RANLIB: = $(shell xcrun -f ranlib) 5 | build_darwin_STRIP: = $(shell xcrun -f strip) 6 | build_darwin_OTOOL: = $(shell xcrun -f otool) 7 | build_darwin_NM: = $(shell xcrun -f nm) 8 | build_darwin_INSTALL_NAME_TOOL:=$(shell xcrun -f install_name_tool) 9 | build_darwin_SHA256SUM = shasum -a 256 10 | build_darwin_DOWNLOAD = curl --connect-timeout $(DOWNLOAD_CONNECT_TIMEOUT) --retry $(DOWNLOAD_RETRIES) -L -o 11 | 12 | #darwin host on darwin builder. overrides darwin host preferences. 13 | darwin_CC=$(shell xcrun -f clang) -mmacosx-version-min=$(OSX_MIN_VERSION) 14 | darwin_CXX:=$(shell xcrun -f clang++) -mmacosx-version-min=$(OSX_MIN_VERSION) 15 | darwin_AR:=$(shell xcrun -f ar) 16 | darwin_RANLIB:=$(shell xcrun -f ranlib) 17 | darwin_STRIP:=$(shell xcrun -f strip) 18 | darwin_LIBTOOL:=$(shell xcrun -f libtool) 19 | darwin_OTOOL:=$(shell xcrun -f otool) 20 | darwin_NM:=$(shell xcrun -f nm) 21 | darwin_INSTALL_NAME_TOOL:=$(shell xcrun -f install_name_tool) 22 | darwin_native_toolchain= 23 | -------------------------------------------------------------------------------- /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 = wget --timeout=$(DOWNLOAD_CONNECT_TIMEOUT) --tries=$(DOWNLOAD_RETRIES) -nv -O 3 | -------------------------------------------------------------------------------- /depends/hosts/darwin.mk: -------------------------------------------------------------------------------- 1 | OSX_MIN_VERSION=10.6 2 | OSX_SDK_VERSION=10.7 3 | OSX_SDK=$(SDK_PATH)/MacOSX$(OSX_SDK_VERSION).sdk 4 | LD64_VERSION=241.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) 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) 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) 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/bdb.mk: -------------------------------------------------------------------------------- 1 | package=bdb 2 | $(package)_version=4.8.30 3 | $(package)_download_path=http://download.oracle.com/berkeley-db 4 | $(package)_file_name=db-$($(package)_version).NC.tar.gz 5 | $(package)_sha256_hash=12edc0df75bf9abd7f82f821795bcee50f42cb2e5f76a6a281b85732798364ef 6 | $(package)_build_subdir=build_unix 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-shared --enable-cxx --disable-replication 10 | $(package)_config_opts_mingw32=--enable-mingw 11 | $(package)_config_opts_linux=--with-pic 12 | endef 13 | 14 | define $(package)_preprocess_cmds 15 | sed -i.old 's/__atomic_compare_exchange/__atomic_compare_exchange_db/' dbinc/atomic.h 16 | endef 17 | 18 | define $(package)_config_cmds 19 | ../dist/$($(package)_autoconf) 20 | endef 21 | 22 | define $(package)_build_cmds 23 | $(MAKE) libdb_cxx-4.8.a libdb-4.8.a 24 | endef 25 | 26 | define $(package)_stage_cmds 27 | $(MAKE) DESTDIR=$($(package)_staging_dir) install_lib install_include 28 | endef 29 | -------------------------------------------------------------------------------- /depends/packages/dbus.mk: -------------------------------------------------------------------------------- 1 | package=dbus 2 | $(package)_version=1.8.6 3 | $(package)_download_path=http://dbus.freedesktop.org/releases/dbus 4 | $(package)_file_name=$(package)-$($(package)_version).tar.gz 5 | $(package)_sha256_hash=eded83ca007b719f32761e60fd8b9ffd0f5796a4caf455b01b5a5ef740ebd23f 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.1.0 3 | $(package)_download_path=http://sourceforge.net/projects/expat/files/expat/$($(package)_version) 4 | $(package)_file_name=$(package)-$($(package)_version).tar.gz 5 | $(package)_sha256_hash=823705472f816df21c8f6aa026dd162b280806838bb55b3432b0fb1fcca7eb86 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/fontconfig.mk: -------------------------------------------------------------------------------- 1 | package=fontconfig 2 | $(package)_version=2.11.1 3 | $(package)_download_path=http://www.freedesktop.org/software/fontconfig/release/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=dc62447533bca844463a3c3fd4083b57c90f18a70506e7a9f4936b5a1e516a99 6 | $(package)_dependencies=freetype expat 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-docs --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/freetype.mk: -------------------------------------------------------------------------------- 1 | package=freetype 2 | $(package)_version=2.5.3 3 | $(package)_download_path=http://downloads.sourceforge.net/$(package) 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=c0848b29d52ef3ca27ad92e08351f023c5e24ce8cea7d8fe69fc96358e65f75e 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--without-zlib --without-png --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/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/libxcb.mk: -------------------------------------------------------------------------------- 1 | package=libxcb 2 | $(package)_version=1.10 3 | $(package)_download_path=http://xcb.freedesktop.org/dist 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=98d9ab05b636dd088603b64229dd1ab2d2cc02ab807892e107d674f9c3f2d5b5 6 | $(package)_dependencies=xcb_proto libXau xproto 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-static 10 | endef 11 | 12 | define $(package)_preprocess_cmds 13 | sed "s/pthread-stubs//" -i configure 14 | endef 15 | 16 | define $(package)_config_cmds 17 | $($(package)_autoconf) 18 | endef 19 | 20 | define $(package)_build_cmds 21 | $(MAKE) 22 | endef 23 | 24 | define $(package)_stage_cmds 25 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 26 | endef 27 | 28 | define $(package)_postprocess_cmds 29 | rm -rf share/man share/doc 30 | endef 31 | -------------------------------------------------------------------------------- /depends/packages/native_ccache.mk: -------------------------------------------------------------------------------- 1 | package=native_ccache 2 | $(package)_version=3.1.9 3 | $(package)_download_path=http://samba.org/ftp/ccache 4 | $(package)_file_name=ccache-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=04d3e2e438ac8d4cc4b110b68cdd61bd59226c6588739a4a386869467f5ced7c 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts= 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 | 23 | define $(package)_postprocess_cmds 24 | rm -rf lib include 25 | endef 26 | -------------------------------------------------------------------------------- /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_comparisontool.mk: -------------------------------------------------------------------------------- 1 | package=native_comparisontool 2 | $(package)_version=0f7b5d8 3 | $(package)_download_path=https://github.com/TheBlueMatt/test-scripts/raw/38b490a2599d422b12d5ce8f165792f63fd8f54f 4 | $(package)_file_name=pull-tests-$($(package)_version).jar 5 | $(package)_sha256_hash=ecd43b988a8b673b483e4f69f931596360a5e90fc415c75c4c259faa690df198 6 | $(package)_install_dirname=TruthcoindComparisonTool_jar 7 | $(package)_install_filename=TruthcoindComparisonTool.jar 8 | 9 | define $(package)_extract_cmds 10 | endef 11 | 12 | define $(package)_configure_cmds 13 | endef 14 | 15 | define $(package)_build_cmds 16 | endef 17 | 18 | define $(package)_stage_cmds 19 | mkdir -p $($(package)_staging_prefix_dir)/share/$($(package)_install_dirname) && \ 20 | cp $($(package)_source) $($(package)_staging_prefix_dir)/share/$($(package)_install_dirname)/$($(package)_install_filename) 21 | endef 22 | -------------------------------------------------------------------------------- /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_protobuf.mk: -------------------------------------------------------------------------------- 1 | package=native_protobuf 2 | $(package)_version=2.5.0 3 | $(package)_download_path=https://protobuf.googlecode.com/files 4 | $(package)_file_name=protobuf-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=13bfc5ae543cf3aa180ac2485c0bc89495e3ae711fc6fab4f8ffe90dfb4bb677 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 2 | native_packages := native_ccache native_comparisontool 3 | 4 | qt_native_packages = native_protobuf 5 | qt_packages = qrencode protobuf 6 | 7 | qt46_linux_packages = qt46 expat dbus libxcb xcb_proto libXau xproto freetype libX11 xextproto libXext xtrans libICE libSM 8 | qt5_linux_packages= qt expat dbus libxcb xcb_proto libXau xproto freetype fontconfig libX11 xextproto libXext xtrans 9 | 10 | qt_darwin_packages=qt 11 | qt_mingw32_packages=qt 12 | 13 | qt_linux_$(USE_LINUX_STATIC_QT5):=$(qt5_linux_packages) 14 | qt_linux_:=$(qt46_linux_packages) 15 | qt_linux_packages:=$(qt_linux_$(USE_LINUX_STATIC_QT5)) 16 | 17 | wallet_packages=bdb 18 | 19 | upnp_packages=miniupnpc 20 | 21 | ifneq ($(build_os),darwin) 22 | darwin_native_packages=native_cctools native_cdrkit native_libdmg-hfsplus 23 | endif 24 | -------------------------------------------------------------------------------- /depends/packages/protobuf.mk: -------------------------------------------------------------------------------- 1 | package=protobuf 2 | $(package)_version=$(native_$(package)_version) 3 | $(package)_download_path=$(native_$(package)_download_path) 4 | $(package)_file_name=$(native_$(package)_file_name) 5 | $(package)_sha256_hash=$(native_$(package)_sha256_hash) 6 | $(package)_dependencies=native_$(package) 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-shared --with-protoc=$(build_prefix)/bin/protoc 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) -C src libprotobuf.la 19 | endef 20 | 21 | define $(package)_stage_cmds 22 | $(MAKE) DESTDIR=$($(package)_staging_dir) -C src install-libLTLIBRARIES install-nobase_includeHEADERS &&\ 23 | $(MAKE) DESTDIR=$($(package)_staging_dir) install-pkgconfigDATA 24 | endef 25 | 26 | define $(package)_postprocess_cmds 27 | rm lib/libprotoc.a 28 | endef 29 | -------------------------------------------------------------------------------- /depends/packages/qrencode.mk: -------------------------------------------------------------------------------- 1 | package=qrencode 2 | $(package)_version=3.4.3 3 | $(package)_download_path=https://fukuchi.org/works/qrencode/ 4 | $(package)_file_name=qrencode-$(qrencode_version).tar.bz2 5 | $(package)_sha256_hash=dfd71487513c871bad485806bfd1fdb304dedc84d2b01a8fb8e0940b50597a98 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/qt/fix-xcb-include-order.patch: -------------------------------------------------------------------------------- 1 | --- old/qtbase/src/plugins/platforms/xcb/xcb-plugin.pro 2014-07-30 18:17:27.384458441 -0400 2 | +++ new/qtbase/src/plugins/platforms/xcb/xcb-plugin.pro 2014-07-30 18:18:28.620459303 -0400 3 | @@ -101,10 +101,6 @@ 4 | } 5 | } 6 | 7 | -DEFINES += $$QMAKE_DEFINES_XCB 8 | -LIBS += $$QMAKE_LIBS_XCB 9 | -QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_XCB 10 | - 11 | CONFIG += qpa/genericunixfontdatabase 12 | 13 | contains(QT_CONFIG, dbus) { 14 | @@ -141,3 +137,7 @@ 15 | INCLUDEPATH += ../../../3rdparty/xkbcommon/xkbcommon/ 16 | } 17 | } 18 | + 19 | +DEFINES += $$QMAKE_DEFINES_XCB 20 | +LIBS += $$QMAKE_LIBS_XCB 21 | +INCLUDEPATH += $$QMAKE_CFLAGS_XCB 22 | -------------------------------------------------------------------------------- /depends/patches/qt/mac-qmake.conf: -------------------------------------------------------------------------------- 1 | MAKEFILE_GENERATOR = UNIX 2 | CONFIG += app_bundle incremental global_init_link_order lib_version_first plugin_no_soname absolute_library_soname 3 | QMAKE_INCREMENTAL_STYLE = sublib 4 | include(../common/macx.conf) 5 | include(../common/gcc-base-mac.conf) 6 | include(../common/clang.conf) 7 | include(../common/clang-mac.conf) 8 | QMAKE_MAC_SDK_PATH=$${MAC_SDK_PATH} 9 | QMAKE_XCODE_VERSION=4.3 10 | QMAKE_XCODE_DEVELOPER_PATH=/Developer 11 | QMAKE_MACOSX_DEPLOYMENT_TARGET = $${MAC_MIN_VERSION} 12 | QMAKE_MAC_SDK=macosx 13 | QMAKE_MAC_SDK.macosx.path = $$QMAKE_MAC_SDK_PATH 14 | QMAKE_MAC_SDK.macosx.platform_name = macosx 15 | QMAKE_CFLAGS += -target $${MAC_TARGET} 16 | QMAKE_OBJECTIVE_CFLAGS += $$QMAKE_CFLAGS 17 | QMAKE_CXXFLAGS += $$QMAKE_CFLAGS 18 | QMAKE_LFLAGS += -target $${MAC_TARGET} -mlinker-version=$${MAC_LD64_VERSION} 19 | QMAKE_AR = $${CROSS_COMPILE}ar cq 20 | QMAKE_RANLIB=$${CROSS_COMPILE}ranlib 21 | QMAKE_LIBTOOL=$${CROSS_COMPILE}libtool 22 | QMAKE_INSTALL_NAME_TOOL=$${CROSS_COMPILE}install_name_tool 23 | load(qt_config) 24 | -------------------------------------------------------------------------------- /depends/patches/qt/qt5-tablet-osx.patch: -------------------------------------------------------------------------------- 1 | --- old/qtbase/src/widgets/kernel/qwidgetwindow.cpp 2014-09-05 20:45:18.717570370 -0400 2 | +++ new/qtbase/src/widgets/kernel/qwidgetwindow.cpp 2014-09-05 20:52:38.653576561 -0400 3 | @@ -57,7 +57,7 @@ 4 | Q_WIDGETS_EXPORT extern bool qt_tab_all_widgets(); 5 | 6 | QWidget *qt_button_down = 0; // widget got last button-down 7 | -static QWidget *qt_tablet_target = 0; 8 | +static QPointer qt_tablet_target = 0; 9 | 10 | // popup control 11 | QWidget *qt_popup_down = 0; // popup that contains the pressed widget 12 | @@ -96,8 +96,6 @@ 13 | 14 | QWidgetWindow::~QWidgetWindow() 15 | { 16 | - if (m_widget == qt_tablet_target) 17 | - qt_tablet_target = 0; 18 | } 19 | 20 | #ifndef QT_NO_ACCESSIBILITY 21 | -------------------------------------------------------------------------------- /depends/patches/qt46/stlfix.patch: -------------------------------------------------------------------------------- 1 | --- old/config.tests/unix/stl/stltest.cpp 2011-06-23 03:45:23.000000000 -0400 2 | +++ new/config.tests/unix/stl/stltest.cpp 2014-08-28 00:54:04.154837604 -0400 3 | @@ -49,6 +49,7 @@ 4 | #include 5 | #include 6 | #include 7 | +#include 8 | 9 | // something mean to see if the compiler and C++ standard lib are good enough 10 | template 11 | -------------------------------------------------------------------------------- /doc/README_windows.txt: -------------------------------------------------------------------------------- 1 | Truthcoin Core 0.0.1 2 | ===================== 3 | 4 | Intro 5 | ----- 6 | Truthcoin is a free open source peer-to-peer distributed oracle system and 7 | prediction marketplace that is completely decentralized, without the need for 8 | a central server or trusted parties. Users hold the crypto keys to their own 9 | money and transact directly with each other, with the help of a P2P network to 10 | check for double-spending. 11 | 12 | 13 | Setup 14 | ----- 15 | Unpack the files into a directory and run truthcoin-qt.exe. 16 | 17 | Truthcoin Core is the original Truthcoin client and it builds the backbone of the network. 18 | However, it downloads and stores the entire history of Truthcoin transactions; 19 | depending on the speed of your computer and network connection, the synchronization 20 | process can take anywhere from a few hours to a day or more. 21 | 22 | See the truthcoin wiki at: 23 | https://en.truthcoin.it/wiki/Main_Page 24 | for more help and information. 25 | -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_file_location_size.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/create_vm_file_location_size.png -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_hard_drive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/create_vm_hard_drive.png -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_hard_drive_file_type.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/create_vm_hard_drive_file_type.png -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_memsize.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/create_vm_memsize.png -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_page1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/create_vm_page1.png -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_storage_physical_hard_drive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/create_vm_storage_physical_hard_drive.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_10_configure_clock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_10_configure_clock.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_11_partition_disks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_11_partition_disks.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_12_choose_disk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_12_choose_disk.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_13_partition_scheme.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_13_partition_scheme.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_14_finish.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_14_finish.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_15_write_changes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_15_write_changes.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_16_choose_a_mirror.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_16_choose_a_mirror.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_17_choose_a_mirror2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_17_choose_a_mirror2.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_18_proxy_settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_18_proxy_settings.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_19_software_selection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_19_software_selection.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_1_boot_menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_1_boot_menu.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_20_install_grub.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_20_install_grub.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_21_finish_installation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_21_finish_installation.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_2_select_a_language.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_2_select_a_language.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_3_select_location.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_3_select_location.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_4_configure_keyboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_4_configure_keyboard.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_5_configure_the_network.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_5_configure_the_network.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_6_domain_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_6_domain_name.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_6a_set_up_root_password.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/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/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/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/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_8_set_up_username.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_9_user_password.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/debian_install_9_user_password.png -------------------------------------------------------------------------------- /doc/gitian-building/network_settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/network_settings.png -------------------------------------------------------------------------------- /doc/gitian-building/port_forwarding_rules.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/port_forwarding_rules.png -------------------------------------------------------------------------------- /doc/gitian-building/select_startup_disk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/gitian-building/select_startup_disk.png -------------------------------------------------------------------------------- /doc/img/bootstrap1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/img/bootstrap1.png -------------------------------------------------------------------------------- /doc/img/bootstrap2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/img/bootstrap2.png -------------------------------------------------------------------------------- /doc/img/bootstrap4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/img/bootstrap4.png -------------------------------------------------------------------------------- /doc/img/bootstrap5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/img/bootstrap5.png -------------------------------------------------------------------------------- /doc/release-notes.md: -------------------------------------------------------------------------------- 1 | (note: this is a temporary file, to be added-to by anybody, and moved to 2 | release-notes at release time) 3 | 4 | -------------------------------------------------------------------------------- /doc/truthcoin_logo_doxygen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/doc/truthcoin_logo_doxygen.png -------------------------------------------------------------------------------- /doc/unit-tests.md: -------------------------------------------------------------------------------- 1 | Compiling/running unit tests 2 | ------------------------------------ 3 | 4 | Unit tests will be automatically compiled if dependencies were met in configure 5 | and tests weren't explicitly disabled. 6 | 7 | After configuring, they can be run with 'make check'. 8 | 9 | To run the truthcoind tests manually, launch src/test/test_truthcoin . 10 | 11 | To add more truthcoind tests, add `BOOST_AUTO_TEST_CASE` functions to the existing 12 | .cpp files in the test/ directory or add new .cpp files that 13 | implement new BOOST_AUTO_TEST_SUITE sections. 14 | 15 | To run the truthcoin-qt tests manually, launch src/qt/test/truthcoin-qt_test 16 | 17 | To add more truthcoin-qt tests, add them to the `src/qt/test/` directory and 18 | the `src/qt/test/test_main.cpp` file. 19 | -------------------------------------------------------------------------------- /libtruthcoinconsensus.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: Truthcoin Core consensus library 7 | Description: Library for the Truthcoin consensus protocol. 8 | Version: @PACKAGE_VERSION@ 9 | Libs: -L${libdir} -ltruthcoinconsensus 10 | Cflags: -I${includedir} 11 | Requires.private: libcrypto 12 | -------------------------------------------------------------------------------- /qa/pull-tester/run-truthcoin-cli: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # This is a thin wrapper around truthcoin-cli that strips the Windows-style EOLs 4 | # from the output if present. It is necessary when using truthcoin-cli.exe on 5 | # Linux since shells will interpret the line-endings as part of the result. 6 | 7 | CURDIR=$(cd $(dirname "$0"); pwd) 8 | # Get BUILDDIR and REAL_TRUTHCOIND 9 | 10 | # Grab the value of $REAL_TRUTHCOINCLI which may be truthcoin-cli.exe. 11 | . "${CURDIR}/tests-config.sh" 12 | 13 | "${REAL_TRUTHCOINCLI}" "$@" | sed 's/\r//' 14 | -------------------------------------------------------------------------------- /qa/pull-tester/tests-config.sh.in: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Copyright (c) 2013-2014 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 | BUILDDIR="@abs_top_builddir@" 7 | EXEEXT="@EXEEXT@" 8 | 9 | # These will turn into comments if they were disabled when configuring. 10 | @ENABLE_WALLET_TRUE@ENABLE_WALLET=1 11 | @BUILD_TRUTHCOIN_UTILS_TRUE@ENABLE_UTILS=1 12 | @BUILD_TRUTHCOIND_TRUE@ENABLE_TRUTHCOIND=1 13 | 14 | REAL_TRUTHCOIND="$BUILDDIR/src/truthcoind${EXEEXT}" 15 | REAL_TRUTHCOINCLI="$BUILDDIR/src/truthcoin-cli${EXEEXT}" 16 | 17 | -------------------------------------------------------------------------------- /qa/rpc-tests/.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | cache 3 | -------------------------------------------------------------------------------- /qa/rpc-tests/python-truthcoinrpc/setup.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python2 2 | 3 | from distutils.core import setup 4 | 5 | setup(name='python-truthcoinrpc', 6 | version='0.1', 7 | description='Enhanced version of python-jsonrpc for use with Truthcoin', 8 | long_description=open('README').read(), 9 | author='Jeff Garzik', 10 | author_email='', 11 | maintainer='Jeff Garzik', 12 | maintainer_email='', 13 | url='http://www.github.com/jgarzik/python-truthcoinrpc', 14 | packages=['truthcoinrpc'], 15 | classifiers=['License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)', 'Operating System :: OS Independent']) 16 | -------------------------------------------------------------------------------- /qa/rpc-tests/python-truthcoinrpc/truthcoinrpc/.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | -------------------------------------------------------------------------------- /qa/rpc-tests/python-truthcoinrpc/truthcoinrpc/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/qa/rpc-tests/python-truthcoinrpc/truthcoinrpc/__init__.py -------------------------------------------------------------------------------- /qa/rpc-tests/send.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Copyright (c) 2014 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 | TIMEOUT=10 6 | SIGNAL=HUP 7 | PIDFILE=.send.pid 8 | if [ $# -eq 0 ]; then 9 | echo -e "Usage:\t$0 " 10 | echo -e "\tRuns and wait ${TIMEOUT} seconds or until SIG${SIGNAL} is received." 11 | echo -e "\tReturns: 0 if SIG${SIGNAL} is received, 1 otherwise." 12 | echo -e "Or:\t$0 -STOP" 13 | echo -e "\tsends SIG${SIGNAL} to running send.sh" 14 | exit 0 15 | fi 16 | 17 | if [ $1 = "-STOP" ]; then 18 | if [ -s ${PIDFILE} ]; then 19 | kill -s ${SIGNAL} $(<$PIDFILE 2>/dev/null) 2>/dev/null 20 | fi 21 | exit 0 22 | fi 23 | 24 | trap '[[ ${PID} ]] && kill ${PID}' ${SIGNAL} 25 | trap 'rm -f ${PIDFILE}' EXIT 26 | echo $$ > ${PIDFILE} 27 | "$@" 28 | sleep ${TIMEOUT} & PID=$! 29 | wait ${PID} && exit 1 30 | 31 | exit 0 32 | -------------------------------------------------------------------------------- /share/pixmaps/addressbook16.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/addressbook16.bmp -------------------------------------------------------------------------------- /share/pixmaps/addressbook16mask.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/addressbook16mask.bmp -------------------------------------------------------------------------------- /share/pixmaps/addressbook20.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/addressbook20.bmp -------------------------------------------------------------------------------- /share/pixmaps/addressbook20mask.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/addressbook20mask.bmp -------------------------------------------------------------------------------- /share/pixmaps/check.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/check.ico -------------------------------------------------------------------------------- /share/pixmaps/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/favicon.ico -------------------------------------------------------------------------------- /share/pixmaps/nsis-header.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/nsis-header.bmp -------------------------------------------------------------------------------- /share/pixmaps/nsis-wizard.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/nsis-wizard.bmp -------------------------------------------------------------------------------- /share/pixmaps/send16.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/send16.bmp -------------------------------------------------------------------------------- /share/pixmaps/send16mask.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/send16mask.bmp -------------------------------------------------------------------------------- /share/pixmaps/send16masknoshadow.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/send16masknoshadow.bmp -------------------------------------------------------------------------------- /share/pixmaps/send20.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/send20.bmp -------------------------------------------------------------------------------- /share/pixmaps/send20mask.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/send20mask.bmp -------------------------------------------------------------------------------- /share/pixmaps/truthcoin-bc.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/truthcoin-bc.ico -------------------------------------------------------------------------------- /share/pixmaps/truthcoin.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/truthcoin.ico -------------------------------------------------------------------------------- /share/pixmaps/truthcoin128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/truthcoin128.png -------------------------------------------------------------------------------- /share/pixmaps/truthcoin16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/truthcoin16.png -------------------------------------------------------------------------------- /share/pixmaps/truthcoin256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/truthcoin256.png -------------------------------------------------------------------------------- /share/pixmaps/truthcoin32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/truthcoin32.png -------------------------------------------------------------------------------- /share/pixmaps/truthcoin64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/pixmaps/truthcoin64.png -------------------------------------------------------------------------------- /share/qt/img/reload.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/qt/img/reload.png -------------------------------------------------------------------------------- /share/qt/img/reload.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/share/qt/img/reload.xcf -------------------------------------------------------------------------------- /share/qt/make_spinner.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # W.J. van der Laan, 2011 3 | # Make spinning animation from a .png 4 | # Requires imagemagick 6.7+ 5 | from __future__ import division 6 | from os import path 7 | from PIL import Image 8 | from subprocess import Popen 9 | 10 | SRC='img/reload.png' 11 | TMPDIR='../../src/qt/res/movies/' 12 | TMPNAME='spinner-%03i.png' 13 | NUMFRAMES=35 14 | FRAMERATE=10.0 15 | CONVERT='convert' 16 | CLOCKWISE=True 17 | DSIZE=(16,16) 18 | 19 | im_src = Image.open(SRC) 20 | 21 | if CLOCKWISE: 22 | im_src = im_src.transpose(Image.FLIP_LEFT_RIGHT) 23 | 24 | def frame_to_filename(frame): 25 | return path.join(TMPDIR, TMPNAME % frame) 26 | 27 | frame_files = [] 28 | for frame in xrange(NUMFRAMES): 29 | rotation = (frame + 0.5) / NUMFRAMES * 360.0 30 | if CLOCKWISE: 31 | rotation = -rotation 32 | im_new = im_src.rotate(rotation, Image.BICUBIC) 33 | im_new.thumbnail(DSIZE, Image.ANTIALIAS) 34 | outfile = frame_to_filename(frame) 35 | im_new.save(outfile, 'png') 36 | frame_files.append(outfile) 37 | 38 | 39 | -------------------------------------------------------------------------------- /share/qt/make_windows_icon.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # create multiresolution windows icon 3 | ICON_SRC=../../src/qt/res/icons/truthcoin.png 4 | ICON_DST=../../src/qt/res/icons/truthcoin.ico 5 | convert ${ICON_SRC} -resize 16x16 truthcoin-16.png 6 | convert ${ICON_SRC} -resize 32x32 truthcoin-32.png 7 | convert ${ICON_SRC} -resize 48x48 truthcoin-48.png 8 | convert truthcoin-16.png truthcoin-32.png truthcoin-48.png ${ICON_DST} 9 | 10 | -------------------------------------------------------------------------------- /share/seeds/nodes_main.txt: -------------------------------------------------------------------------------- 1 | # List of fixed seed nodes for main network 2 | 3 | # IPv4 nodes (generated using contrib/seeds/makeseeds.py) 4 | 198.204.244.178 5 | 6 | # Onion nodes 7 | -------------------------------------------------------------------------------- /share/seeds/nodes_test.txt: -------------------------------------------------------------------------------- 1 | # List of fixed seed nodes for testnet 2 | 3 | # Onion nodes 4 | -------------------------------------------------------------------------------- /share/ui.rc: -------------------------------------------------------------------------------- 1 | truthcoin ICON "pixmaps/truthcoin.ico" 2 | 3 | #include "wx/msw/wx.rc" 4 | 5 | check ICON "pixmaps/check.ico" 6 | send16 BITMAP "pixmaps/send16.bmp" 7 | send16mask BITMAP "pixmaps/send16mask.bmp" 8 | send16masknoshadow BITMAP "pixmaps/send16masknoshadow.bmp" 9 | send20 BITMAP "pixmaps/send20.bmp" 10 | send20mask BITMAP "pixmaps/send20mask.bmp" 11 | addressbook16 BITMAP "pixmaps/addressbook16.bmp" 12 | addressbook16mask BITMAP "pixmaps/addressbook16mask.bmp" 13 | addressbook20 BITMAP "pixmaps/addressbook20.bmp" 14 | addressbook20mask BITMAP "pixmaps/addressbook20mask.bmp" 15 | favicon ICON "pixmaps/favicon.ico" 16 | -------------------------------------------------------------------------------- /src/amount.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2010 Satoshi Nakamoto 2 | // Copyright (c) 2009-2014 The Bitcoin Core developers 3 | // Copyright (c) 2015 The Truthcoin 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 | 7 | #include "amount.h" 8 | 9 | #include "tinyformat.h" 10 | 11 | CFeeRate::CFeeRate(const CAmount& nFeePaid, size_t nSize) 12 | { 13 | if (nSize > 0) 14 | nSatoshisPerK = nFeePaid*1000/nSize; 15 | else 16 | nSatoshisPerK = 0; 17 | } 18 | 19 | CAmount CFeeRate::GetFee(size_t nSize) const 20 | { 21 | CAmount nFee = nSatoshisPerK*nSize / 1000; 22 | 23 | if (nFee == 0 && nSatoshisPerK > 0) 24 | nFee = nSatoshisPerK; 25 | 26 | return nFee; 27 | } 28 | 29 | std::string CFeeRate::ToString() const 30 | { 31 | return strprintf("%d.%08d CSH/kB", nSatoshisPerK / COIN, nSatoshisPerK % COIN); 32 | } 33 | -------------------------------------------------------------------------------- /src/chainparamsseeds.h: -------------------------------------------------------------------------------- 1 | #ifndef TRUTHCOIN_CHAINPARAMSSEEDS_H 2 | #define TRUTHCOIN_CHAINPARAMSSEEDS_H 3 | /** 4 | * List of fixed seed nodes for the truthcoin network 5 | * AUTOGENERATED by share/seeds/generate-seeds.py 6 | * 7 | * Each line contains a 16-byte IPv6 address and a port. 8 | * IPv4 as well as onion addresses are wrapped inside a IPv6 address accordingly. 9 | */ 10 | static SeedSpec6 pnSeed6_main[] = { 11 | {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x01,0x21,0xc5,0x6e}, 59533}, 12 | }; 13 | 14 | static SeedSpec6 pnSeed6_test[] = { 15 | {{0xfd,0x87,0xd8,0x7e,0xeb,0x43,0x99,0xcb,0x26,0x31,0xba,0x48,0x51,0x31,0x39,0x0d}, 64533}, 16 | }; 17 | #endif // TRUTHCOIN_CHAINPARAMSSEEDS_H 18 | -------------------------------------------------------------------------------- /src/compat/glibc_compat.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2014 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 defined(HAVE_CONFIG_H) 7 | #include "config/truthcoin-config.h" 8 | #endif 9 | 10 | #include 11 | 12 | #if defined(HAVE_SYS_SELECT_H) 13 | #include 14 | #endif 15 | 16 | // Prior to GLIBC_2.14, memcpy was aliased to memmove. 17 | extern "C" void* memmove(void* a, const void* b, size_t c); 18 | extern "C" void* memcpy(void* a, const void* b, size_t c) 19 | { 20 | return memmove(a, b, c); 21 | } 22 | 23 | extern "C" void __chk_fail(void) __attribute__((__noreturn__)); 24 | extern "C" FDELT_TYPE __fdelt_warn(FDELT_TYPE a) 25 | { 26 | if (a >= FD_SETSIZE) 27 | __chk_fail(); 28 | return a / __NFDBITS; 29 | } 30 | extern "C" FDELT_TYPE __fdelt_chk(FDELT_TYPE) __attribute__((weak, alias("__fdelt_warn"))); 31 | -------------------------------------------------------------------------------- /src/compat/sanity.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2014 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_COMPAT_SANITY_H 7 | #define TRUTHCOIN_COMPAT_SANITY_H 8 | 9 | bool glibc_sanity_test(); 10 | bool glibcxx_sanity_test(); 11 | 12 | #endif // TRUTHCOIN_COMPAT_SANITY_H 13 | -------------------------------------------------------------------------------- /src/compat/strnlen.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2014 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 defined(HAVE_CONFIG_H) 7 | #include "config/truthcoin-config.h" 8 | #endif 9 | 10 | #include 11 | 12 | #if HAVE_DECL_STRNLEN == 0 13 | size_t strnlen( const char *start, size_t max_len) 14 | { 15 | const char *end = (const char *)memchr(start, '\0', max_len); 16 | 17 | return end ? (size_t)(end - start) : max_len; 18 | } 19 | #endif // HAVE_DECL_STRNLEN 20 | -------------------------------------------------------------------------------- /src/config/.empty: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/config/.empty -------------------------------------------------------------------------------- /src/crypto/hmac_sha256.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 "crypto/hmac_sha256.h" 7 | 8 | #include 9 | 10 | CHMAC_SHA256::CHMAC_SHA256(const unsigned char* key, size_t keylen) 11 | { 12 | unsigned char rkey[64]; 13 | if (keylen <= 64) { 14 | memcpy(rkey, key, keylen); 15 | memset(rkey + keylen, 0, 64 - keylen); 16 | } else { 17 | CSHA256().Write(key, keylen).Finalize(rkey); 18 | memset(rkey + 32, 0, 32); 19 | } 20 | 21 | for (int n = 0; n < 64; n++) 22 | rkey[n] ^= 0x5c; 23 | outer.Write(rkey, 64); 24 | 25 | for (int n = 0; n < 64; n++) 26 | rkey[n] ^= 0x5c ^ 0x36; 27 | inner.Write(rkey, 64); 28 | } 29 | 30 | void CHMAC_SHA256::Finalize(unsigned char hash[OUTPUT_SIZE]) 31 | { 32 | unsigned char temp[32]; 33 | inner.Finalize(temp); 34 | outer.Write(temp, 32).Finalize(hash); 35 | } 36 | -------------------------------------------------------------------------------- /src/crypto/hmac_sha256.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_CRYPTO_HMAC_SHA256_H 7 | #define TRUTHCOIN_CRYPTO_HMAC_SHA256_H 8 | 9 | #include "crypto/sha256.h" 10 | 11 | #include 12 | #include 13 | 14 | /** A hasher class for HMAC-SHA-512. */ 15 | class CHMAC_SHA256 16 | { 17 | private: 18 | CSHA256 outer; 19 | CSHA256 inner; 20 | 21 | public: 22 | static const size_t OUTPUT_SIZE = 32; 23 | 24 | CHMAC_SHA256(const unsigned char* key, size_t keylen); 25 | CHMAC_SHA256& Write(const unsigned char* data, size_t len) 26 | { 27 | inner.Write(data, len); 28 | return *this; 29 | } 30 | void Finalize(unsigned char hash[OUTPUT_SIZE]); 31 | }; 32 | 33 | #endif // TRUTHCOIN_CRYPTO_HMAC_SHA256_H 34 | -------------------------------------------------------------------------------- /src/crypto/hmac_sha512.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 "crypto/hmac_sha512.h" 7 | 8 | #include 9 | 10 | CHMAC_SHA512::CHMAC_SHA512(const unsigned char* key, size_t keylen) 11 | { 12 | unsigned char rkey[128]; 13 | if (keylen <= 128) { 14 | memcpy(rkey, key, keylen); 15 | memset(rkey + keylen, 0, 128 - keylen); 16 | } else { 17 | CSHA512().Write(key, keylen).Finalize(rkey); 18 | memset(rkey + 64, 0, 64); 19 | } 20 | 21 | for (int n = 0; n < 128; n++) 22 | rkey[n] ^= 0x5c; 23 | outer.Write(rkey, 128); 24 | 25 | for (int n = 0; n < 128; n++) 26 | rkey[n] ^= 0x5c ^ 0x36; 27 | inner.Write(rkey, 128); 28 | } 29 | 30 | void CHMAC_SHA512::Finalize(unsigned char hash[OUTPUT_SIZE]) 31 | { 32 | unsigned char temp[64]; 33 | inner.Finalize(temp); 34 | outer.Write(temp, 64).Finalize(hash); 35 | } 36 | -------------------------------------------------------------------------------- /src/crypto/hmac_sha512.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_CRYPTO_HMAC_SHA512_H 7 | #define TRUTHCOIN_CRYPTO_HMAC_SHA512_H 8 | 9 | #include "crypto/sha512.h" 10 | 11 | #include 12 | #include 13 | 14 | /** A hasher class for HMAC-SHA-512. */ 15 | class CHMAC_SHA512 16 | { 17 | private: 18 | CSHA512 outer; 19 | CSHA512 inner; 20 | 21 | public: 22 | static const size_t OUTPUT_SIZE = 64; 23 | 24 | CHMAC_SHA512(const unsigned char* key, size_t keylen); 25 | CHMAC_SHA512& Write(const unsigned char* data, size_t len) 26 | { 27 | inner.Write(data, len); 28 | return *this; 29 | } 30 | void Finalize(unsigned char hash[OUTPUT_SIZE]); 31 | }; 32 | 33 | #endif // TRUTHCOIN_CRYPTO_HMAC_SHA512_H 34 | -------------------------------------------------------------------------------- /src/crypto/ripemd160.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_CRYPTO_RIPEMD160_H 7 | #define TRUTHCOIN_CRYPTO_RIPEMD160_H 8 | 9 | #include 10 | #include 11 | 12 | /** A hasher class for RIPEMD-160. */ 13 | class CRIPEMD160 14 | { 15 | private: 16 | uint32_t s[5]; 17 | unsigned char buf[64]; 18 | size_t bytes; 19 | 20 | public: 21 | static const size_t OUTPUT_SIZE = 20; 22 | 23 | CRIPEMD160(); 24 | CRIPEMD160& Write(const unsigned char* data, size_t len); 25 | void Finalize(unsigned char hash[OUTPUT_SIZE]); 26 | CRIPEMD160& Reset(); 27 | }; 28 | 29 | #endif // TRUTHCOIN_CRYPTO_RIPEMD160_H 30 | -------------------------------------------------------------------------------- /src/crypto/sha1.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_CRYPTO_SHA1_H 7 | #define TRUTHCOIN_CRYPTO_SHA1_H 8 | 9 | #include 10 | #include 11 | 12 | /** A hasher class for SHA1. */ 13 | class CSHA1 14 | { 15 | private: 16 | uint32_t s[5]; 17 | unsigned char buf[64]; 18 | size_t bytes; 19 | 20 | public: 21 | static const size_t OUTPUT_SIZE = 20; 22 | 23 | CSHA1(); 24 | CSHA1& Write(const unsigned char* data, size_t len); 25 | void Finalize(unsigned char hash[OUTPUT_SIZE]); 26 | CSHA1& Reset(); 27 | }; 28 | 29 | #endif // TRUTHCOIN_CRYPTO_SHA1_H 30 | -------------------------------------------------------------------------------- /src/crypto/sha256.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_CRYPTO_SHA256_H 7 | #define TRUTHCOIN_CRYPTO_SHA256_H 8 | 9 | #include 10 | #include 11 | 12 | /** A hasher class for SHA-256. */ 13 | class CSHA256 14 | { 15 | private: 16 | uint32_t s[8]; 17 | unsigned char buf[64]; 18 | size_t bytes; 19 | 20 | public: 21 | static const size_t OUTPUT_SIZE = 32; 22 | 23 | CSHA256(); 24 | CSHA256& Write(const unsigned char* data, size_t len); 25 | void Finalize(unsigned char hash[OUTPUT_SIZE]); 26 | CSHA256& Reset(); 27 | }; 28 | 29 | #endif // TRUTHCOIN_CRYPTO_SHA256_H 30 | -------------------------------------------------------------------------------- /src/crypto/sha512.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_CRYPTO_SHA512_H 7 | #define TRUTHCOIN_CRYPTO_SHA512_H 8 | 9 | #include 10 | #include 11 | 12 | /** A hasher class for SHA-512. */ 13 | class CSHA512 14 | { 15 | private: 16 | uint64_t s[8]; 17 | unsigned char buf[128]; 18 | size_t bytes; 19 | 20 | public: 21 | static const size_t OUTPUT_SIZE = 64; 22 | 23 | CSHA512(); 24 | CSHA512& Write(const unsigned char* data, size_t len); 25 | void Finalize(unsigned char hash[OUTPUT_SIZE]); 26 | CSHA512& Reset(); 27 | }; 28 | 29 | #endif // TRUTHCOIN_CRYPTO_SHA512_H 30 | -------------------------------------------------------------------------------- /src/eccryptoverify.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2010 Satoshi Nakamoto 2 | // Copyright (c) 2009-2014 The Bitcoin Core developers 3 | // Copyright (c) 2015 The Truthcoin 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 | 7 | #ifndef TRUTHCOIN_ECCRYPTOVERIFY_H 8 | #define TRUTHCOIN_ECCRYPTOVERIFY_H 9 | 10 | #include 11 | #include 12 | 13 | class uint256; 14 | 15 | namespace eccrypto { 16 | 17 | bool Check(const unsigned char *vch); 18 | bool CheckSignatureElement(const unsigned char *vch, int len, bool half); 19 | 20 | } // eccrypto namespace 21 | 22 | #endif // TRUTHCOIN_ECCRYPTOVERIFY_H 23 | -------------------------------------------------------------------------------- /src/fdlibm/COPYING: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015 The Truthcoin Core developers 2 | 3 | Distributed under the MIT software license, see the accompanying 4 | file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | -------------------------------------------------------------------------------- /src/fdlibm/README.md: -------------------------------------------------------------------------------- 1 | libfdlibm 2 | ============ 3 | 4 | fdlibm math library from http://www.netlib.org/ 5 | 6 | 7 | Implementation details 8 | ---------------------- 9 | 10 | * General 11 | 12 | Build steps 13 | ----------- 14 | 15 | liblibalg is built using autotools: 16 | 17 | $ ./autogen.sh 18 | $ ./configure 19 | $ make 20 | $ sudo make install # optional 21 | -------------------------------------------------------------------------------- /src/fdlibm/autogen.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | autoreconf -if --warnings=all 4 | -------------------------------------------------------------------------------- /src/fdlibm/build-aux/m4/truthcoin_fdlibm.m4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/fdlibm/build-aux/m4/truthcoin_fdlibm.m4 -------------------------------------------------------------------------------- /src/fdlibm/libfdlibm.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libfdlibm 7 | Description: Implemenation of NETLIB's fdlibm library 8 | URL: http://www.netlib.org 9 | Version: @PACKAGE_VERSION@ 10 | Cflags: -I${includedir} 11 | Libs.private: @FDLIBM_LIBS@ 12 | Libs: -L${libdir} -lfdlibm 13 | 14 | -------------------------------------------------------------------------------- /src/fdlibm/src/e_gamma.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)e_gamma.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | * 13 | */ 14 | 15 | /* FDLIBM___ieee754_gamma(x) 16 | * Return the logarithm of the Gamma function of x. 17 | * 18 | * Method: call __ieee754_gamma_r 19 | */ 20 | 21 | #include "fdlibm.h" 22 | 23 | extern int signgam; 24 | 25 | #ifdef __STDC__ 26 | double FDLIBM___ieee754_gamma(double x) 27 | #else 28 | double FDLIBM___ieee754_gamma(x) 29 | double x; 30 | #endif 31 | { 32 | return FDLIBM___ieee754_gamma_r(x,&signgam); 33 | } 34 | -------------------------------------------------------------------------------- /src/fdlibm/src/e_gamma_r.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)e_gamma_r.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | * 13 | */ 14 | 15 | /* FDLIBM___ieee754_gamma_r(x, signgamp) 16 | * Reentrant version of the logarithm of the Gamma function 17 | * with user provide pointer for the sign of Gamma(x). 18 | * 19 | * Method: See __ieee754_lgamma_r 20 | */ 21 | 22 | #include "fdlibm.h" 23 | 24 | #ifdef __STDC__ 25 | double FDLIBM___ieee754_gamma_r(double x, int *signgamp) 26 | #else 27 | double FDLIBM___ieee754_gamma_r(x,signgamp) 28 | double x; int *signgamp; 29 | #endif 30 | { 31 | return FDLIBM___ieee754_lgamma_r(x,signgamp); 32 | } 33 | -------------------------------------------------------------------------------- /src/fdlibm/src/e_lgamma.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)e_lgamma.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | * 13 | */ 14 | 15 | /* FDLIBM___ieee754_lgamma(x) 16 | * Return the logarithm of the Gamma function of x. 17 | * 18 | * Method: call __ieee754_lgamma_r 19 | */ 20 | 21 | #include "fdlibm.h" 22 | 23 | extern int signgam; 24 | 25 | #ifdef __STDC__ 26 | double FDLIBM___ieee754_lgamma(double x) 27 | #else 28 | double FDLIBM___ieee754_lgamma(x) 29 | double x; 30 | #endif 31 | { 32 | return FDLIBM___ieee754_lgamma_r(x,&signgam); 33 | } 34 | -------------------------------------------------------------------------------- /src/fdlibm/src/s_copysign.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)s_copysign.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * FDLIBM_copysign(double x, double y) 16 | * FDLIBM_copysign(x,y) returns a value with the magnitude of x and 17 | * with the sign bit of y. 18 | */ 19 | 20 | #include "fdlibm.h" 21 | 22 | #ifdef __STDC__ 23 | double FDLIBM_copysign(double x, double y) 24 | #else 25 | double FDLIBM_copysign(x,y) 26 | double x,y; 27 | #endif 28 | { 29 | __HI(x) = (__HI(x)&0x7fffffff)|(__HI(y)&0x80000000); 30 | return x; 31 | } 32 | -------------------------------------------------------------------------------- /src/fdlibm/src/s_fabs.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)s_fabs.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * FDLIBM_fabs(x) returns the absolute value of x. 16 | */ 17 | 18 | #include "fdlibm.h" 19 | 20 | #ifdef __STDC__ 21 | double FDLIBM_fabs(double x) 22 | #else 23 | double FDLIBM_fabs(x) 24 | double x; 25 | #endif 26 | { 27 | __HI(x) &= 0x7fffffff; 28 | return x; 29 | } 30 | -------------------------------------------------------------------------------- /src/fdlibm/src/s_finite.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)s_finite.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * FDLIBM_finite(x) returns 1 is x is finite, else 0; 16 | * no branching! 17 | */ 18 | 19 | #include "fdlibm.h" 20 | 21 | #ifdef __STDC__ 22 | int FDLIBM_finite(double x) 23 | #else 24 | int FDLIBM_finite(x) 25 | double x; 26 | #endif 27 | { 28 | int hx; 29 | hx = __HI(x); 30 | return (unsigned)((hx&0x7fffffff)-0x7ff00000)>>31; 31 | } 32 | -------------------------------------------------------------------------------- /src/fdlibm/src/s_isnan.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)s_isnan.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * FDLIBM_isnan(x) returns 1 is x is nan, else 0; 16 | * no branching! 17 | */ 18 | 19 | #include "fdlibm.h" 20 | 21 | #ifdef __STDC__ 22 | int FDLIBM_isnan(double x) 23 | #else 24 | int FDLIBM_isnan(x) 25 | double x; 26 | #endif 27 | { 28 | int hx,lx; 29 | hx = (__HI(x)&0x7fffffff); 30 | lx = __LO(x); 31 | hx |= (unsigned)(lx|(-lx))>>31; 32 | hx = 0x7ff00000 - hx; 33 | return ((unsigned)(hx))>>31; 34 | } 35 | -------------------------------------------------------------------------------- /src/fdlibm/src/s_ldexp.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)s_ldexp.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | #include "fdlibm.h" 15 | #include 16 | 17 | #ifdef __STDC__ 18 | double FDLIBM_ldexp(double value, int exp) 19 | #else 20 | double FDLIBM_ldexp(value, exp) 21 | double value; int exp; 22 | #endif 23 | { 24 | if(!FDLIBM_finite(value)||value==0.0) return value; 25 | value = FDLIBM_scalbn(value,exp); 26 | if(!FDLIBM_finite(value)||value==0.0) errno = ERANGE; 27 | return value; 28 | } 29 | -------------------------------------------------------------------------------- /src/fdlibm/src/s_lib_version.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)s_lib_version.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * MACRO for standards 16 | */ 17 | 18 | #include "fdlibm.h" 19 | 20 | /* 21 | * define and initialize _LIB_VERSION 22 | */ 23 | #ifdef _POSIX_MODE 24 | _LIB_VERSION_TYPE _LIB_VERSION = _POSIX_; 25 | #else 26 | #ifdef _XOPEN_MODE 27 | _LIB_VERSION_TYPE _LIB_VERSION = _XOPEN_; 28 | #else 29 | #ifdef _SVID3_MODE 30 | _LIB_VERSION_TYPE _LIB_VERSION = _SVID_; 31 | #else /* default _IEEE_MODE */ 32 | _LIB_VERSION_TYPE _LIB_VERSION = _IEEE_; 33 | #endif 34 | #endif 35 | #endif 36 | -------------------------------------------------------------------------------- /src/fdlibm/src/s_logb.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)s_logb.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * double FDLIBM_logb(x) 16 | * IEEE 754 logb. Included to pass IEEE test suite. Not recommend. 17 | * Use ilogb instead. 18 | */ 19 | 20 | #include "fdlibm.h" 21 | 22 | #ifdef __STDC__ 23 | double FDLIBM_logb(double x) 24 | #else 25 | double FDLIBM_logb(x) 26 | double x; 27 | #endif 28 | { 29 | int lx,ix; 30 | ix = (__HI(x))&0x7fffffff; /* high |x| */ 31 | lx = __LO(x); /* low x */ 32 | if((ix|lx)==0) return -1.0/FDLIBM_fabs(x); 33 | if(ix>=0x7ff00000) return x*x; 34 | if((ix>>=20)==0) /* IEEE 754 logb */ 35 | return -1022.0; 36 | else 37 | return (double) (ix-1023); 38 | } 39 | -------------------------------------------------------------------------------- /src/fdlibm/src/s_matherr.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)s_matherr.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | #include "fdlibm.h" 15 | 16 | #ifdef __STDC__ 17 | int FDLIBM_matherr(struct exception *x) 18 | #else 19 | int FDLIBM_matherr(x) 20 | struct exception *x; 21 | #endif 22 | { 23 | int n=0; 24 | if(x->arg1!=x->arg1) return 0; 25 | return n; 26 | } 27 | -------------------------------------------------------------------------------- /src/fdlibm/src/s_signgam.c: -------------------------------------------------------------------------------- 1 | #include "fdlibm.h" 2 | int signgam = 0; 3 | -------------------------------------------------------------------------------- /src/fdlibm/src/s_significand.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)s_significand.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * FDLIBM_significand(x) computes just 16 | * FDLIBM_scalb(x, (double) -FDLIBM_ilogb(x)), 17 | * for exercising the fraction-part(F) IEEE 754-1985 test vector. 18 | */ 19 | 20 | #include "fdlibm.h" 21 | 22 | #ifdef __STDC__ 23 | double FDLIBM_significand(double x) 24 | #else 25 | double FDLIBM_significand(x) 26 | double x; 27 | #endif 28 | { 29 | return FDLIBM___ieee754_scalb(x,(double) -FDLIBM_ilogb(x)); 30 | } 31 | -------------------------------------------------------------------------------- /src/fdlibm/src/w_acos.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)w_acos.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * wrap_acos(x) 16 | */ 17 | 18 | #include "fdlibm.h" 19 | 20 | 21 | #ifdef __STDC__ 22 | double FDLIBM_acos(double x) /* wrapper acos */ 23 | #else 24 | double FDLIBM_acos(x) /* wrapper acos */ 25 | double x; 26 | #endif 27 | { 28 | #ifdef _IEEE_LIBM 29 | return FDLIBM___ieee754_acos(x); 30 | #else 31 | double z; 32 | z = FDLIBM___ieee754_acos(x); 33 | if(_LIB_VERSION == _IEEE_ || FDLIBM_isnan(x)) return z; 34 | if(FDLIBM_fabs(x)>1.0) { 35 | return FDLIBM___kernel_standard(x,x,1); /* FDLIBM_acos(|x|>1) */ 36 | } else 37 | return z; 38 | #endif 39 | } 40 | -------------------------------------------------------------------------------- /src/fdlibm/src/w_acosh.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)w_acosh.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | * 13 | */ 14 | 15 | /* 16 | * wrapper FDLIBM_acosh(x) 17 | */ 18 | 19 | #include "fdlibm.h" 20 | 21 | #ifdef __STDC__ 22 | double FDLIBM_acosh(double x) /* wrapper acosh */ 23 | #else 24 | double FDLIBM_acosh(x) /* wrapper acosh */ 25 | double x; 26 | #endif 27 | { 28 | #ifdef _IEEE_LIBM 29 | return FDLIBM___ieee754_acosh(x); 30 | #else 31 | double z; 32 | z = FDLIBM___ieee754_acosh(x); 33 | if(_LIB_VERSION == _IEEE_ || FDLIBM_isnan(x)) return z; 34 | if(x<1.0) { 35 | return FDLIBM___kernel_standard(x,x,29); /* FDLIBM_acosh(x<1) */ 36 | } else 37 | return z; 38 | #endif 39 | } 40 | -------------------------------------------------------------------------------- /src/fdlibm/src/w_asin.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)w_asin.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | * 13 | */ 14 | 15 | /* 16 | * wrapper FDLIBM_asin(x) 17 | */ 18 | 19 | 20 | #include "fdlibm.h" 21 | 22 | 23 | #ifdef __STDC__ 24 | double FDLIBM_asin(double x) /* wrapper asin */ 25 | #else 26 | double FDLIBM_asin(x) /* wrapper asin */ 27 | double x; 28 | #endif 29 | { 30 | #ifdef _IEEE_LIBM 31 | return FDLIBM___ieee754_asin(x); 32 | #else 33 | double z; 34 | z = FDLIBM___ieee754_asin(x); 35 | if(_LIB_VERSION == _IEEE_ || FDLIBM_isnan(x)) return z; 36 | if(FDLIBM_fabs(x)>1.0) { 37 | return FDLIBM___kernel_standard(x,x,2); /* FDLIBM_asin(|x|>1) */ 38 | } else 39 | return z; 40 | #endif 41 | } 42 | -------------------------------------------------------------------------------- /src/fdlibm/src/w_atan2.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)w_atan2.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | * 13 | */ 14 | 15 | /* 16 | * wrapper FDLIBM_atan2(y,x) 17 | */ 18 | 19 | #include "fdlibm.h" 20 | 21 | 22 | #ifdef __STDC__ 23 | double FDLIBM_atan2(double y, double x) /* wrapper atan2 */ 24 | #else 25 | double FDLIBM_atan2(y,x) /* wrapper atan2 */ 26 | double y,x; 27 | #endif 28 | { 29 | #ifdef _IEEE_LIBM 30 | return FDLIBM___ieee754_atan2(y,x); 31 | #else 32 | double z; 33 | z = FDLIBM___ieee754_atan2(y,x); 34 | if(_LIB_VERSION == _IEEE_||FDLIBM_isnan(x)||FDLIBM_isnan(y)) return z; 35 | if(x==0.0&&y==0.0) { 36 | return FDLIBM___kernel_standard(y,x,3); /* FDLIBM_atan2(+-0,+-0) */ 37 | } else 38 | return z; 39 | #endif 40 | } 41 | -------------------------------------------------------------------------------- /src/fdlibm/src/w_cosh.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)w_cosh.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * wrapper FDLIBM_cosh(x) 16 | */ 17 | 18 | #include "fdlibm.h" 19 | 20 | #ifdef __STDC__ 21 | double FDLIBM_cosh(double x) /* wrapper cosh */ 22 | #else 23 | double FDLIBM_cosh(x) /* wrapper cosh */ 24 | double x; 25 | #endif 26 | { 27 | #ifdef _IEEE_LIBM 28 | return FDLIBM___ieee754_cosh(x); 29 | #else 30 | double z; 31 | z = FDLIBM___ieee754_cosh(x); 32 | if(_LIB_VERSION == _IEEE_ || FDLIBM_isnan(x)) return z; 33 | if(FDLIBM_fabs(x)>7.10475860073943863426e+02) { 34 | return FDLIBM___kernel_standard(x,x,5); /* cosh overflow */ 35 | } else 36 | return z; 37 | #endif 38 | } 39 | -------------------------------------------------------------------------------- /src/fdlibm/src/w_fmod.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)w_fmod.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * wrapper FDLIBM_fmod(x,y) 16 | */ 17 | 18 | #include "fdlibm.h" 19 | 20 | 21 | #ifdef __STDC__ 22 | double FDLIBM_fmod(double x, double y) /* wrapper fmod */ 23 | #else 24 | double FDLIBM_fmod(x,y) /* wrapper fmod */ 25 | double x,y; 26 | #endif 27 | { 28 | #ifdef _IEEE_LIBM 29 | return FDLIBM___ieee754_fmod(x,y); 30 | #else 31 | double z; 32 | z = FDLIBM___ieee754_fmod(x,y); 33 | if(_LIB_VERSION == _IEEE_ ||FDLIBM_isnan(y)||FDLIBM_isnan(x)) return z; 34 | if(y==0.0) { 35 | return FDLIBM___kernel_standard(x,y,27); /* FDLIBM_fmod(x,0) */ 36 | } else 37 | return z; 38 | #endif 39 | } 40 | -------------------------------------------------------------------------------- /src/fdlibm/src/w_hypot.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)w_hypot.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * wrapper FDLIBM_hypot(x,y) 16 | */ 17 | 18 | #include "fdlibm.h" 19 | 20 | 21 | #ifdef __STDC__ 22 | double FDLIBM_hypot(double x, double y)/* wrapper hypot */ 23 | #else 24 | double FDLIBM_hypot(x,y) /* wrapper hypot */ 25 | double x,y; 26 | #endif 27 | { 28 | #ifdef _IEEE_LIBM 29 | return FDLIBM___ieee754_hypot(x,y); 30 | #else 31 | double z; 32 | z = FDLIBM___ieee754_hypot(x,y); 33 | if(_LIB_VERSION == _IEEE_) return z; 34 | if((!FDLIBM_finite(z))&&FDLIBM_finite(x)&&FDLIBM_finite(y)) 35 | return FDLIBM___kernel_standard(x,y,4); /* hypot overflow */ 36 | else 37 | return z; 38 | #endif 39 | } 40 | -------------------------------------------------------------------------------- /src/fdlibm/src/w_log.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)w_log.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * wrapper FDLIBM_log(x) 16 | */ 17 | 18 | #include "fdlibm.h" 19 | 20 | 21 | #ifdef __STDC__ 22 | double FDLIBM_log(double x) /* wrapper log */ 23 | #else 24 | double FDLIBM_log(x) /* wrapper log */ 25 | double x; 26 | #endif 27 | { 28 | #ifdef _IEEE_LIBM 29 | return FDLIBM___ieee754_log(x); 30 | #else 31 | double z; 32 | z = FDLIBM___ieee754_log(x); 33 | if(_LIB_VERSION == _IEEE_ || FDLIBM_isnan(x) || x > 0.0) return z; 34 | if(x==0.0) 35 | return FDLIBM___kernel_standard(x,x,16); /* FDLIBM_log(0) */ 36 | else 37 | return FDLIBM___kernel_standard(x,x,17); /* FDLIBM_log(x<0) */ 38 | #endif 39 | } 40 | -------------------------------------------------------------------------------- /src/fdlibm/src/w_remainder.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)w_remainder.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * wrapper FDLIBM_remainder(x,p) 16 | */ 17 | 18 | #include "fdlibm.h" 19 | 20 | #ifdef __STDC__ 21 | double FDLIBM_remainder(double x, double y) /* wrapper remainder */ 22 | #else 23 | double FDLIBM_remainder(x,y) /* wrapper remainder */ 24 | double x,y; 25 | #endif 26 | { 27 | #ifdef _IEEE_LIBM 28 | return FDLIBM___ieee754_remainder(x,y); 29 | #else 30 | double z; 31 | z = FDLIBM___ieee754_remainder(x,y); 32 | if(_LIB_VERSION == _IEEE_ || FDLIBM_isnan(y)) return z; 33 | if(y==0.0) 34 | return FDLIBM___kernel_standard(x,y,28); /* FDLIBM_remainder(x,0) */ 35 | else 36 | return z; 37 | #endif 38 | } 39 | -------------------------------------------------------------------------------- /src/fdlibm/src/w_sinh.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)w_sinh.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * wrapper FDLIBM_sinh(x) 16 | */ 17 | 18 | #include "fdlibm.h" 19 | 20 | #ifdef __STDC__ 21 | double FDLIBM_sinh(double x) /* wrapper sinh */ 22 | #else 23 | double FDLIBM_sinh(x) /* wrapper sinh */ 24 | double x; 25 | #endif 26 | { 27 | #ifdef _IEEE_LIBM 28 | return FDLIBM___ieee754_sinh(x); 29 | #else 30 | double z; 31 | z = FDLIBM___ieee754_sinh(x); 32 | if(_LIB_VERSION == _IEEE_) return z; 33 | if(!FDLIBM_finite(z)&&FDLIBM_finite(x)) { 34 | return FDLIBM___kernel_standard(x,x,25); /* sinh overflow */ 35 | } else 36 | return z; 37 | #endif 38 | } 39 | -------------------------------------------------------------------------------- /src/fdlibm/src/w_sqrt.c: -------------------------------------------------------------------------------- 1 | 2 | /* @(#)w_sqrt.c 1.3 95/01/18 */ 3 | /* 4 | * ==================================================== 5 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 | * 7 | * Developed at SunSoft, a Sun Microsystems, Inc. business. 8 | * Permission to use, copy, modify, and distribute this 9 | * software is freely granted, provided that this notice 10 | * is preserved. 11 | * ==================================================== 12 | */ 13 | 14 | /* 15 | * wrapper FDLIBM_sqrt(x) 16 | */ 17 | 18 | #include "fdlibm.h" 19 | 20 | #ifdef __STDC__ 21 | double FDLIBM_sqrt(double x) /* wrapper sqrt */ 22 | #else 23 | double FDLIBM_sqrt(x) /* wrapper sqrt */ 24 | double x; 25 | #endif 26 | { 27 | #ifdef _IEEE_LIBM 28 | return FDLIBM___ieee754_sqrt(x); 29 | #else 30 | double z; 31 | z = FDLIBM___ieee754_sqrt(x); 32 | if(_LIB_VERSION == _IEEE_ || FDLIBM_isnan(x)) return z; 33 | if(x<0.0) { 34 | return FDLIBM___kernel_standard(x,x,26); /* FDLIBM_sqrt(negative) */ 35 | } else 36 | return z; 37 | #endif 38 | } 39 | -------------------------------------------------------------------------------- /src/init.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2010 Satoshi Nakamoto 2 | // Copyright (c) 2009-2014 The Bitcoin Core developers 3 | // Copyright (c) 2015 The Truthcoin 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 | 7 | #ifndef TRUTHCOIN_INIT_H 8 | #define TRUTHCOIN_INIT_H 9 | 10 | #include 11 | 12 | class CWallet; 13 | 14 | namespace boost 15 | { 16 | class thread_group; 17 | } // namespace boost 18 | 19 | extern CWallet* pwalletMain; 20 | 21 | void StartShutdown(); 22 | bool ShutdownRequested(); 23 | void Shutdown(); 24 | bool AppInit2(boost::thread_group& threadGroup); 25 | 26 | /** The help message mode determines what help message to show */ 27 | enum HelpMessageMode { 28 | HMM_TRUTHCOIND, 29 | HMM_TRUTHCOIN_QT 30 | }; 31 | 32 | /** Help for options shared between UI and daemon (for -help) */ 33 | std::string HelpMessage(HelpMessageMode mode); 34 | /** Returns licensing information (for -version) */ 35 | std::string LicenseInfo(); 36 | 37 | #endif // TRUTHCOIN_INIT_H 38 | -------------------------------------------------------------------------------- /src/json/json_spirit.h: -------------------------------------------------------------------------------- 1 | #ifndef JSON_SPIRIT 2 | #define JSON_SPIRIT 3 | 4 | // Copyright John W. Wilkinson 2007 - 2009. 5 | // Distributed under the MIT License, see accompanying file LICENSE.txt 6 | 7 | // json spirit version 4.03 8 | 9 | #if defined(_MSC_VER) && (_MSC_VER >= 1020) 10 | # pragma once 11 | #endif 12 | 13 | #include "json_spirit_value.h" 14 | #include "json_spirit_reader.h" 15 | #include "json_spirit_writer.h" 16 | #include "json_spirit_utils.h" 17 | 18 | #endif 19 | -------------------------------------------------------------------------------- /src/json/json_spirit_value.cpp: -------------------------------------------------------------------------------- 1 | /* Copyright (c) 2007 John W Wilkinson 2 | 3 | This source code can be used for any purpose as long as 4 | this comment is retained. */ 5 | 6 | // json spirit version 2.00 7 | 8 | #include "json_spirit_value.h" 9 | -------------------------------------------------------------------------------- /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/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/db/log_format.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 | // Log format information shared by reader and writer. 6 | // See ../doc/log_format.txt for more detail. 7 | 8 | #ifndef STORAGE_LEVELDB_DB_LOG_FORMAT_H_ 9 | #define STORAGE_LEVELDB_DB_LOG_FORMAT_H_ 10 | 11 | namespace leveldb { 12 | namespace log { 13 | 14 | enum RecordType { 15 | // Zero is reserved for preallocated files 16 | kZeroType = 0, 17 | 18 | kFullType = 1, 19 | 20 | // For fragments 21 | kFirstType = 2, 22 | kMiddleType = 3, 23 | kLastType = 4 24 | }; 25 | static const int kMaxRecordType = kLastType; 26 | 27 | static const int kBlockSize = 32768; 28 | 29 | // Header is checksum (4 bytes), length (2 bytes), type (1 byte). 30 | static const int kHeaderSize = 4 + 2 + 1; 31 | 32 | } // namespace log 33 | } // namespace leveldb 34 | 35 | #endif // STORAGE_LEVELDB_DB_LOG_FORMAT_H_ 36 | -------------------------------------------------------------------------------- /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/include/leveldb/dumpfile.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 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_INCLUDE_DUMPFILE_H_ 6 | #define STORAGE_LEVELDB_INCLUDE_DUMPFILE_H_ 7 | 8 | #include 9 | #include "leveldb/env.h" 10 | #include "leveldb/status.h" 11 | 12 | namespace leveldb { 13 | 14 | // Dump the contents of the file named by fname in text format to 15 | // *dst. Makes a sequence of dst->Append() calls; each call is passed 16 | // the newline-terminated text corresponding to a single item found 17 | // in the file. 18 | // 19 | // Returns a non-OK result if fname does not name a leveldb storage 20 | // file, or if the file cannot be read. 21 | Status DumpFile(Env* env, const std::string& fname, WritableFile* dst); 22 | 23 | } // namespace leveldb 24 | 25 | #endif // STORAGE_LEVELDB_INCLUDE_DUMPFILE_H_ 26 | -------------------------------------------------------------------------------- /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/table/merger.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_TABLE_MERGER_H_ 6 | #define STORAGE_LEVELDB_TABLE_MERGER_H_ 7 | 8 | namespace leveldb { 9 | 10 | class Comparator; 11 | class Iterator; 12 | 13 | // Return an iterator that provided the union of the data in 14 | // children[0,n-1]. Takes ownership of the child iterators and 15 | // will delete them when the result iterator is deleted. 16 | // 17 | // The result does no duplicate suppression. I.e., if a particular 18 | // key is present in K child iterators, it will be yielded K times. 19 | // 20 | // REQUIRES: n >= 0 21 | extern Iterator* NewMergingIterator( 22 | const Comparator* comparator, Iterator** children, int n); 23 | 24 | } // namespace leveldb 25 | 26 | #endif // STORAGE_LEVELDB_TABLE_MERGER_H_ 27 | -------------------------------------------------------------------------------- /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/histogram.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_UTIL_HISTOGRAM_H_ 6 | #define STORAGE_LEVELDB_UTIL_HISTOGRAM_H_ 7 | 8 | #include 9 | 10 | namespace leveldb { 11 | 12 | class Histogram { 13 | public: 14 | Histogram() { } 15 | ~Histogram() { } 16 | 17 | void Clear(); 18 | void Add(double value); 19 | void Merge(const Histogram& other); 20 | 21 | std::string ToString() const; 22 | 23 | private: 24 | double min_; 25 | double max_; 26 | double num_; 27 | double sum_; 28 | double sum_squares_; 29 | 30 | enum { kNumBuckets = 154 }; 31 | static const double kBucketLimit[kNumBuckets]; 32 | double buckets_[kNumBuckets]; 33 | 34 | double Median() const; 35 | double Percentile(double p) const; 36 | double Average() const; 37 | double StandardDeviation() const; 38 | }; 39 | 40 | } // namespace leveldb 41 | 42 | #endif // STORAGE_LEVELDB_UTIL_HISTOGRAM_H_ 43 | -------------------------------------------------------------------------------- /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 | compression(kSnappyCompression), 25 | filter_policy(NULL) { 26 | } 27 | 28 | 29 | } // namespace leveldb 30 | -------------------------------------------------------------------------------- /src/linalg/COPYING: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015 The Truthcoin Core developers 2 | 3 | Distributed under the MIT software license, see the accompanying 4 | file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | -------------------------------------------------------------------------------- /src/linalg/Makefile.am: -------------------------------------------------------------------------------- 1 | ACLOCAL_AMFLAGS = -I build-aux/m4 2 | 3 | AUTOMAKE_OPTIONS = subdir-objects 4 | 5 | lib_LTLIBRARIES = liblinalg.la 6 | include_HEADERS = src/tc_mat.h 7 | noinst_HEADERS = 8 | 9 | pkgconfigdir = $(libdir)/pkgconfig 10 | pkgconfig_DATA = liblinalg.pc 11 | 12 | liblinalg_la_SOURCES = src/tc_mat.c 13 | liblinalg_la_CPPFLAGS = -I$(top_srcdir)/include $(LINALG_INCLUDES) 14 | liblinalg_la_LIBADD = $(LINALG_LIBS) 15 | 16 | 17 | noinst_PROGRAMS = 18 | 19 | EXTRA_DIST = autogen.sh 20 | -------------------------------------------------------------------------------- /src/linalg/README.md: -------------------------------------------------------------------------------- 1 | liblinalg 2 | ============ 3 | 4 | Simple Linear Algebra Routines 5 | 6 | Implementation details 7 | ---------------------- 8 | 9 | * General 10 | * The programming is simple C. This helps in keeping it cache-efficient and compile-time quick. 11 | 12 | Build steps 13 | ----------- 14 | 15 | liblibalg is built using autotools: 16 | 17 | $ ./autogen.sh 18 | $ ./configure 19 | $ make 20 | $ sudo make install # optional 21 | -------------------------------------------------------------------------------- /src/linalg/autogen.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | autoreconf -if --warnings=all 4 | -------------------------------------------------------------------------------- /src/linalg/build-aux/m4/truthcoin_linalg.m4: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/linalg/liblinalg.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: liblinalg 7 | Description: Simple Linear Algebra Routines 8 | URL: https://github.com/truthcoin/ 9 | Version: @PACKAGE_VERSION@ 10 | Cflags: -I${includedir} 11 | Libs.private: @LINALG_LIBS@ 12 | Libs: -L${libdir} -llinalg 13 | 14 | -------------------------------------------------------------------------------- /src/noui.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2013 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_NOUI_H 7 | #define TRUTHCOIN_NOUI_H 8 | 9 | extern void noui_connect(); 10 | 11 | #endif // TRUTHCOIN_NOUI_H 12 | -------------------------------------------------------------------------------- /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-2014 The Bitcoin Core developers 3 | // Copyright (c) 2015 The Truthcoin 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 | 7 | #ifndef TRUTHCOIN_POW_H 8 | #define TRUTHCOIN_POW_H 9 | 10 | #include 11 | 12 | class CBlockHeader; 13 | class CBlockIndex; 14 | class uint256; 15 | class arith_uint256; 16 | 17 | unsigned int GetNextWorkRequired(const CBlockIndex* pindexLast, const CBlockHeader *pblock); 18 | 19 | /** Check whether a block hash satisfies the proof-of-work requirement specified by nBits */ 20 | bool CheckProofOfWork(uint256 hash, unsigned int nBits); 21 | arith_uint256 GetBlockProof(const CBlockIndex& block); 22 | 23 | #endif // TRUTHCOIN_POW_H 24 | -------------------------------------------------------------------------------- /src/qt/Makefile: -------------------------------------------------------------------------------- 1 | .PHONY: FORCE 2 | all: FORCE 3 | $(MAKE) -C .. truthcoin_qt test_truthcoin_qt 4 | clean: FORCE 5 | $(MAKE) -C .. truthcoin_qt_clean test_truthcoin_qt_clean 6 | check: FORCE 7 | $(MAKE) -C .. test_truthcoin_qt_check 8 | truthcoin-qt truthcoin-qt.exe: FORCE 9 | $(MAKE) -C .. truthcoin_qt 10 | -------------------------------------------------------------------------------- /src/qt/ballotballotfilterproxymodel.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 "ballotballotfilterproxymodel.h" 6 | #include "ballotballottablemodel.h" 7 | 8 | 9 | -------------------------------------------------------------------------------- /src/qt/ballotballotfilterproxymodel.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_BALLOTBALLOTFILTERPROXYMODEL_H 6 | #define TRUTHCOIN_QT_BALLOTBALLOTFILTERPROXYMODEL_H 7 | 8 | #include 9 | #include 10 | #include 11 | #include 12 | 13 | 14 | 15 | class BallotBallotFilterProxyModel 16 | : public QSortFilterProxyModel 17 | { 18 | Q_OBJECT 19 | 20 | public: 21 | explicit BallotBallotFilterProxyModel(QObject *parent=0) 22 | : QSortFilterProxyModel(parent) { } 23 | 24 | protected: 25 | 26 | private: 27 | }; 28 | 29 | 30 | #endif // TRUTHCOIN_QT_BALLOTBALLOTFILTERPROXYMODEL_H 31 | -------------------------------------------------------------------------------- /src/qt/ballotoutcomefilterproxymodel.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 "ballotoutcomefilterproxymodel.h" 6 | #include "ballotoutcometablemodel.h" 7 | 8 | 9 | -------------------------------------------------------------------------------- /src/qt/ballotoutcomefilterproxymodel.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_BALLOTOUTCOMEFILTERPROXYMODEL_H 6 | #define TRUTHCOIN_QT_BALLOTOUTCOMEFILTERPROXYMODEL_H 7 | 8 | #include 9 | #include 10 | #include 11 | #include 12 | 13 | 14 | 15 | class BallotOutcomeFilterProxyModel 16 | : public QSortFilterProxyModel 17 | { 18 | Q_OBJECT 19 | 20 | public: 21 | explicit BallotOutcomeFilterProxyModel(QObject *parent=0) 22 | : QSortFilterProxyModel(parent) { } 23 | 24 | protected: 25 | 26 | private: 27 | }; 28 | 29 | 30 | #endif // TRUTHCOIN_QT_BALLOTOUTCOMEFILTERPROXYMODEL_H 31 | -------------------------------------------------------------------------------- /src/qt/ballotsealedvotefilterproxymodel.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 "ballotsealedvotefilterproxymodel.h" 6 | #include "ballotsealedvotetablemodel.h" 7 | 8 | 9 | -------------------------------------------------------------------------------- /src/qt/ballotsealedvotefilterproxymodel.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_BALLOTSEALEDVOTEFILTERPROXYMODEL_H 6 | #define TRUTHCOIN_QT_BALLOTSEALEDVOTEFILTERPROXYMODEL_H 7 | 8 | #include 9 | #include 10 | #include 11 | #include 12 | 13 | 14 | 15 | class BallotSealedVoteFilterProxyModel 16 | : public QSortFilterProxyModel 17 | { 18 | Q_OBJECT 19 | 20 | public: 21 | explicit BallotSealedVoteFilterProxyModel(QObject *parent=0) 22 | : QSortFilterProxyModel(parent) { } 23 | 24 | protected: 25 | 26 | private: 27 | }; 28 | 29 | 30 | #endif // TRUTHCOIN_QT_BALLOTSEALEDVOTEFILTERPROXYMODEL_H 31 | -------------------------------------------------------------------------------- /src/qt/ballotvotefilterproxymodel.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 "ballotvotefilterproxymodel.h" 6 | #include "ballotvotetablemodel.h" 7 | 8 | 9 | -------------------------------------------------------------------------------- /src/qt/ballotvotefilterproxymodel.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_BALLOTVOTEFILTERPROXYMODEL_H 6 | #define TRUTHCOIN_QT_BALLOTVOTEFILTERPROXYMODEL_H 7 | 8 | #include 9 | #include 10 | #include 11 | #include 12 | 13 | 14 | 15 | class BallotVoteFilterProxyModel 16 | : public QSortFilterProxyModel 17 | { 18 | Q_OBJECT 19 | 20 | public: 21 | explicit BallotVoteFilterProxyModel(QObject *parent=0) 22 | : QSortFilterProxyModel(parent) { } 23 | 24 | protected: 25 | 26 | private: 27 | }; 28 | 29 | 30 | #endif // TRUTHCOIN_QT_BALLOTVOTEFILTERPROXYMODEL_H 31 | -------------------------------------------------------------------------------- /src/qt/coincontroltreewidget.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_COINCONTROLTREEWIDGET_H 7 | #define TRUTHCOIN_QT_COINCONTROLTREEWIDGET_H 8 | 9 | #include 10 | #include 11 | 12 | class CoinControlTreeWidget : public QTreeWidget 13 | { 14 | Q_OBJECT 15 | 16 | public: 17 | explicit CoinControlTreeWidget(QWidget *parent = 0); 18 | 19 | protected: 20 | virtual void keyPressEvent(QKeyEvent *event); 21 | }; 22 | 23 | #endif // TRUTHCOIN_QT_COINCONTROLTREEWIDGET_H 24 | -------------------------------------------------------------------------------- /src/qt/macnotificationhandler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_MACNOTIFICATIONHANDLER_H 7 | #define TRUTHCOIN_QT_MACNOTIFICATIONHANDLER_H 8 | 9 | #include 10 | 11 | /** Macintosh-specific notification handler (supports UserNotificationCenter and Growl). 12 | */ 13 | class MacNotificationHandler : public QObject 14 | { 15 | Q_OBJECT 16 | 17 | public: 18 | /** shows a 10.8+ UserNotification in the UserNotificationCenter 19 | */ 20 | void showNotification(const QString &title, const QString &text); 21 | 22 | /** executes AppleScript */ 23 | void sendAppleScript(const QString &script); 24 | 25 | /** check if OS can handle UserNotifications */ 26 | bool hasUserNotificationCenterSupport(void); 27 | static MacNotificationHandler *instance(); 28 | }; 29 | 30 | 31 | #endif // TRUTHCOIN_QT_MACNOTIFICATIONHANDLER_H 32 | -------------------------------------------------------------------------------- /src/qt/marketbranchfilterproxymodel.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 "marketbranchfilterproxymodel.h" 6 | #include "marketbranchtablemodel.h" 7 | 8 | 9 | bool MarketBranchFilterProxyModel::filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const 10 | { 11 | QModelIndex index = sourceModel()->index(sourceRow, 0, sourceParent); 12 | 13 | QString description = index.data(MarketBranchTableModel::DescriptionRole).toString(); 14 | if (!description.contains(filterDescription, Qt::CaseInsensitive)) 15 | return false; 16 | 17 | return true; 18 | } 19 | 20 | void MarketBranchFilterProxyModel::setFilterDescription(const QString &str) 21 | { 22 | filterDescription = (str.size() >= 2)? str: ""; 23 | invalidateFilter(); 24 | } 25 | 26 | -------------------------------------------------------------------------------- /src/qt/marketbranchfilterproxymodel.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_MARKETBRANCHFILTERPROXYMODEL_H 6 | #define TRUTHCOIN_QT_MARKETBRANCHFILTERPROXYMODEL_H 7 | 8 | #include 9 | #include 10 | #include 11 | #include 12 | 13 | 14 | 15 | class MarketBranchFilterProxyModel 16 | : public QSortFilterProxyModel 17 | { 18 | Q_OBJECT 19 | 20 | public: 21 | explicit MarketBranchFilterProxyModel(QObject *parent=0) 22 | : QSortFilterProxyModel(parent) { } 23 | 24 | void setFilterDescription(const QString &); 25 | 26 | protected: 27 | bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const; 28 | 29 | private: 30 | QString filterDescription; 31 | }; 32 | 33 | 34 | #endif // TRUTHCOIN_QT_MARKETBRANCHFILTERPROXYMODEL_H 35 | -------------------------------------------------------------------------------- /src/qt/marketdecisionfilterproxymodel.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_MARKETDECISIONFILTERPROXYMODEL_H 6 | #define TRUTHCOIN_QT_MARKETDECISIONFILTERPROXYMODEL_H 7 | 8 | #include 9 | #include 10 | #include 11 | #include 12 | 13 | 14 | 15 | class MarketDecisionFilterProxyModel 16 | : public QSortFilterProxyModel 17 | { 18 | Q_OBJECT 19 | 20 | public: 21 | explicit MarketDecisionFilterProxyModel(QObject *parent=0) 22 | : QSortFilterProxyModel(parent) { } 23 | 24 | void setFilterAddress(const QString &); 25 | void setFilterPrompt(const QString &); 26 | 27 | protected: 28 | bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const; 29 | 30 | private: 31 | QString filterAddress; 32 | QString filterPrompt; 33 | }; 34 | 35 | 36 | #endif // TRUTHCOIN_QT_MARKETDECISIONFILTERPROXYMODEL_H 37 | -------------------------------------------------------------------------------- /src/qt/markettradefilterproxymodel.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 "markettradefilterproxymodel.h" 6 | #include "markettradetablemodel.h" 7 | 8 | 9 | bool MarketTradeFilterProxyModel::filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const 10 | { 11 | QModelIndex index = sourceModel()->index(sourceRow, 0, sourceParent); 12 | 13 | QString address = index.data(MarketTradeTableModel::AddressRole).toString(); 14 | if (!address.contains(filterAddress, Qt::CaseSensitive)) 15 | return false; 16 | 17 | return true; 18 | } 19 | 20 | void MarketTradeFilterProxyModel::setFilterAddress(const QString &str) 21 | { 22 | filterAddress = (str.size() >= 2)? str: ""; 23 | invalidateFilter(); 24 | } 25 | 26 | 27 | -------------------------------------------------------------------------------- /src/qt/markettradefilterproxymodel.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_MARKETTRADEFILTERPROXYMODEL_H 6 | #define TRUTHCOIN_QT_MARKETTRADEFILTERPROXYMODEL_H 7 | 8 | #include 9 | #include 10 | #include 11 | #include 12 | 13 | 14 | class MarketTradeFilterProxyModel 15 | : public QSortFilterProxyModel 16 | { 17 | Q_OBJECT 18 | 19 | public: 20 | explicit MarketTradeFilterProxyModel(QObject *parent=0) 21 | : QSortFilterProxyModel(parent) { } 22 | 23 | void setFilterAddress(const QString &); 24 | 25 | protected: 26 | bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const; 27 | 28 | private: 29 | QString filterAddress; 30 | }; 31 | 32 | 33 | #endif // TRUTHCOIN_QT_MARKETTRADEFILTERPROXYMODEL_H 34 | -------------------------------------------------------------------------------- /src/qt/marketviewgraph.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_MARKETVIEWGRAPH_H 6 | #define TRUTHCOIN_QT_MARKETVIEWGRAPH_H 7 | 8 | #include 9 | #include 10 | 11 | 12 | class MarketViewGraph 13 | : public QWidget 14 | { 15 | Q_OBJECT 16 | 17 | public: 18 | explicit MarketViewGraph(QWidget *parent=0); 19 | void paintEvent(QPaintEvent *); 20 | void setData(const double *X, const double *Y, uint32_t N); 21 | 22 | private: 23 | double *X; /* X[] */ 24 | double *Y; /* Y[] */ 25 | uint32_t N; 26 | bool dataIsChanging; 27 | }; 28 | 29 | #endif // TRUTHCOIN_QT_MARKETVIEWGRAPH_H 30 | -------------------------------------------------------------------------------- /src/qt/openuridialog.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_OPENURIDIALOG_H 7 | #define TRUTHCOIN_QT_OPENURIDIALOG_H 8 | 9 | #include 10 | 11 | namespace Ui { 12 | class OpenURIDialog; 13 | } 14 | 15 | class OpenURIDialog : public QDialog 16 | { 17 | Q_OBJECT 18 | 19 | public: 20 | explicit OpenURIDialog(QWidget *parent); 21 | ~OpenURIDialog(); 22 | 23 | QString getURI(); 24 | 25 | protected slots: 26 | void accept(); 27 | 28 | private slots: 29 | void on_selectFileButton_clicked(); 30 | 31 | private: 32 | Ui::OpenURIDialog *ui; 33 | }; 34 | 35 | #endif // TRUTHCOIN_QT_OPENURIDIALOG_H 36 | -------------------------------------------------------------------------------- /src/qt/qvaluecombobox.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 "qvaluecombobox.h" 7 | 8 | QValueComboBox::QValueComboBox(QWidget *parent) : 9 | QComboBox(parent), role(Qt::UserRole) 10 | { 11 | connect(this, SIGNAL(currentIndexChanged(int)), this, SLOT(handleSelectionChanged(int))); 12 | } 13 | 14 | QVariant QValueComboBox::value() const 15 | { 16 | return itemData(currentIndex(), role); 17 | } 18 | 19 | void QValueComboBox::setValue(const QVariant &value) 20 | { 21 | setCurrentIndex(findData(value, role)); 22 | } 23 | 24 | void QValueComboBox::setRole(int role) 25 | { 26 | this->role = role; 27 | } 28 | 29 | void QValueComboBox::handleSelectionChanged(int idx) 30 | { 31 | emit valueChanged(); 32 | } 33 | -------------------------------------------------------------------------------- /src/qt/res/icons/about.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/about.png -------------------------------------------------------------------------------- /src/qt/res/icons/about_qt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/about_qt.png -------------------------------------------------------------------------------- /src/qt/res/icons/add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/add.png -------------------------------------------------------------------------------- /src/qt/res/icons/address-book.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/address-book.png -------------------------------------------------------------------------------- /src/qt/res/icons/ballot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/ballot.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/clock1.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/clock2.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/clock3.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/clock4.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/clock5.png -------------------------------------------------------------------------------- /src/qt/res/icons/configure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/configure.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/connect0.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/connect1.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/connect2.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/connect3.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/connect4.png -------------------------------------------------------------------------------- /src/qt/res/icons/debugwindow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/debugwindow.png -------------------------------------------------------------------------------- /src/qt/res/icons/decisions.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/decisions.png -------------------------------------------------------------------------------- /src/qt/res/icons/edit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/edit.png -------------------------------------------------------------------------------- /src/qt/res/icons/editcopy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/editcopy.png -------------------------------------------------------------------------------- /src/qt/res/icons/editpaste.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/editpaste.png -------------------------------------------------------------------------------- /src/qt/res/icons/export.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/export.png -------------------------------------------------------------------------------- /src/qt/res/icons/eye.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/eye.png -------------------------------------------------------------------------------- /src/qt/res/icons/eye_minus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/eye_minus.png -------------------------------------------------------------------------------- /src/qt/res/icons/eye_plus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/eye_plus.png -------------------------------------------------------------------------------- /src/qt/res/icons/filesave.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/filesave.png -------------------------------------------------------------------------------- /src/qt/res/icons/history.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/history.png -------------------------------------------------------------------------------- /src/qt/res/icons/info.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/info.png -------------------------------------------------------------------------------- /src/qt/res/icons/key.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/key.png -------------------------------------------------------------------------------- /src/qt/res/icons/lock_closed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/lock_closed.png -------------------------------------------------------------------------------- /src/qt/res/icons/lock_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/lock_open.png -------------------------------------------------------------------------------- /src/qt/res/icons/market.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/market.png -------------------------------------------------------------------------------- /src/qt/res/icons/open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/open.png -------------------------------------------------------------------------------- /src/qt/res/icons/overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/overview.png -------------------------------------------------------------------------------- /src/qt/res/icons/quit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/quit.png -------------------------------------------------------------------------------- /src/qt/res/icons/receive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/receive.png -------------------------------------------------------------------------------- /src/qt/res/icons/remove.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/remove.png -------------------------------------------------------------------------------- /src/qt/res/icons/resolve.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/resolve.png -------------------------------------------------------------------------------- /src/qt/res/icons/send.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/send.png -------------------------------------------------------------------------------- /src/qt/res/icons/synced.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/synced.png -------------------------------------------------------------------------------- /src/qt/res/icons/transaction0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/transaction0.png -------------------------------------------------------------------------------- /src/qt/res/icons/transaction2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/transaction2.png -------------------------------------------------------------------------------- /src/qt/res/icons/transaction_conflicted.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/transaction_conflicted.png -------------------------------------------------------------------------------- /src/qt/res/icons/truthcoin.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/truthcoin.icns -------------------------------------------------------------------------------- /src/qt/res/icons/truthcoin.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/truthcoin.ico -------------------------------------------------------------------------------- /src/qt/res/icons/truthcoin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/truthcoin.png -------------------------------------------------------------------------------- /src/qt/res/icons/tx_inout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/tx_inout.png -------------------------------------------------------------------------------- /src/qt/res/icons/tx_input.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/tx_input.png -------------------------------------------------------------------------------- /src/qt/res/icons/tx_mined.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/tx_mined.png -------------------------------------------------------------------------------- /src/qt/res/icons/tx_output.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/tx_output.png -------------------------------------------------------------------------------- /src/qt/res/icons/verify.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/icons/verify.png -------------------------------------------------------------------------------- /src/qt/res/movies/makespinner.sh: -------------------------------------------------------------------------------- 1 | for i in {1..35} 2 | do 3 | value=$(printf "%03d" $i) 4 | angle=$(($i * 10)) 5 | convert spinner-000.png -background "rgba(0,0,0,0.0)" -distort SRT $angle spinner-$value.png 6 | done 7 | -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-000.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-000.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-001.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-001.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-002.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-002.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-003.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-003.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-004.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-004.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-005.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-005.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-006.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-006.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-007.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-007.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-008.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-008.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-009.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-009.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-010.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-010.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-011.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-011.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-012.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-012.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-013.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-013.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-014.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-014.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-015.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-015.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-016.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-016.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-017.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-017.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-018.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-018.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-019.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-019.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-020.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-020.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-021.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-021.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-022.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-022.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-023.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-023.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-024.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-025.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-025.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-026.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-026.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-027.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-027.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-028.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-028.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-029.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-029.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-030.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-030.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-031.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-031.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-032.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-032.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-033.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-033.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-034.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-034.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-035.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/movies/spinner-035.png -------------------------------------------------------------------------------- /src/qt/res/spinner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/qt/res/spinner.png -------------------------------------------------------------------------------- /src/qt/res/src/clock_1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/qt/res/src/connect-0.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 9 | 11 | 12 | -------------------------------------------------------------------------------- /src/qt/res/src/tx_in.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /src/qt/res/src/tx_inout.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 11 | 12 | -------------------------------------------------------------------------------- /src/qt/resolvevotegraph.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_RESOLVEVOTEGRAPH_H 6 | #define TRUTHCOIN_QT_RESOLVEVOTEGRAPH_H 7 | 8 | #include 9 | #include 10 | 11 | struct tc_vote; 12 | 13 | class ResolveVoteGraph 14 | : public QWidget 15 | { 16 | Q_OBJECT 17 | 18 | public: 19 | ResolveVoteGraph(QWidget *parent=0); 20 | 21 | void paintEvent(QPaintEvent *); 22 | void setVotePtr(const struct tc_vote **ptr) { vote_ptr = ptr; } 23 | 24 | private: 25 | const struct tc_vote **vote_ptr; 26 | }; 27 | 28 | #endif // TRUTHCOIN_QT_RESOLVEVOTEGRAPH_H 29 | -------------------------------------------------------------------------------- /src/qt/scicon.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_SCICON_H 7 | #define TRUTHCOIN_QT_SCICON_H 8 | 9 | #include 10 | 11 | QT_BEGIN_NAMESPACE 12 | class QColor; 13 | class QIcon; 14 | class QString; 15 | QT_END_NAMESPACE 16 | 17 | QImage SingleColorImage(const QString& filename, const QColor&); 18 | QIcon SingleColorIcon(const QIcon&, const QColor&); 19 | QIcon SingleColorIcon(const QString& filename, const QColor&); 20 | QColor SingleColor(); 21 | QIcon SingleColorIcon(const QString& filename); 22 | QIcon TextColorIcon(const QIcon&); 23 | QIcon TextColorIcon(const QString& filename); 24 | 25 | #endif // TRUTHCOIN_QT_SCICON_H 26 | -------------------------------------------------------------------------------- /src/qt/test/Makefile: -------------------------------------------------------------------------------- 1 | all: 2 | $(MAKE) -C ../../ test_truthcoin_qt 3 | clean: 4 | $(MAKE) -C ../../ test_truthcoin_qt_clean 5 | check: 6 | $(MAKE) -C ../../ test_truthcoin_qt_check 7 | -------------------------------------------------------------------------------- /src/qt/test/paymentservertests.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2014 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_TEST_PAYMENTSERVERTESTS_H 7 | #define TRUTHCOIN_QT_TEST_PAYMENTSERVERTESTS_H 8 | 9 | #include "../paymentserver.h" 10 | 11 | #include 12 | #include 13 | 14 | class PaymentServerTests : public QObject 15 | { 16 | Q_OBJECT 17 | 18 | private slots: 19 | void paymentServerTests(); 20 | }; 21 | 22 | // Dummy class to receive paymentserver signals. 23 | // If SendCoinsRecipient was a proper QObject, then 24 | // we could use QSignalSpy... but it's not. 25 | class RecipientCatcher : public QObject 26 | { 27 | Q_OBJECT 28 | 29 | public slots: 30 | void getRecipient(SendCoinsRecipient r); 31 | 32 | public: 33 | SendCoinsRecipient recipient; 34 | }; 35 | 36 | #endif // TRUTHCOIN_QT_TEST_PAYMENTSERVERTESTS_H 37 | -------------------------------------------------------------------------------- /src/qt/test/uritests.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2014 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_TEST_URITESTS_H 7 | #define TRUTHCOIN_QT_TEST_URITESTS_H 8 | 9 | #include 10 | #include 11 | 12 | class URITests : public QObject 13 | { 14 | Q_OBJECT 15 | 16 | private slots: 17 | void uriTests(); 18 | }; 19 | 20 | #endif // TRUTHCOIN_QT_TEST_URITESTS_H 21 | -------------------------------------------------------------------------------- /src/qt/transactiondesc.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_TRANSACTIONDESC_H 7 | #define TRUTHCOIN_QT_TRANSACTIONDESC_H 8 | 9 | #include 10 | #include 11 | 12 | class TransactionRecord; 13 | 14 | class CWallet; 15 | class CWalletTx; 16 | 17 | /** Provide a human-readable extended HTML description of a transaction. 18 | */ 19 | class TransactionDesc: public QObject 20 | { 21 | Q_OBJECT 22 | 23 | public: 24 | static QString toHTML(CWallet *wallet, CWalletTx &wtx, TransactionRecord *rec, int unit); 25 | 26 | private: 27 | TransactionDesc() {} 28 | 29 | static QString FormatTxStatus(const CWalletTx& wtx); 30 | }; 31 | 32 | #endif // TRUTHCOIN_QT_TRANSACTIONDESC_H 33 | -------------------------------------------------------------------------------- /src/qt/transactiondescdialog.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 "transactiondescdialog.h" 7 | #include "ui_transactiondescdialog.h" 8 | 9 | #include "transactiontablemodel.h" 10 | 11 | #include 12 | 13 | TransactionDescDialog::TransactionDescDialog(const QModelIndex &idx, QWidget *parent) : 14 | QDialog(parent), 15 | ui(new Ui::TransactionDescDialog) 16 | { 17 | ui->setupUi(this); 18 | QString desc = idx.data(TransactionTableModel::LongDescriptionRole).toString(); 19 | ui->detailText->setHtml(desc); 20 | } 21 | 22 | TransactionDescDialog::~TransactionDescDialog() 23 | { 24 | delete ui; 25 | } 26 | -------------------------------------------------------------------------------- /src/qt/transactiondescdialog.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_TRANSACTIONDESCDIALOG_H 7 | #define TRUTHCOIN_QT_TRANSACTIONDESCDIALOG_H 8 | 9 | #include 10 | 11 | namespace Ui { 12 | class TransactionDescDialog; 13 | } 14 | 15 | QT_BEGIN_NAMESPACE 16 | class QModelIndex; 17 | QT_END_NAMESPACE 18 | 19 | /** Dialog showing transaction details. */ 20 | class TransactionDescDialog : public QDialog 21 | { 22 | Q_OBJECT 23 | 24 | public: 25 | explicit TransactionDescDialog(const QModelIndex &idx, QWidget *parent = 0); 26 | ~TransactionDescDialog(); 27 | 28 | private: 29 | Ui::TransactionDescDialog *ui; 30 | }; 31 | 32 | #endif // TRUTHCOIN_QT_TRANSACTIONDESCDIALOG_H 33 | -------------------------------------------------------------------------------- /src/qt/winshutdownmonitor.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 TRUTHCOIN_QT_WINSHUTDOWNMONITOR_H 7 | #define TRUTHCOIN_QT_WINSHUTDOWNMONITOR_H 8 | 9 | #ifdef WIN32 10 | #include 11 | #include 12 | 13 | #if QT_VERSION >= 0x050000 14 | #include // for HWND 15 | 16 | #include 17 | 18 | class WinShutdownMonitor : public QAbstractNativeEventFilter 19 | { 20 | public: 21 | /** Implements QAbstractNativeEventFilter interface for processing Windows messages */ 22 | bool nativeEventFilter(const QByteArray &eventType, void *pMessage, long *pnResult); 23 | 24 | /** Register the reason for blocking shutdown on Windows to allow clean client exit */ 25 | static void registerShutdownBlockReason(const QString& strReason, const HWND& mainWinId); 26 | }; 27 | #endif 28 | #endif 29 | 30 | #endif // TRUTHCOIN_QT_WINSHUTDOWNMONITOR_H 31 | -------------------------------------------------------------------------------- /src/rpcclient.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2010 Satoshi Nakamoto 2 | // Copyright (c) 2009-2014 The Bitcoin Core developers 3 | // Copyright (c) 2015 The Truthcoin 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 | 7 | #ifndef TRUTHCOIN_RPCCLIENT_H 8 | #define TRUTHCOIN_RPCCLIENT_H 9 | 10 | #include "json/json_spirit_reader_template.h" 11 | #include "json/json_spirit_utils.h" 12 | #include "json/json_spirit_writer_template.h" 13 | 14 | json_spirit::Array RPCConvertValues(const std::string& strMethod, const std::vector& strParams); 15 | 16 | #endif // TRUTHCOIN_RPCCLIENT_H 17 | -------------------------------------------------------------------------------- /src/script/sigcache.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2010 Satoshi Nakamoto 2 | // Copyright (c) 2009-2014 The Bitcoin Core developers 3 | // Copyright (c) 2015 The Truthcoin 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 | 7 | #ifndef TRUTHCOIN_SCRIPT_SIGCACHE_H 8 | #define TRUTHCOIN_SCRIPT_SIGCACHE_H 9 | 10 | #include "script/interpreter.h" 11 | 12 | #include 13 | 14 | class CPubKey; 15 | 16 | class CachingSignatureChecker : public SignatureChecker 17 | { 18 | private: 19 | bool store; 20 | 21 | public: 22 | CachingSignatureChecker(const CTransaction& txToIn, unsigned int nInIn, bool storeIn=true) : SignatureChecker(txToIn, nInIn), store(storeIn) {} 23 | 24 | bool VerifySignature(const std::vector& vchSig, const CPubKey& vchPubKey, const uint256& sighash) const; 25 | }; 26 | 27 | #endif // TRUTHCOIN_SCRIPT_SIGCACHE_H 28 | -------------------------------------------------------------------------------- /src/secp256k1/.gitignore: -------------------------------------------------------------------------------- 1 | bench_inv 2 | bench_sign 3 | bench_verify 4 | tests 5 | *.exe 6 | *.so 7 | *.a 8 | !.gitignore 9 | 10 | Makefile 11 | configure 12 | .libs/ 13 | Makefile.in 14 | aclocal.m4 15 | autom4te.cache/ 16 | config.log 17 | config.status 18 | *.tar.gz 19 | *.la 20 | libtool 21 | .deps/ 22 | .dirstamp 23 | *.lo 24 | *.o 25 | *~ 26 | src/libsecp256k1-config.h 27 | src/libsecp256k1-config.h.in 28 | m4/libtool.m4 29 | m4/ltoptions.m4 30 | m4/ltsugar.m4 31 | m4/ltversion.m4 32 | m4/lt~obsolete.m4 33 | src/stamp-h1 34 | libsecp256k1.pc 35 | -------------------------------------------------------------------------------- /src/secp256k1/COPYING: -------------------------------------------------------------------------------- 1 | Copyright (c) 2013 Pieter Wuille 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /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/truthcoin/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/truthcoin/truthcoin-cpp/a85161e8a2bbb6bc4d0a5553403f0b8b1f9ac529/src/secp256k1/obj/.gitignore -------------------------------------------------------------------------------- /src/secp256k1/src/ecmult.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_ECMULT_ 8 | #define _SECP256K1_ECMULT_ 9 | 10 | #include "num.h" 11 | #include "group.h" 12 | 13 | static void secp256k1_ecmult_start(void); 14 | static void secp256k1_ecmult_stop(void); 15 | 16 | /** Double multiply: R = na*A + ng*G */ 17 | static void secp256k1_ecmult(secp256k1_gej_t *r, const secp256k1_gej_t *a, const secp256k1_scalar_t *na, const secp256k1_scalar_t *ng); 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /src/secp256k1/src/ecmult_gen.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_ECMULT_GEN_ 8 | #define _SECP256K1_ECMULT_GEN_ 9 | 10 | #include "scalar.h" 11 | #include "group.h" 12 | 13 | static void secp256k1_ecmult_gen_start(void); 14 | static void secp256k1_ecmult_gen_stop(void); 15 | 16 | /** Multiply with the generator: R = a*G */ 17 | static void secp256k1_ecmult_gen(secp256k1_gej_t *r, const secp256k1_scalar_t *a); 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /src/secp256k1/src/field_10x26.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_FIELD_REPR_ 8 | #define _SECP256K1_FIELD_REPR_ 9 | 10 | #include 11 | 12 | typedef struct { 13 | /* X = sum(i=0..9, elem[i]*2^26) mod n */ 14 | uint32_t n[10]; 15 | #ifdef VERIFY 16 | int magnitude; 17 | int normalized; 18 | #endif 19 | } secp256k1_fe_t; 20 | 21 | #endif 22 | -------------------------------------------------------------------------------- /src/secp256k1/src/field_5x52.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_FIELD_REPR_ 8 | #define _SECP256K1_FIELD_REPR_ 9 | 10 | #include 11 | 12 | typedef struct { 13 | /* X = sum(i=0..4, elem[i]*2^52) mod n */ 14 | uint64_t n[5]; 15 | #ifdef VERIFY 16 | int magnitude; 17 | int normalized; 18 | #endif 19 | } secp256k1_fe_t; 20 | 21 | #endif 22 | -------------------------------------------------------------------------------- /src/secp256k1/src/field_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_FIELD_REPR_ 8 | #define _SECP256K1_FIELD_REPR_ 9 | 10 | #include 11 | 12 | #define FIELD_LIMBS ((256 + GMP_NUMB_BITS - 1) / GMP_NUMB_BITS) 13 | 14 | typedef struct { 15 | mp_limb_t n[FIELD_LIMBS+1]; 16 | } secp256k1_fe_t; 17 | 18 | #endif 19 | -------------------------------------------------------------------------------- /src/secp256k1/src/java/org_truthcoin_NativeSecp256k1.c: -------------------------------------------------------------------------------- 1 | #include "org_truthcoin_NativeSecp256k1.h" 2 | #include "include/secp256k1.h" 3 | 4 | JNIEXPORT jint JNICALL Java_org_truthcoin_NativeSecp256k1_secp256k1_1ecdsa_1verify 5 | (JNIEnv* env, jclass classObject, jobject byteBufferObject) 6 | { 7 | unsigned char* data = (unsigned char*) (*env)->GetDirectBufferAddress(env, byteBufferObject); 8 | int sigLen = *((int*)(data + 32)); 9 | int pubLen = *((int*)(data + 32 + 4)); 10 | 11 | return secp256k1_ecdsa_verify(data, 32, data+32+8, sigLen, data+32+8+sigLen, pubLen); 12 | } 13 | 14 | static void __javasecp256k1_attach(void) __attribute__((constructor)); 15 | static void __javasecp256k1_detach(void) __attribute__((destructor)); 16 | 17 | static void __javasecp256k1_attach(void) { 18 | secp256k1_start(SECP256K1_START_VERIFY); 19 | } 20 | 21 | static void __javasecp256k1_detach(void) { 22 | secp256k1_stop(); 23 | } 24 | -------------------------------------------------------------------------------- /src/secp256k1/src/java/org_truthcoin_NativeSecp256k1.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include 3 | /* Header for class org_truthcoin_NativeSecp256k1 */ 4 | 5 | #ifndef _Included_org_truthcoin_NativeSecp256k1 6 | #define _Included_org_truthcoin_NativeSecp256k1 7 | #ifdef __cplusplus 8 | extern "C" { 9 | #endif 10 | /* 11 | * Class: org_truthcoin_NativeSecp256k1 12 | * Method: secp256k1_ecdsa_verify 13 | * Signature: (Ljava/nio/ByteBuffer;)I 14 | */ 15 | JNIEXPORT jint JNICALL Java_org_truthcoin_NativeSecp256k1_secp256k1_1ecdsa_1verify 16 | (JNIEnv *, jclass, jobject); 17 | 18 | #ifdef __cplusplus 19 | } 20 | #endif 21 | #endif 22 | -------------------------------------------------------------------------------- /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_t; 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_t; 16 | 17 | #endif 18 | -------------------------------------------------------------------------------- /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_t; 16 | 17 | #endif 18 | -------------------------------------------------------------------------------- /src/secp256k1/src/testrand.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_TESTRAND_H_ 8 | #define _SECP256K1_TESTRAND_H_ 9 | 10 | #if defined HAVE_CONFIG_H 11 | #include "libsecp256k1-config.h" 12 | #endif 13 | 14 | /** Seed the pseudorandom number generator. */ 15 | SECP256K1_INLINE static void secp256k1_rand_seed(uint64_t v); 16 | 17 | /** Generate a pseudorandom 32-bit number. */ 18 | static uint32_t secp256k1_rand32(void); 19 | 20 | /** Generate a pseudorandom 32-byte array. */ 21 | static void secp256k1_rand256(unsigned char *b32); 22 | 23 | /** Generate a pseudorandom 32-byte array with long sequences of zero and one bits. */ 24 | static void secp256k1_rand256_test(unsigned char *b32); 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /src/test/Makefile: -------------------------------------------------------------------------------- 1 | all: 2 | $(MAKE) -C .. truthcoin_test 3 | clean: 4 | $(MAKE) -C .. truthcoin_test_clean 5 | check: 6 | $(MAKE) -C .. truthcoin_test_check 7 | -------------------------------------------------------------------------------- /src/test/base32_tests.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012-2013 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 "utilstrencodings.h" 7 | 8 | #include 9 | 10 | BOOST_AUTO_TEST_SUITE(base32_tests) 11 | 12 | BOOST_AUTO_TEST_CASE(base32_testvectors) 13 | { 14 | static const std::string vstrIn[] = {"","f","fo","foo","foob","fooba","foobar"}; 15 | static const std::string vstrOut[] = {"","my======","mzxq====","mzxw6===","mzxw6yq=","mzxw6ytb","mzxw6ytboi======"}; 16 | for (unsigned int i=0; i 9 | 10 | BOOST_AUTO_TEST_SUITE(base64_tests) 11 | 12 | BOOST_AUTO_TEST_CASE(base64_testvectors) 13 | { 14 | static const std::string vstrIn[] = {"","f","fo","foo","foob","fooba","foobar"}; 15 | static const std::string vstrOut[] = {"","Zg==","Zm8=","Zm9v","Zm9vYg==","Zm9vYmE=","Zm9vYmFy"}; 16 | for (unsigned int i=0; i 10 | 11 | BOOST_AUTO_TEST_SUITE(main_tests) 12 | 13 | BOOST_AUTO_TEST_CASE(subsidy_limit_test) 14 | { 15 | CAmount nSum = 0; 16 | for (int nHeight = 0; nHeight < 14000000; nHeight += 1000) { 17 | CAmount nSubsidy = GetBlockValue(nHeight, 0); 18 | BOOST_CHECK(nSubsidy <= 50 * COIN); 19 | nSum += nSubsidy * 1000; 20 | BOOST_CHECK(MoneyRange(nSum)); 21 | } 22 | BOOST_CHECK(nSum == 2099999997690000ULL); 23 | } 24 | 25 | BOOST_AUTO_TEST_SUITE_END() 26 | -------------------------------------------------------------------------------- /src/test/sanity_tests.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012-2013 The Bitcoin Core developers 2 | // Copyright (c) 2015 The Truthcoin 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 "compat/sanity.h" 7 | #include "key.h" 8 | 9 | #include 10 | BOOST_AUTO_TEST_SUITE(sanity_tests) 11 | 12 | BOOST_AUTO_TEST_CASE(basic_sanity) 13 | { 14 | BOOST_CHECK_MESSAGE(glibc_sanity_test() == true, "libc sanity test"); 15 | BOOST_CHECK_MESSAGE(glibcxx_sanity_test() == true, "stdlib sanity test"); 16 | BOOST_CHECK_MESSAGE(ECC_InitSanityCheck() == true, "openssl ECC test"); 17 | } 18 | 19 | BOOST_AUTO_TEST_SUITE_END() 20 | -------------------------------------------------------------------------------- /src/test/truthcoin-util-test.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | # Copyright 2014 BitPay, Inc. 3 | # Distributed under the MIT software license, see the accompanying 4 | # file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | import os 7 | import bctest 8 | import buildenv 9 | 10 | if __name__ == '__main__': 11 | bctest.bctester(os.environ["srcdir"] + "/test/data", 12 | "truthcoin-util-test.json",buildenv) 13 | 14 | -------------------------------------------------------------------------------- /src/utilmoneystr.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2010 Satoshi Nakamoto 2 | // Copyright (c) 2009-2014 The Bitcoin Core developers 3 | // Copyright (c) 2015 The Truthcoin 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 | 7 | /** 8 | * Money parsing/formatting utilities. 9 | */ 10 | #ifndef TRUTHCOIN_UTILMONEYSTR_H 11 | #define TRUTHCOIN_UTILMONEYSTR_H 12 | 13 | #include 14 | #include 15 | 16 | #include "amount.h" 17 | 18 | std::string FormatMoney(const CAmount& n, bool fPlus=false); 19 | bool ParseMoney(const std::string& str, CAmount& nRet); 20 | bool ParseMoney(const char* pszIn, CAmount& nRet); 21 | 22 | #endif // TRUTHCOIN_UTILMONEYSTR_H 23 | -------------------------------------------------------------------------------- /src/utiltime.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2010 Satoshi Nakamoto 2 | // Copyright (c) 2009-2014 The Bitcoin Core developers 3 | // Copyright (c) 2015 The Truthcoin 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 | 7 | #ifndef TRUTHCOIN_UTILTIME_H 8 | #define TRUTHCOIN_UTILTIME_H 9 | 10 | #include 11 | #include 12 | 13 | int64_t GetTime(); 14 | int64_t GetTimeMillis(); 15 | int64_t GetTimeMicros(); 16 | void SetMockTime(int64_t nMockTimeIn); 17 | void MilliSleep(int64_t n); 18 | 19 | std::string DateTimeStrFormat(const char* pszFormat, int64_t nTime); 20 | 21 | #endif // TRUTHCOIN_UTILTIME_H 22 | -------------------------------------------------------------------------------- /src/wallet_ismine.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2010 Satoshi Nakamoto 2 | // Copyright (c) 2009-2014 The Bitcoin Core developers 3 | // Copyright (c) 2015 The Truthcoin 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 | 7 | #ifndef TRUTHCOIN_WALLET_ISMINE_H 8 | #define TRUTHCOIN_WALLET_ISMINE_H 9 | 10 | #include "key.h" 11 | #include "script/standard.h" 12 | 13 | class CKeyStore; 14 | class CScript; 15 | 16 | /** IsMine() return codes */ 17 | enum isminetype 18 | { 19 | ISMINE_NO = 0, 20 | ISMINE_WATCH_ONLY = 1, 21 | ISMINE_SPENDABLE = 2, 22 | ISMINE_ALL = ISMINE_WATCH_ONLY | ISMINE_SPENDABLE 23 | }; 24 | /** used for bitflags of isminetype */ 25 | typedef uint8_t isminefilter; 26 | 27 | isminetype IsMine(const CKeyStore& keystore, const CScript& scriptPubKey); 28 | isminetype IsMine(const CKeyStore& keystore, const CTxDestination& dest); 29 | 30 | #endif // TRUTHCOIN_WALLET_ISMINE_H 31 | --------------------------------------------------------------------------------