├── contrib ├── debian │ ├── compat │ ├── patches │ │ ├── series │ │ └── README │ ├── source │ │ └── format │ ├── bitcoind.examples │ ├── bitcoind.bash-completion │ ├── bitcoind.manpages │ ├── bitcoind.install │ ├── gbp.conf │ ├── bitcoin-qt.lintian-overrides │ ├── bitcoind.lintian-overrides │ ├── bitcoin-qt.protocol │ ├── bitcoin-qt.install │ ├── bitcoin-qt.desktop │ ├── watch │ ├── README.md │ └── rules ├── macdeploy │ ├── DS_Store │ ├── background.png │ ├── background.psd │ ├── README.md │ ├── fancy.plist │ ├── detached-sig-create.sh │ └── detached-sig-apply.sh ├── gitian-downloader │ ├── sipa-key.pgp │ ├── tcatm-key.pgp │ ├── luke-jr-key.pgp │ ├── bluematt-key.pgp │ ├── devrandom-key.pgp │ ├── aschildbach-key.pgp │ ├── aschildbach-key2.pgp │ ├── gavinandresen-key.pgp │ ├── linux-download-config │ └── win32-download-config ├── init │ ├── README.md │ ├── bitcoind.service │ └── bitcoind.openrcconf ├── test-patches │ ├── README.md │ └── temp-revert-2.patch ├── testgen │ └── README.md ├── spendfrom │ ├── setup.py │ └── README.md ├── bitrpc │ └── README.md ├── qos │ └── README.md ├── seeds │ └── README.md ├── verifysfbinaries │ └── README.md ├── linearize │ ├── example-linearize.cfg │ └── README.md ├── qt_translations.py ├── bitcoin-qt.pro ├── gitian-descriptors │ └── gitian-osx-signer.yml ├── tidy_datadir.sh └── devtools │ └── fix-copyright-headers.py ├── src ├── leveldb │ ├── .gitignore │ ├── AUTHORS │ ├── util │ │ ├── filter_policy.cc │ │ ├── hash.h │ │ ├── options.cc │ │ ├── histogram.h │ │ ├── mutexlock.h │ │ ├── hash.cc │ │ ├── crc32c.h │ │ ├── testutil.cc │ │ └── logging.h │ ├── port │ │ ├── README │ │ ├── port.h │ │ ├── win │ │ │ └── stdint.h │ │ ├── thread_annotations.h │ │ └── port_posix.cc │ ├── NEWS │ ├── TODO │ ├── helpers │ │ └── memenv │ │ │ └── memenv.h │ ├── db │ │ ├── db_iter.h │ │ ├── log_format.h │ │ ├── builder.h │ │ ├── log_writer.h │ │ ├── version_edit_test.cc │ │ └── write_batch_internal.h │ ├── table │ │ ├── merger.h │ │ ├── block.h │ │ └── two_level_iterator.h │ ├── include │ │ └── leveldb │ │ │ └── dumpfile.h │ ├── WINDOWS.md │ ├── doc │ │ └── doc.css │ └── LICENSE ├── obj │ └── .gitignore ├── obj-test │ └── .gitignore ├── test │ ├── data │ │ ├── blanktx.hex │ │ ├── txcreate2.hex │ │ ├── alertTests.raw │ │ ├── txcreatesign.hex │ │ ├── README.md │ │ ├── txcreate1.hex │ │ ├── base58_encode_decode.json │ │ └── sig_canonical.json │ ├── buildenv.py.in │ ├── Makefile │ ├── bitcoin-util-test.py │ ├── sanity_tests.cpp │ ├── main_tests.cpp │ ├── base64_tests.cpp │ ├── base32_tests.cpp │ ├── timedata_tests.cpp │ ├── README.md │ ├── Checkpoints_tests.cpp │ ├── bctest.py │ └── hash_tests.cpp ├── qt │ ├── res │ │ ├── icons │ │ │ ├── add.png │ │ │ ├── eye.png │ │ │ ├── key.png │ │ │ ├── edit.png │ │ │ ├── quit.png │ │ │ ├── send.png │ │ │ ├── bitcoin.icns │ │ │ ├── bitcoin.ico │ │ │ ├── bitcoin.png │ │ │ ├── clock1.png │ │ │ ├── clock2.png │ │ │ ├── clock3.png │ │ │ ├── clock4.png │ │ │ ├── clock5.png │ │ │ ├── editcopy.png │ │ │ ├── export.png │ │ │ ├── eye_plus.png │ │ │ ├── favicon.ico │ │ │ ├── filesave.png │ │ │ ├── history.png │ │ │ ├── overview.png │ │ │ ├── qrcode.png │ │ │ ├── receive.png │ │ │ ├── remove.png │ │ │ ├── synced.png │ │ │ ├── tx_inout.png │ │ │ ├── tx_input.png │ │ │ ├── tx_mined.png │ │ │ ├── unit_btc.png │ │ │ ├── configure.png │ │ │ ├── editpaste.png │ │ │ ├── eye_minus.png │ │ │ ├── fastcoin.icns │ │ │ ├── lock_open.png │ │ │ ├── tx_output.png │ │ │ ├── unit_mbtc.png │ │ │ ├── unit_ubtc.png │ │ │ ├── address-book.png │ │ │ ├── connect0_16.png │ │ │ ├── connect1_16.png │ │ │ ├── connect2_16.png │ │ │ ├── connect3_16.png │ │ │ ├── connect4_16.png │ │ │ ├── debugwindow.png │ │ │ ├── lock_closed.png │ │ │ ├── transaction0.png │ │ │ ├── transaction2.png │ │ │ ├── bitcoin_testnet.ico │ │ │ ├── bitcoin_testnet.png │ │ │ └── transaction_conflicted.png │ │ ├── images │ │ │ ├── about.png │ │ │ ├── splash.png │ │ │ └── splash_testnet.png │ │ └── movies │ │ │ ├── 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 │ ├── test │ │ ├── Makefile │ │ ├── uritests.h │ │ ├── paymentservertests.h │ │ └── test_main.cpp │ ├── coincontroltreewidget.h │ ├── splashscreen.h │ ├── aboutdialog.h │ ├── transactiondesc.h │ ├── macnotificationhandler.h │ ├── bitcoinaddressvalidator.h │ ├── transactiondescdialog.cpp │ ├── transactiondescdialog.h │ ├── qvaluecombobox.cpp │ ├── qvalidatedlineedit.h │ ├── qrcodedialog.h │ ├── coincontroltreewidget.cpp │ ├── monitoreddatamapper.h │ ├── qvaluecombobox.h │ ├── qvalidatedlineedit.cpp │ ├── csvmodelwriter.h │ ├── macdockiconhandler.h │ ├── aboutdialog.cpp │ ├── monitoreddatamapper.cpp │ ├── guiconstants.h │ ├── editaddressdialog.h │ ├── askpassphrasedialog.h │ ├── signverifymessagedialog.h │ ├── overviewpage.h │ └── sendcoinsentry.h ├── json │ ├── json_spirit_value.cpp │ ├── json_spirit.h │ ├── LICENSE.txt │ └── json_spirit_error_position.h ├── init.h ├── clientversion.h ├── checkpoints.h ├── coincontrol.h ├── hash.cpp ├── noui.cpp ├── version.h └── scrypt.h ├── doc ├── release-notes │ ├── release-notes-0.6.1.md │ ├── release-notes-0.3.16.md │ ├── release-notes-0.4.2.md │ ├── release-notes-0.4.5.md │ ├── release-notes-0.3.20.1.md │ ├── release-notes-0.3.14.md │ ├── release-notes-0.3.15.md │ ├── release-notes-0.3.18.md │ ├── release-notes-0.3.17.md │ ├── release-notes-0.8.3.md │ ├── release-notes-0.3.20.2.md │ ├── release-notes-0.3.23.md │ ├── release-notes-0.3.12.md │ ├── release-notes-0.3.19.md │ ├── release-notes-0.8.1.md │ ├── release-notes-0.3.22.md │ ├── release-notes-0.3.20.md │ ├── release-notes-0.6.3.md │ ├── release-notes-0.4.3.md │ ├── release-notes-0.3.21.md │ ├── release-notes-0.5.2.md │ ├── release-notes-0.3.24.md │ ├── release-notes-0.3.13.md │ ├── release-notes-0.8.5.md │ ├── release-notes-0.4.4.md │ └── release-notes-0.5.1.md ├── img │ ├── bootstrap1.png │ ├── bootstrap1a.png │ ├── bootstrap2.png │ ├── bootstrap4.png │ └── bootstrap5.png ├── bitcoin_logo_doxygen.png ├── gitian-building │ ├── create_vm_page1.png │ ├── create_vm_memsize.png │ ├── network_settings.png │ ├── create_vm_hard_drive.png │ ├── select_startup_disk.png │ ├── port_forwarding_rules.png │ ├── debian_install_14_finish.png │ ├── debian_install_1_boot_menu.png │ ├── create_vm_file_location_size.png │ ├── create_vm_file_location_size2.png │ ├── create_vm_hard_drive_file_type.png │ ├── debian_install_12_choose_disk.png │ ├── debian_install_20_install_grub.png │ ├── debian_install_6_domain_name.png │ ├── debian_install_9_user_password.png │ ├── debian_install_15_write_changes.png │ ├── debian_install_18_proxy_settings.png │ ├── debian_install_3_select_location.png │ ├── debian_install_8_set_up_username.png │ ├── debian_install_10_configure_clock.png │ ├── debian_install_11_partition_disks.png │ ├── debian_install_13_partition_scheme.png │ ├── debian_install_16_choose_a_mirror.png │ ├── debian_install_17_choose_a_mirror2.png │ ├── debian_install_2_select_a_language.png │ ├── debian_install_4_configure_keyboard.png │ ├── create_vm_storage_physical_hard_drive.png │ ├── debian_install_19_software_selection.png │ ├── debian_install_21_finish_installation.png │ ├── debian_install_7_set_up_user_fullname.png │ ├── debian_install_5_configure_the_network.png │ └── debian_install_6a_set_up_root_password.png ├── unit-tests.md ├── README_windows.txt ├── files.md └── REST-interface.md ├── qa ├── rpc-tests │ ├── python-bitcoinrpc │ │ ├── bitcoinrpc │ │ │ └── __init__.py │ │ └── setup.py │ ├── send.sh │ └── README.md └── pull-tester │ ├── run-bitcoin-cli │ ├── tests-config.sh.in │ ├── rpc-tests.sh │ └── run-bitcoind-for-test.sh.in ├── share ├── pixmaps │ ├── check.ico │ ├── send16.bmp │ ├── send20.bmp │ ├── bitcoin.ico │ ├── favicon.ico │ ├── favicon2.ico │ ├── bitcoin-bc.ico │ ├── bitcoin128.png │ ├── bitcoin16.png │ ├── bitcoin256.png │ ├── bitcoin32.png │ ├── bitcoin64.png │ ├── nsis-header.bmp │ ├── nsis-wizard.bmp │ ├── send16mask.bmp │ ├── send20mask.bmp │ ├── addressbook16.bmp │ ├── addressbook20.bmp │ ├── addressbook16mask.bmp │ ├── addressbook20mask.bmp │ └── send16masknoshadow.bmp ├── qt │ ├── img │ │ ├── reload.png │ │ ├── reload.xcf │ │ └── reload2.xcf │ ├── make_windows_icon.sh │ ├── make_spinner.py │ └── protobuf.pri ├── seeds │ └── nodes_test.txt ├── ui.rc └── genbuild.sh ├── INSTALL └── COPYING /contrib/debian/compat: -------------------------------------------------------------------------------- 1 | 7 2 | -------------------------------------------------------------------------------- /src/leveldb/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /contrib/debian/patches/series: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/obj/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /contrib/debian/source/format: -------------------------------------------------------------------------------- 1 | 3.0 (quilt) 2 | -------------------------------------------------------------------------------- /src/obj-test/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /src/test/data/blanktx.hex: -------------------------------------------------------------------------------- 1 | 01000000000000000000 2 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.6.1.md: -------------------------------------------------------------------------------- 1 | Never released 2 | -------------------------------------------------------------------------------- /qa/rpc-tests/python-bitcoinrpc/bitcoinrpc/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /contrib/debian/bitcoind.examples: -------------------------------------------------------------------------------- 1 | debian/examples/bitcoin.conf 2 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.3.16.md: -------------------------------------------------------------------------------- 1 | Never released. 2 | 3 | -------------------------------------------------------------------------------- /src/test/buildenv.py.in: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | exeext="@EXEEXT@" 3 | -------------------------------------------------------------------------------- /src/test/data/txcreate2.hex: -------------------------------------------------------------------------------- 1 | 01000000000100000000000000000000000000 2 | -------------------------------------------------------------------------------- /contrib/debian/bitcoind.bash-completion: -------------------------------------------------------------------------------- 1 | contrib/bitcoind.bash-completion bitcoind 2 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.4.2.md: -------------------------------------------------------------------------------- 1 | Never released or release notes were lost. 2 | 3 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.4.5.md: -------------------------------------------------------------------------------- 1 | Never released or release notes were lost. 2 | 3 | -------------------------------------------------------------------------------- /contrib/debian/bitcoind.manpages: -------------------------------------------------------------------------------- 1 | debian/manpages/bitcoind.1 2 | debian/manpages/bitcoin.conf.5 3 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.3.20.1.md: -------------------------------------------------------------------------------- 1 | Never released or release notes were lost. 2 | 3 | -------------------------------------------------------------------------------- /contrib/debian/bitcoind.install: -------------------------------------------------------------------------------- 1 | usr/local/bin/bitcoind usr/bin 2 | usr/local/bin/bitcoin-cli usr/bin 3 | -------------------------------------------------------------------------------- /doc/img/bootstrap1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/img/bootstrap1.png -------------------------------------------------------------------------------- /doc/img/bootstrap1a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/img/bootstrap1a.png -------------------------------------------------------------------------------- /doc/img/bootstrap2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/img/bootstrap2.png -------------------------------------------------------------------------------- /doc/img/bootstrap4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/img/bootstrap4.png -------------------------------------------------------------------------------- /doc/img/bootstrap5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/img/bootstrap5.png -------------------------------------------------------------------------------- /share/pixmaps/check.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/check.ico -------------------------------------------------------------------------------- /share/pixmaps/send16.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/send16.bmp -------------------------------------------------------------------------------- /share/pixmaps/send20.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/send20.bmp -------------------------------------------------------------------------------- /share/qt/img/reload.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/qt/img/reload.png -------------------------------------------------------------------------------- /share/qt/img/reload.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/qt/img/reload.xcf -------------------------------------------------------------------------------- /share/qt/img/reload2.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/qt/img/reload2.xcf -------------------------------------------------------------------------------- /src/qt/res/icons/add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/add.png -------------------------------------------------------------------------------- /src/qt/res/icons/eye.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/eye.png -------------------------------------------------------------------------------- /src/qt/res/icons/key.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/key.png -------------------------------------------------------------------------------- /contrib/macdeploy/DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/contrib/macdeploy/DS_Store -------------------------------------------------------------------------------- /share/pixmaps/bitcoin.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/bitcoin.ico -------------------------------------------------------------------------------- /share/pixmaps/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/favicon.ico -------------------------------------------------------------------------------- /share/pixmaps/favicon2.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/favicon2.ico -------------------------------------------------------------------------------- /src/qt/res/icons/edit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/edit.png -------------------------------------------------------------------------------- /src/qt/res/icons/quit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/quit.png -------------------------------------------------------------------------------- /src/qt/res/icons/send.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/send.png -------------------------------------------------------------------------------- /doc/bitcoin_logo_doxygen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/bitcoin_logo_doxygen.png -------------------------------------------------------------------------------- /share/pixmaps/bitcoin-bc.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/bitcoin-bc.ico -------------------------------------------------------------------------------- /share/pixmaps/bitcoin128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/bitcoin128.png -------------------------------------------------------------------------------- /share/pixmaps/bitcoin16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/bitcoin16.png -------------------------------------------------------------------------------- /share/pixmaps/bitcoin256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/bitcoin256.png -------------------------------------------------------------------------------- /share/pixmaps/bitcoin32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/bitcoin32.png -------------------------------------------------------------------------------- /share/pixmaps/bitcoin64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/bitcoin64.png -------------------------------------------------------------------------------- /share/pixmaps/nsis-header.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/nsis-header.bmp -------------------------------------------------------------------------------- /share/pixmaps/nsis-wizard.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/nsis-wizard.bmp -------------------------------------------------------------------------------- /share/pixmaps/send16mask.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/send16mask.bmp -------------------------------------------------------------------------------- /share/pixmaps/send20mask.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/send20mask.bmp -------------------------------------------------------------------------------- /src/qt/res/icons/bitcoin.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/bitcoin.icns -------------------------------------------------------------------------------- /src/qt/res/icons/bitcoin.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/bitcoin.ico -------------------------------------------------------------------------------- /src/qt/res/icons/bitcoin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/bitcoin.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/clock1.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/clock2.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/clock3.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/clock4.png -------------------------------------------------------------------------------- /src/qt/res/icons/clock5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/clock5.png -------------------------------------------------------------------------------- /src/qt/res/icons/editcopy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/editcopy.png -------------------------------------------------------------------------------- /src/qt/res/icons/export.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/export.png -------------------------------------------------------------------------------- /src/qt/res/icons/eye_plus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/eye_plus.png -------------------------------------------------------------------------------- /src/qt/res/icons/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/favicon.ico -------------------------------------------------------------------------------- /src/qt/res/icons/filesave.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/filesave.png -------------------------------------------------------------------------------- /src/qt/res/icons/history.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/history.png -------------------------------------------------------------------------------- /src/qt/res/icons/overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/overview.png -------------------------------------------------------------------------------- /src/qt/res/icons/qrcode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/qrcode.png -------------------------------------------------------------------------------- /src/qt/res/icons/receive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/receive.png -------------------------------------------------------------------------------- /src/qt/res/icons/remove.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/remove.png -------------------------------------------------------------------------------- /src/qt/res/icons/synced.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/synced.png -------------------------------------------------------------------------------- /src/qt/res/icons/tx_inout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/tx_inout.png -------------------------------------------------------------------------------- /src/qt/res/icons/tx_input.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/tx_input.png -------------------------------------------------------------------------------- /src/qt/res/icons/tx_mined.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/tx_mined.png -------------------------------------------------------------------------------- /src/qt/res/icons/unit_btc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/unit_btc.png -------------------------------------------------------------------------------- /src/qt/res/images/about.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/images/about.png -------------------------------------------------------------------------------- /src/qt/res/images/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/images/splash.png -------------------------------------------------------------------------------- /src/test/data/alertTests.raw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/test/data/alertTests.raw -------------------------------------------------------------------------------- /share/pixmaps/addressbook16.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/addressbook16.bmp -------------------------------------------------------------------------------- /share/pixmaps/addressbook20.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/addressbook20.bmp -------------------------------------------------------------------------------- /share/seeds/nodes_test.txt: -------------------------------------------------------------------------------- 1 | # List of fixed seed nodes for testnet 2 | 3 | 162.243.72.166:19333 4 | 107.191.58.84:19333 5 | -------------------------------------------------------------------------------- /src/qt/res/icons/configure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/configure.png -------------------------------------------------------------------------------- /src/qt/res/icons/editpaste.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/editpaste.png -------------------------------------------------------------------------------- /src/qt/res/icons/eye_minus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/eye_minus.png -------------------------------------------------------------------------------- /src/qt/res/icons/fastcoin.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/fastcoin.icns -------------------------------------------------------------------------------- /src/qt/res/icons/lock_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/lock_open.png -------------------------------------------------------------------------------- /src/qt/res/icons/tx_output.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/tx_output.png -------------------------------------------------------------------------------- /src/qt/res/icons/unit_mbtc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/unit_mbtc.png -------------------------------------------------------------------------------- /src/qt/res/icons/unit_ubtc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/unit_ubtc.png -------------------------------------------------------------------------------- /contrib/macdeploy/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/contrib/macdeploy/background.png -------------------------------------------------------------------------------- /contrib/macdeploy/background.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/contrib/macdeploy/background.psd -------------------------------------------------------------------------------- /src/qt/res/icons/address-book.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/address-book.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect0_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/connect0_16.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect1_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/connect1_16.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect2_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/connect2_16.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect3_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/connect3_16.png -------------------------------------------------------------------------------- /src/qt/res/icons/connect4_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/connect4_16.png -------------------------------------------------------------------------------- /src/qt/res/icons/debugwindow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/debugwindow.png -------------------------------------------------------------------------------- /src/qt/res/icons/lock_closed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/lock_closed.png -------------------------------------------------------------------------------- /src/qt/res/icons/transaction0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/transaction0.png -------------------------------------------------------------------------------- /src/qt/res/icons/transaction2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/transaction2.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-000.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-000.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-001.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-001.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-002.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-002.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-003.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-003.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-004.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-004.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-005.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-005.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-006.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-006.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-007.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-007.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-008.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-008.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-009.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-009.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-010.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-010.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-011.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-011.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-012.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-012.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-013.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-013.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-014.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-014.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-015.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-015.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-016.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-016.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-017.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-017.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-018.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-018.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-019.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-019.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-020.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-020.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-021.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-021.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-022.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-022.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-023.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-023.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-024.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-025.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-025.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-026.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-026.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-027.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-027.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-028.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-028.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-029.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-029.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-030.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-030.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-031.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-031.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-032.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-032.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-033.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-033.png -------------------------------------------------------------------------------- /src/qt/res/movies/spinner-034.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/movies/spinner-034.png -------------------------------------------------------------------------------- /share/pixmaps/addressbook16mask.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/addressbook16mask.bmp -------------------------------------------------------------------------------- /share/pixmaps/addressbook20mask.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/addressbook20mask.bmp -------------------------------------------------------------------------------- /share/pixmaps/send16masknoshadow.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/share/pixmaps/send16masknoshadow.bmp -------------------------------------------------------------------------------- /src/qt/res/icons/bitcoin_testnet.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/bitcoin_testnet.ico -------------------------------------------------------------------------------- /src/qt/res/icons/bitcoin_testnet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/bitcoin_testnet.png -------------------------------------------------------------------------------- /src/qt/res/images/splash_testnet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/images/splash_testnet.png -------------------------------------------------------------------------------- /contrib/gitian-downloader/sipa-key.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/contrib/gitian-downloader/sipa-key.pgp -------------------------------------------------------------------------------- /contrib/gitian-downloader/tcatm-key.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/contrib/gitian-downloader/tcatm-key.pgp -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_page1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/create_vm_page1.png -------------------------------------------------------------------------------- /contrib/gitian-downloader/luke-jr-key.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/contrib/gitian-downloader/luke-jr-key.pgp -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_memsize.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/create_vm_memsize.png -------------------------------------------------------------------------------- /doc/gitian-building/network_settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/network_settings.png -------------------------------------------------------------------------------- /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/gitian-downloader/bluematt-key.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/contrib/gitian-downloader/bluematt-key.pgp -------------------------------------------------------------------------------- /contrib/gitian-downloader/devrandom-key.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/contrib/gitian-downloader/devrandom-key.pgp -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_hard_drive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/create_vm_hard_drive.png -------------------------------------------------------------------------------- /doc/gitian-building/select_startup_disk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/select_startup_disk.png -------------------------------------------------------------------------------- /src/qt/res/icons/transaction_conflicted.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/src/qt/res/icons/transaction_conflicted.png -------------------------------------------------------------------------------- /contrib/gitian-downloader/aschildbach-key.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/contrib/gitian-downloader/aschildbach-key.pgp -------------------------------------------------------------------------------- /contrib/gitian-downloader/aschildbach-key2.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/contrib/gitian-downloader/aschildbach-key2.pgp -------------------------------------------------------------------------------- /doc/gitian-building/port_forwarding_rules.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/port_forwarding_rules.png -------------------------------------------------------------------------------- /contrib/debian/bitcoin-qt.lintian-overrides: -------------------------------------------------------------------------------- 1 | # Linked code is Expat - only Debian packaging is GPL-2+ 2 | bitcoin-qt: possible-gpl-code-linked-with-openssl 3 | -------------------------------------------------------------------------------- /contrib/debian/bitcoind.lintian-overrides: -------------------------------------------------------------------------------- 1 | # Linked code is Expat - only Debian packaging is GPL-2+ 2 | bitcoind: possible-gpl-code-linked-with-openssl 3 | -------------------------------------------------------------------------------- /contrib/gitian-downloader/gavinandresen-key.pgp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/contrib/gitian-downloader/gavinandresen-key.pgp -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_14_finish.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_14_finish.png -------------------------------------------------------------------------------- /src/test/Makefile: -------------------------------------------------------------------------------- 1 | all: 2 | $(MAKE) -C .. bitcoin_test 3 | clean: 4 | $(MAKE) -C .. bitcoin_test_clean 5 | check: 6 | $(MAKE) -C .. bitcoin_test_check 7 | -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_1_boot_menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_1_boot_menu.png -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_file_location_size.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/create_vm_file_location_size.png -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_file_location_size2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/create_vm_file_location_size2.png -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_hard_drive_file_type.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/create_vm_hard_drive_file_type.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_12_choose_disk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_12_choose_disk.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_20_install_grub.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_20_install_grub.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_6_domain_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_6_domain_name.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_9_user_password.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_9_user_password.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_15_write_changes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_15_write_changes.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_18_proxy_settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_18_proxy_settings.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_3_select_location.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_3_select_location.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_8_set_up_username.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_8_set_up_username.png -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_10_configure_clock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_10_configure_clock.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_11_partition_disks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_11_partition_disks.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_13_partition_scheme.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_13_partition_scheme.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_16_choose_a_mirror.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_16_choose_a_mirror.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_17_choose_a_mirror2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_17_choose_a_mirror2.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_2_select_a_language.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_2_select_a_language.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_4_configure_keyboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_4_configure_keyboard.png -------------------------------------------------------------------------------- /doc/gitian-building/create_vm_storage_physical_hard_drive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/create_vm_storage_physical_hard_drive.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_19_software_selection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_19_software_selection.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_21_finish_installation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_21_finish_installation.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_7_set_up_user_fullname.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_7_set_up_user_fullname.png -------------------------------------------------------------------------------- /src/qt/test/Makefile: -------------------------------------------------------------------------------- 1 | all: 2 | $(MAKE) -C ../../ test_bitcoin_qt 3 | clean: 4 | $(MAKE) -C ../../ test_bitcoin_qt_clean 5 | check: 6 | $(MAKE) -C ../../ test_bitcoin_qt_check 7 | -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_5_configure_the_network.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_5_configure_the_network.png -------------------------------------------------------------------------------- /doc/gitian-building/debian_install_6a_set_up_root_password.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcoinproject/fastcoin/HEAD/doc/gitian-building/debian_install_6a_set_up_root_password.png -------------------------------------------------------------------------------- /src/test/data/txcreatesign.hex: -------------------------------------------------------------------------------- 1 | 01000000018594c5bdcaec8f06b78b596f31cd292a294fd031e24eec716f43dac91ea7494d0000000000ffffffff01a0860100000000001976a9145834479edbbe0539b31ffd3a8f8ebadc2165ed0188ac00000000 2 | -------------------------------------------------------------------------------- /contrib/debian/bitcoin-qt.protocol: -------------------------------------------------------------------------------- 1 | [Protocol] 2 | exec=bitcoin-qt '%u' 3 | protocol=bitcoin 4 | input=none 5 | output=none 6 | helper=true 7 | listing= 8 | reading=false 9 | writing=false 10 | makedir=false 11 | deleting=false 12 | -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /contrib/init/README.md: -------------------------------------------------------------------------------- 1 | Sample configuration files for: 2 | 3 | SystemD: bitcoind.service 4 | Upstart: bitcoind.conf 5 | OpenRC: bitcoind.openrc 6 | bitcoind.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/debian/bitcoin-qt.install: -------------------------------------------------------------------------------- 1 | usr/local/bin/bitcoin-qt usr/bin 2 | share/pixmaps/bitcoin32.xpm usr/share/pixmaps 3 | share/pixmaps/bitcoin16.xpm usr/share/pixmaps 4 | share/pixmaps/bitcoin128.png usr/share/pixmaps 5 | debian/bitcoin-qt.desktop usr/share/applications 6 | debian/bitcoin-qt.protocol usr/share/kde4/services/ 7 | -------------------------------------------------------------------------------- /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/) 8 | -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /contrib/testgen/README.md: -------------------------------------------------------------------------------- 1 | ### TestGen ### 2 | 3 | Utilities to generate test vectors for the data-driven Bitcoin 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 9 | 10 | -------------------------------------------------------------------------------- /contrib/spendfrom/setup.py: -------------------------------------------------------------------------------- 1 | from distutils.core import setup 2 | setup(name='btcspendfrom', 3 | version='1.0', 4 | description='Command-line utility for bitcoin "coin control"', 5 | author='Gavin Andresen', 6 | author_email='gavin@bitcoinfoundation.org', 7 | requires=['jsonrpc'], 8 | scripts=['spendfrom.py'], 9 | ) 10 | -------------------------------------------------------------------------------- /INSTALL: -------------------------------------------------------------------------------- 1 | Building Fastcoin 2 | 3 | See doc/readme-qt.rst for instructions on building Fastcoin-Qt, 4 | the intended-for-end-users, nice-graphical-interface, reference 5 | implementation of Fastcoin. 6 | 7 | See doc/build-*.txt for instructions on building fastcoind, 8 | the intended-for-services, no-graphical-interface, reference 9 | implementation of Fastcoin. 10 | -------------------------------------------------------------------------------- /src/test/data/README.md: -------------------------------------------------------------------------------- 1 | Description 2 | ------------ 3 | 4 | This directory contains data-driven tests for various aspects of Bitcoin. 5 | 6 | License 7 | -------- 8 | 9 | The data files in this directory are distributed under the MIT software 10 | license, see the accompanying file COPYING or 11 | http://www.opensource.org/licenses/mit-license.php. 12 | 13 | -------------------------------------------------------------------------------- /contrib/bitrpc/README.md: -------------------------------------------------------------------------------- 1 | ### BitRPC 2 | Allows for sending of all standard Bitcoin 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 9 | 10 | -------------------------------------------------------------------------------- /share/qt/make_windows_icon.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # create multiresolution windows icon 3 | ICON_SRC=../../src/qt/res/icons/bitcoin.png 4 | ICON_DST=../../src/qt/res/icons/bitcoin.ico 5 | convert ${ICON_SRC} -resize 16x16 bitcoin-16.png 6 | convert ${ICON_SRC} -resize 32x32 bitcoin-32.png 7 | convert ${ICON_SRC} -resize 48x48 bitcoin-48.png 8 | convert bitcoin-16.png bitcoin-32.png bitcoin-48.png ${ICON_DST} 9 | -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /contrib/debian/bitcoin-qt.desktop: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Encoding=UTF-8 3 | Name=Bitcoin 4 | Comment=Bitcoin P2P Cryptocurrency 5 | Comment[fr]=Bitcoin, monnaie virtuelle cryptographique pair à pair 6 | Comment[tr]=Bitcoin, eşten eşe kriptografik sanal para birimi 7 | Exec=bitcoin-qt %u 8 | Terminal=false 9 | Type=Application 10 | Icon=bitcoin128 11 | MimeType=x-scheme-handler/bitcoin; 12 | Categories=Office;Finance; 13 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.3.14.md: -------------------------------------------------------------------------------- 1 | Version 0.3.14 is now available 2 | http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.14/ 3 | 4 | Changes: 5 | * Key pool feature for safer wallet backup 6 | Gavin Andresen: 7 | * TEST network mode with switch -testnet 8 | * Option to use SSL for JSON-RPC connections on unix/osx 9 | * validateaddress RPC command 10 | eurekafag: 11 | * Russian translation 12 | 13 | -------------------------------------------------------------------------------- /src/test/data/txcreate1.hex: -------------------------------------------------------------------------------- 1 | 01000000031f5c38dfcf6f1a5f5a87c416076d392c87e6d41970d5ad5e477a02d66bde97580000000000ffffffff7cca453133921c50d5025878f7f738d1df891fd359763331935784cf6b9c82bf1200000000fffffffffccd319e04a996c96cfc0bf4c07539aa90bd0b1a700ef72fae535d6504f9a6220100000000ffffffff0280a81201000000001976a9141fc11f39be1729bf973a7ab6a615ca4729d6457488ac0084d717000000001976a914f2d4db28cad6502226ee484ae24505c2885cb12d88ac00000000 2 | -------------------------------------------------------------------------------- /src/test/bitcoin-util-test.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | # Copyright 2014 BitPay, Inc. 3 | # Distributed under the MIT/X11 software license, see the accompanying 4 | # file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | import os 7 | import bctest 8 | import buildenv 9 | 10 | if __name__ == '__main__': 11 | bctest.bctester(os.environ["srcdir"] + "/test/data", 12 | "bitcoin-util-test.json",buildenv) 13 | 14 | -------------------------------------------------------------------------------- /src/qt/coincontroltreewidget.h: -------------------------------------------------------------------------------- 1 | #ifndef COINCONTROLTREEWIDGET_H 2 | #define COINCONTROLTREEWIDGET_H 3 | 4 | #include 5 | #include 6 | 7 | class CoinControlTreeWidget : public QTreeWidget { 8 | Q_OBJECT 9 | 10 | public: 11 | explicit CoinControlTreeWidget(QWidget *parent = 0); 12 | 13 | protected: 14 | virtual void keyPressEvent(QKeyEvent *event); 15 | }; 16 | 17 | #endif // COINCONTROLTREEWIDGET_H -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.3.15.md: -------------------------------------------------------------------------------- 1 | * paytxfee switch is now per KB, so it adds the correct fee for large transactions 2 | * sending avoids using coins with less than 6 confirmations if it can 3 | * BitcoinMiner processes transactions in priority order based on age of dependencies 4 | * make sure generation doesn't start before block 74000 downloaded 5 | * bugfixes by Dean Gores 6 | * testnet, keypoololdest and paytxfee added to getinfo 7 | 8 | -------------------------------------------------------------------------------- /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/bitcoin/bitcoin-(\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/bitcoin/bitcoin v(.*).tar.gz 8 | -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /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 Bitcoin network. It limits outbound TCP traffic with a source or destination port of 9333, 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 bitcoind instance running, and another local bitcoind/bitcoin-qt instance which connects to this node and receives blocks from it. 6 | -------------------------------------------------------------------------------- /contrib/seeds/README.md: -------------------------------------------------------------------------------- 1 | ### Seeds ### 2 | 3 | Utility to generate the seeds.txt list that is compiled into the client 4 | (see [src/chainparamsseeds.h](/src/chainparamsseeds.h) and [share/seeds](/share/seeds)). 5 | 6 | The 512 seeds compiled into the 0.10 release were created from pooler's seed data, the seed list can be found here: 7 | 8 | https://www.fastcoinpool.org/seeds.txt 9 | 10 | The seed selection process is sorted by 30d availability, block height and version. 11 | -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /contrib/verifysfbinaries/README.md: -------------------------------------------------------------------------------- 1 | ### Verify SF Binaries ### 2 | This script attempts to download the signature file `SHA256SUMS.asc` from https://bitcoin.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. 7 | -------------------------------------------------------------------------------- /src/qt/test/uritests.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2014 The Bitcoin developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_QT_TEST_URITESTS_H 6 | #define BITCOIN_QT_TEST_URITESTS_H 7 | 8 | #include 9 | #include 10 | 11 | class URITests : public QObject 12 | { 13 | Q_OBJECT 14 | 15 | private slots: 16 | void uriTests(); 17 | }; 18 | 19 | #endif // BITCOIN_QT_TEST_URITESTS_H 20 | -------------------------------------------------------------------------------- /src/test/data/base58_encode_decode.json: -------------------------------------------------------------------------------- 1 | [ 2 | ["", ""], 3 | ["61", "2g"], 4 | ["626262", "a3gV"], 5 | ["636363", "aPEr"], 6 | ["73696d706c792061206c6f6e6720737472696e67", "2cFupjhnEsSn59qHXstmK2ffpLv2"], 7 | ["00eb15231dfceb60925886b67d065299925915aeb172c06647", "1NS17iag9jJgTHD1VXjvLCEnZuQ3rJDE9L"], 8 | ["516b6fcd0f", "ABnLTmg"], 9 | ["bf4f89001e670274dd", "3SEo3LWLoPntC"], 10 | ["572e4794", "3EFU7m"], 11 | ["ecac89cad93923c02321", "EJDM8drfXA6uyA"], 12 | ["10c8511e", "Rt5zm"], 13 | ["00000000000000000000", "1111111111"] 14 | ] 15 | -------------------------------------------------------------------------------- /qa/pull-tester/run-bitcoin-cli: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # This is a thin wrapper around bitcoin-cli that strips the Windows-style EOLs 4 | # from the output if present. It is necessary when using bitcoin-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_BITCOIND 9 | 10 | # Grab the value of $REAL_BITCOINCLI which may be bitcoin-cli.exe. 11 | . "${CURDIR}/tests-config.sh" 12 | 13 | "${REAL_BITCOINCLI}" "$@" | sed 's/\r//' 14 | 15 | -------------------------------------------------------------------------------- /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 `Bitcoin-Qt.dmg`. 15 | 16 | -------------------------------------------------------------------------------- /src/test/data/sig_canonical.json: -------------------------------------------------------------------------------- 1 | [ 2 | "300602010002010001", 3 | "3008020200ff020200ff01", 4 | "304402203932c892e2e550f3af8ee4ce9c215a87f9bb831dcac87b2838e2c2eaa891df0c022030b61dd36543125d56b9f9f3a1f9353189e5af33cdda8d77a5209aec03978fa001", 5 | "30450220076045be6f9eca28ff1ec606b833d0b87e70b2a630f5e3a496b110967a40f90a0221008fffd599910eefe00bc803c688c2eca1d2ba7f6b180620eaa03488e6585db6ba01", 6 | "3046022100876045be6f9eca28ff1ec606b833d0b87e70b2a630f5e3a496b110967a40f90a0221008fffd599910eefe00bc803c688c2eca1d2ba7f6b180620eaa03488e6585db6ba01" 7 | ] 8 | -------------------------------------------------------------------------------- /src/init.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2010 Satoshi Nakamoto 2 | // Copyright (c) 2009-2012 The Bitcoin developers 3 | // Distributed under the MIT/X11 software license, see the accompanying 4 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | #ifndef BITCOIN_INIT_H 6 | #define BITCOIN_INIT_H 7 | 8 | #include "wallet.h" 9 | 10 | extern CWallet* pwalletMain; 11 | 12 | void StartShutdown(); 13 | bool ShutdownRequested(); 14 | void Shutdown(); 15 | bool AppInit2(boost::thread_group& threadGroup); 16 | std::string HelpMessage(); 17 | 18 | #endif 19 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.3.18.md: -------------------------------------------------------------------------------- 1 | Changes: 2 | * Fixed a wallet.dat compatibility problem if you downgraded from 0.3.17 and then upgraded again 3 | * IsStandard() check to only include known transaction types in blocks 4 | * Jgarzik's optimisation to speed up the initial block download a little 5 | 6 | The main addition in this release is the Accounts-Based JSON-RPC commands that Gavin's been working on (more details at http://www.bitcoin.org/smf/index.php?topic=1886.0). 7 | * getaccountaddress 8 | * sendfrom 9 | * move 10 | * getbalance 11 | * listtransactions 12 | 13 | -------------------------------------------------------------------------------- /contrib/init/bitcoind.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Bitcoin's distributed currency daemon 3 | After=network.target 4 | 5 | [Service] 6 | User=bitcoin 7 | Group=bitcoin 8 | 9 | Type=forking 10 | PIDFile=/var/lib/bitcoind/bitcoind.pid 11 | ExecStart=/usr/bin/bitcoind -daemon -pid=/var/lib/bitcoind/bitcoind.pid \ 12 | -conf=/etc/bitcoin/bitcoin.conf -datadir=/var/lib/bitcoind -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 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.3.17.md: -------------------------------------------------------------------------------- 1 | Version 0.3.17 is now available. 2 | 3 | Changes: 4 | * new getwork, thanks m0mchil 5 | * added transaction fee setting in UI options menu 6 | * free transaction limits 7 | * sendtoaddress returns transaction id instead of "sent" 8 | * getaccountaddress 9 | 10 | The UI transaction fee setting was easy since it was still there from 0.1.5 and all I had to do was re-enable it. 11 | 12 | The accounts-based commands: move, sendfrom and getbalance will be in the next release. We still have some more changes to make first. 13 | 14 | -------------------------------------------------------------------------------- /contrib/linearize/example-linearize.cfg: -------------------------------------------------------------------------------- 1 | 2 | # bitcoind RPC settings (linearize-hashes) 3 | rpcuser=someuser 4 | rpcpassword=somepassword 5 | host=127.0.0.1 6 | port=9332 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/.bitcoin/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 | -------------------------------------------------------------------------------- /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/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 | -------------------------------------------------------------------------------- /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_BITCOIN_UTILS_TRUE@ENABLE_UTILS=1 12 | @BUILD_BITCOIND_TRUE@ENABLE_BITCOIND=1 13 | 14 | REAL_BITCOIND="$BUILDDIR/src/bitcoind${EXEEXT}" 15 | REAL_BITCOINCLI="$BUILDDIR/src/bitcoin-cli${EXEEXT}" 16 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.8.3.md: -------------------------------------------------------------------------------- 1 | Bitcoin-Qt version 0.8.3 is now available from: 2 | http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.8.3/ 3 | 4 | This is a maintenance release to fix a denial-of-service attack that 5 | can cause nodes to crash. 6 | 7 | Please report bugs using the issue tracker at github: 8 | https://github.com/bitcoin/bitcoin/issues 9 | 10 | 0.8.3 Release notes 11 | 12 | Truncate over-size messages to prevent a memory exhaustion attack. 13 | 14 | Fix a regression that causes excessive re-writing of the 'peers.dat' file. 15 | 16 | 17 | Thanks to Peter Todd for responsibly disclosing the vulnerability 18 | ( CVE-2013-4627 ) and creating a fix. 19 | 20 | -------------------------------------------------------------------------------- /src/test/sanity_tests.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012-2013 The Bitcoin Core developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "compat/sanity.h" 6 | #include "key.h" 7 | 8 | #include 9 | BOOST_AUTO_TEST_SUITE(sanity_tests) 10 | 11 | BOOST_AUTO_TEST_CASE(basic_sanity) 12 | { 13 | BOOST_CHECK_MESSAGE(glibc_sanity_test() == true, "libc sanity test"); 14 | BOOST_CHECK_MESSAGE(glibcxx_sanity_test() == true, "stdlib sanity test"); 15 | BOOST_CHECK_MESSAGE(ECC_InitSanityCheck() == true, "openssl ECC test"); 16 | } 17 | 18 | BOOST_AUTO_TEST_SUITE_END() 19 | -------------------------------------------------------------------------------- /contrib/debian/README.md: -------------------------------------------------------------------------------- 1 | 2 | Debian 3 | ==================== 4 | This directory contains files used to package bitcoind/bitcoin-qt 5 | for Debian-based Linux systems. If you compile bitcoind/bitcoin-qt yourself, there are some useful files here. 6 | 7 | ## bitcoin: URI support ## 8 | 9 | 10 | bitcoin-qt.desktop (Gnome / Open Desktop) 11 | To install: 12 | 13 | sudo desktop-file-install bitcoin-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 bitcoin-qt binary to `/usr/bin` 18 | and the `../../share/pixmaps/bitcoin128.png` to `/usr/share/pixmaps` 19 | 20 | bitcoin-qt.protocol (KDE) 21 | 22 | -------------------------------------------------------------------------------- /qa/rpc-tests/python-bitcoinrpc/setup.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python2 2 | 3 | from distutils.core import setup 4 | 5 | setup(name='python-bitcoinrpc', 6 | version='0.1', 7 | description='Enhanced version of python-jsonrpc for use with Bitcoin', 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-bitcoinrpc', 14 | packages=['bitcoinrpc'], 15 | classifiers=['License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)', 'Operating System :: OS Independent']) 16 | 17 | -------------------------------------------------------------------------------- /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 bitcoin 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 $BITCOINDIR/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'bitcoin_(.*).qm', f).group(1) for f in glob.glob(os.path.join(d2, 'bitcoin_*.qm')) ]) 20 | 21 | print ",".join(sorted(l1.intersection(l2))) 22 | 23 | -------------------------------------------------------------------------------- /share/ui.rc: -------------------------------------------------------------------------------- 1 | bitcoin ICON "pixmaps/bitcoin.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 | 17 | -------------------------------------------------------------------------------- /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 bitcoind tests manually, launch src/test/test_bitcoin . 10 | 11 | To add more bitcoind 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 bitcoin-qt tests manually, launch src/qt/test/bitcoin-qt_test 16 | 17 | To add more bitcoin-qt tests, add them to the `src/qt/test/` directory and 18 | the `src/qt/test/test_main.cpp` file. 19 | 20 | -------------------------------------------------------------------------------- /src/qt/splashscreen.h: -------------------------------------------------------------------------------- 1 | #ifndef SPLASHSCREEN_H 2 | #define SPLASHSCREEN_H 3 | 4 | #include 5 | #include 6 | 7 | /** class for the splashscreen with information of the running client 8 | */ 9 | class SplashScreen : public QSplashScreen 10 | { 11 | Q_OBJECT 12 | 13 | public: 14 | explicit SplashScreen(const QPixmap &pixmap = QPixmap(), Qt::WindowFlags f = 0); 15 | 16 | virtual void drawContents(QPainter *painter); 17 | void showStatusMessage(const QString &message, const QColor &color = Qt::black); 18 | void setMessageRect(QRect rect, int alignment = Qt::AlignLeft); 19 | QRect rect; 20 | 21 | private: 22 | QString message; 23 | int alignement; 24 | QColor color; 25 | 26 | }; 27 | 28 | #endif // SPLASHSCREEN_H 29 | -------------------------------------------------------------------------------- /src/qt/aboutdialog.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef ABOUTDIALOG_H 6 | #define ABOUTDIALOG_H 7 | 8 | #include 9 | 10 | namespace Ui { 11 | class AboutDialog; 12 | } 13 | class ClientModel; 14 | 15 | /** "About" dialog box */ 16 | class AboutDialog : public QDialog 17 | { 18 | Q_OBJECT 19 | 20 | public: 21 | explicit AboutDialog(QWidget *parent = 0); 22 | ~AboutDialog(); 23 | 24 | void setModel(ClientModel *model); 25 | 26 | private: 27 | Ui::AboutDialog *ui; 28 | 29 | private slots: 30 | void on_buttonBox_accepted(); 31 | }; 32 | 33 | #endif // ABOUTDIALOG_H 34 | -------------------------------------------------------------------------------- /src/qt/transactiondesc.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef TRANSACTIONDESC_H 6 | #define TRANSACTIONDESC_H 7 | 8 | #include 9 | #include 10 | 11 | class CWallet; 12 | class CWalletTx; 13 | 14 | /** Provide a human-readable extended HTML description of a transaction. 15 | */ 16 | class TransactionDesc: public QObject 17 | { 18 | Q_OBJECT 19 | 20 | public: 21 | static QString toHTML(CWallet *wallet, CWalletTx &wtx); 22 | 23 | private: 24 | TransactionDesc() {} 25 | 26 | static QString FormatTxStatus(const CWalletTx& wtx); 27 | }; 28 | 29 | #endif // TRANSACTIONDESC_H 30 | -------------------------------------------------------------------------------- /src/qt/macnotificationhandler.h: -------------------------------------------------------------------------------- 1 | #ifndef MACNOTIFICATIONHANDLER_H 2 | #define MACNOTIFICATIONHANDLER_H 3 | #include 4 | 5 | /** Macintosh-specific notification handler (supports UserNotificationCenter and Growl). 6 | */ 7 | class MacNotificationHandler : public QObject 8 | { 9 | Q_OBJECT 10 | 11 | public: 12 | /** shows a 10.8+ UserNotification in the UserNotificationCenter 13 | */ 14 | void showNotification(const QString &title, const QString &text); 15 | 16 | /** executes AppleScript */ 17 | void sendAppleScript(const QString &script); 18 | 19 | /** check if OS can handle UserNotifications */ 20 | bool hasUserNotificationCenterSupport(void); 21 | static MacNotificationHandler *instance(); 22 | }; 23 | 24 | 25 | #endif // MACNOTIFICATIONHANDLER_H 26 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.3.20.2.md: -------------------------------------------------------------------------------- 1 | The maxsendbuffer bug (0.3.20.1 clients not being able to download the block chain from other 0.3.20.1 clients) was only going to get 2 | worse as people upgraded, so I cherry-picked the bug fix and created a minor release yesterday. 3 | 4 | The Amazon Machine Images I used to do the builds are available: 5 | 6 | ami-38a05251 Bitcoin-v0.3.20.2 Mingw (Windows; Administrator password 'bitcoin development') 7 | ami-30a05259 Bitcoin_0.3.20.2 Linux32 8 | ami-8abc4ee3 Bitcoin_0.3.20.2 Linux64 9 | 10 | (mac build will be done soon) 11 | 12 | If you have already downloaded version 0.3.20.1, please either add this to your bitcoin.conf file: 13 | 14 | maxsendbuffer=10000 15 | maxreceivebuffer=10000 16 | 17 | ... or download the new version. 18 | 19 | -------------------------------------------------------------------------------- /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/qt/bitcoinaddressvalidator.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOINADDRESSVALIDATOR_H 6 | #define BITCOINADDRESSVALIDATOR_H 7 | 8 | #include 9 | 10 | /** Base58 entry widget validator. 11 | Corrects near-miss characters and refuses characters that are not part of base58. 12 | */ 13 | class BitcoinAddressValidator : public QValidator 14 | { 15 | Q_OBJECT 16 | 17 | public: 18 | explicit BitcoinAddressValidator(QObject *parent = 0); 19 | 20 | State validate(QString &input, int &pos) const; 21 | 22 | static const int MaxAddressLength = 35; 23 | }; 24 | 25 | #endif // BITCOINADDRESSVALIDATOR_H 26 | -------------------------------------------------------------------------------- /src/qt/transactiondescdialog.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "transactiondescdialog.h" 6 | #include "ui_transactiondescdialog.h" 7 | 8 | #include "transactiontablemodel.h" 9 | 10 | #include 11 | 12 | TransactionDescDialog::TransactionDescDialog(const QModelIndex &idx, QWidget *parent) : 13 | QDialog(parent), 14 | ui(new Ui::TransactionDescDialog) 15 | { 16 | ui->setupUi(this); 17 | QString desc = idx.data(TransactionTableModel::LongDescriptionRole).toString(); 18 | ui->detailText->setHtml(desc); 19 | } 20 | 21 | TransactionDescDialog::~TransactionDescDialog() 22 | { 23 | delete ui; 24 | } 25 | -------------------------------------------------------------------------------- /src/test/main_tests.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 The Bitcoin Core developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "primitives/transaction.h" 6 | #include "main.h" 7 | 8 | #include 9 | 10 | BOOST_AUTO_TEST_SUITE(main_tests) 11 | 12 | BOOST_AUTO_TEST_CASE(subsidy_limit_test) 13 | { 14 | CAmount nSum = 0; 15 | for (int nHeight = 0; nHeight < 56000000; nHeight += 1000) { 16 | CAmount nSubsidy = GetBlockValue(nHeight, 0); 17 | BOOST_CHECK(nSubsidy <= 32 * COIN); 18 | nSum += nSubsidy * 1000; 19 | BOOST_CHECK(MoneyRange(nSum)); 20 | } 21 | BOOST_CHECK(nSum == 8399999990760000ULL); 22 | } 23 | 24 | BOOST_AUTO_TEST_SUITE_END() 25 | -------------------------------------------------------------------------------- /contrib/debian/rules: -------------------------------------------------------------------------------- 1 | #!/usr/bin/make -f 2 | # -*- mode: makefile; coding: utf-8 -*- 3 | 4 | #DEB_MAKE_CHECK_TARGET = test_bitcoin 5 | #build/bitcoind:: 6 | # $(if $(filter nocheck,$(DEB_BUILD_OPTIONS)),,src/test_bitcoin) 7 | 8 | DEB_INSTALL_EXAMPLES_bitcoind += debian/examples/* 9 | DEB_INSTALL_MANPAGES_bitcoind += 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/bitcoin-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 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.3.23.md: -------------------------------------------------------------------------------- 1 | Win32, Linux, MacOSX and source releases for bitcoin v0.3.23 have been uploaded to 2 | https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.23/ 3 | 4 | This is another quick bugfix release, trying to deal with the influx of new bitcoin users. 5 | 6 | Main items of note: 7 | 8 | * P2P connect-to-node logic changed to reduce timeout a bit. The network saw a huge influx of new users, who do not permit incoming connections. This change is a short-term hack, to more quickly hunt for useful P2P connections. Better "leaf node" logic is in the works, but this should let us limp along until then. One may use -upnp to properly forward ports, and help the network. 9 | * Transaction fee reduced to 0.0005 for new transactions 10 | * Client will relay transactions with fees as low as 0.0001 BTC 11 | 12 | -------------------------------------------------------------------------------- /src/qt/transactiondescdialog.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef TRANSACTIONDESCDIALOG_H 6 | #define TRANSACTIONDESCDIALOG_H 7 | 8 | #include 9 | 10 | namespace Ui { 11 | class TransactionDescDialog; 12 | } 13 | 14 | QT_BEGIN_NAMESPACE 15 | class QModelIndex; 16 | QT_END_NAMESPACE 17 | 18 | /** Dialog showing transaction details. */ 19 | class TransactionDescDialog : public QDialog 20 | { 21 | Q_OBJECT 22 | 23 | public: 24 | explicit TransactionDescDialog(const QModelIndex &idx, QWidget *parent = 0); 25 | ~TransactionDescDialog(); 26 | 27 | private: 28 | Ui::TransactionDescDialog *ui; 29 | }; 30 | 31 | #endif // TRANSACTIONDESCDIALOG_H 32 | -------------------------------------------------------------------------------- /contrib/bitcoin-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/bitcoin.qrc 22 | -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /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 | Bitcoin-Qt.app 26 | 27 | 128 28 | 156 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /contrib/init/bitcoind.openrcconf: -------------------------------------------------------------------------------- 1 | # /etc/conf.d/bitcoind: config file for /etc/init.d/bitcoind 2 | 3 | # Config file location 4 | #BITCOIND_CONFIGFILE="/etc/bitcoin/bitcoin.conf" 5 | 6 | # What directory to write pidfile to? (created and owned by $BITCOIND_USER) 7 | #BITCOIND_PIDDIR="/var/run/bitcoind" 8 | 9 | # What filename to give the pidfile 10 | #BITCOIND_PIDFILE="${BITCOIND_PIDDIR}/bitcoind.pid" 11 | 12 | # Where to write bitcoind data (be mindful that the blockchain is large) 13 | #BITCOIND_DATADIR="/var/lib/bitcoind" 14 | 15 | # User and group to own bitcoind process 16 | #BITCOIND_USER="bitcoin" 17 | #BITCOIND_GROUP="bitcoin" 18 | 19 | # Path to bitcoind executable 20 | #BITCOIND_BIN="/usr/bin/bitcoind" 21 | 22 | # Nice value to run bitcoind under 23 | #BITCOIND_NICE=0 24 | 25 | # Additional options (avoid -conf and -datadir, use flags above) 26 | BITCOIND_OPTS="-disablewallet" 27 | 28 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.3.12.md: -------------------------------------------------------------------------------- 1 | Version 0.3.12 is now available. 2 | 3 | Features: 4 | * json-rpc errors return a more standard error object. (thanks to Gavin Andresen) 5 | * json-rpc command line returns exit codes. 6 | * json-rpc "backupwallet" command. 7 | * Recovers and continues if an exception is caused by a message you received. Other nodes shouldn't be able to cause an exception, and it hasn't happened before, but if a way is found to cause an exception, this would keep it from being used to stop network nodes. 8 | 9 | If you have json-rpc code that checks the contents of the error string, you need to change it to expect error objects of the form {"code":,"message":}, which is the standard. See this thread: 10 | http://www.bitcoin.org/smf/index.php?topic=969.0 11 | 12 | Download: 13 | http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.12/ 14 | 15 | -------------------------------------------------------------------------------- /src/clientversion.h: -------------------------------------------------------------------------------- 1 | #ifndef CLIENTVERSION_H 2 | #define CLIENTVERSION_H 3 | 4 | // 5 | // client versioning and copyright year 6 | // 7 | 8 | // These need to be macros, as version.cpp's and bitcoin-qt.rc's voodoo requires it 9 | #define CLIENT_VERSION_MAJOR 0 10 | #define CLIENT_VERSION_MINOR 8 11 | #define CLIENT_VERSION_REVISION 7 12 | #define CLIENT_VERSION_BUILD 2 13 | 14 | // Set to true for release, false for prerelease or test build 15 | #define CLIENT_VERSION_IS_RELEASE true 16 | 17 | // Copyright year (2009-this) 18 | // Todo: update this when changing our copyright comments in the source 19 | #define COPYRIGHT_YEAR 2014 20 | 21 | // Converts the parameter X to a string after macro replacement on X has been performed. 22 | // Don't merge these into one macro! 23 | #define STRINGIZE(X) DO_STRINGIZE(X) 24 | #define DO_STRINGIZE(X) #X 25 | 26 | #endif // CLIENTVERSION_H 27 | -------------------------------------------------------------------------------- /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/qt/qvaluecombobox.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "qvaluecombobox.h" 6 | 7 | QValueComboBox::QValueComboBox(QWidget *parent) : 8 | QComboBox(parent), role(Qt::UserRole) 9 | { 10 | connect(this, SIGNAL(currentIndexChanged(int)), this, SLOT(handleSelectionChanged(int))); 11 | } 12 | 13 | QVariant QValueComboBox::value() const 14 | { 15 | return itemData(currentIndex(), role); 16 | } 17 | 18 | void QValueComboBox::setValue(const QVariant &value) 19 | { 20 | setCurrentIndex(findData(value, role)); 21 | } 22 | 23 | void QValueComboBox::setRole(int role) 24 | { 25 | this->role = role; 26 | } 27 | 28 | void QValueComboBox::handleSelectionChanged(int idx) 29 | { 30 | emit valueChanged(); 31 | } 32 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.3.19.md: -------------------------------------------------------------------------------- 1 | There's more work to do on DoS, but I'm doing a quick build of what I have so far in case it's needed, before venturing into more complex ideas. The build for this is version 0.3.19. 2 | 3 | - Added some DoS controls 4 | As Gavin and I have said clearly before, the software is not at all resistant to DoS attack. This is one improvement, but there are still more ways to attack than I can count. 5 | 6 | I'm leaving the -limitfreerelay part as a switch for now and it's there if you need it. 7 | 8 | - Removed "safe mode" alerts 9 | "safe mode" alerts was a temporary measure after the 0.3.9 overflow bug. We can say all we want that users can just run with "-disablesafemode", but it's better just not to have it for the sake of appearances. It was never intended as a long term feature. Safe mode can still be triggered by seeing a longer (greater total PoW) invalid block chain. 10 | 11 | -------------------------------------------------------------------------------- /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/qt/qvalidatedlineedit.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef QVALIDATEDLINEEDIT_H 6 | #define QVALIDATEDLINEEDIT_H 7 | 8 | #include 9 | 10 | /** Line edit that can be marked as "invalid" to show input validation feedback. When marked as invalid, 11 | it will get a red background until it is focused. 12 | */ 13 | class QValidatedLineEdit : public QLineEdit 14 | { 15 | Q_OBJECT 16 | 17 | public: 18 | explicit QValidatedLineEdit(QWidget *parent = 0); 19 | void clear(); 20 | 21 | protected: 22 | void focusInEvent(QFocusEvent *evt); 23 | 24 | private: 25 | bool valid; 26 | 27 | public slots: 28 | void setValid(bool valid); 29 | 30 | private slots: 31 | void markValid(); 32 | }; 33 | 34 | #endif // QVALIDATEDLINEEDIT_H 35 | -------------------------------------------------------------------------------- /doc/README_windows.txt: -------------------------------------------------------------------------------- 1 | Bitcoin Core 0.10.0 2 | ===================== 3 | 4 | Intro 5 | ----- 6 | Bitcoin is a free open source peer-to-peer electronic cash system that is 7 | completely decentralized, without the need for a central server or trusted 8 | parties. Users hold the crypto keys to their own money and transact directly 9 | with each other, with the help of a P2P network to check for double-spending. 10 | 11 | 12 | Setup 13 | ----- 14 | Unpack the files into a directory and run bitcoin-qt.exe. 15 | 16 | Bitcoin Core is the original Bitcoin client and it builds the backbone of the network. 17 | However, it downloads and stores the entire history of Bitcoin transactions; 18 | depending on the speed of your computer and network connection, the synchronization 19 | process can take anywhere from a few hours to a day or more. 20 | 21 | See the bitcoin wiki at: 22 | https://en.bitcoin.it/wiki/Main_Page 23 | for more help and information. 24 | 25 | -------------------------------------------------------------------------------- /src/test/base64_tests.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin Core developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "utilstrencodings.h" 6 | 7 | #include 8 | 9 | BOOST_AUTO_TEST_SUITE(base64_tests) 10 | 11 | BOOST_AUTO_TEST_CASE(base64_testvectors) 12 | { 13 | static const std::string vstrIn[] = {"","f","fo","foo","foob","fooba","foobar"}; 14 | static const std::string vstrOut[] = {"","Zg==","Zm8=","Zm9v","Zm9vYg==","Zm9vYmE=","Zm9vYmFy"}; 15 | for (unsigned int i=0; i" 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 | 33 | -------------------------------------------------------------------------------- /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/test/base32_tests.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012-2013 The Bitcoin Core developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "utilstrencodings.h" 6 | 7 | #include 8 | 9 | BOOST_AUTO_TEST_SUITE(base32_tests) 10 | 11 | BOOST_AUTO_TEST_CASE(base32_testvectors) 12 | { 13 | static const std::string vstrIn[] = {"","f","fo","foo","foob","fooba","foobar"}; 14 | static const std::string vstrOut[] = {"","my======","mzxq====","mzxw6===","mzxw6yq=","mzxw6ytb","mzxw6ytboi======"}; 15 | for (unsigned int i=0; i 5 | #include 6 | 7 | namespace Ui { 8 | class QRCodeDialog; 9 | } 10 | class OptionsModel; 11 | 12 | class QRCodeDialog : public QDialog 13 | { 14 | Q_OBJECT 15 | 16 | public: 17 | explicit QRCodeDialog(const QString &addr, const QString &label, bool enableReq, QWidget *parent = 0); 18 | ~QRCodeDialog(); 19 | 20 | void setModel(OptionsModel *model); 21 | 22 | private slots: 23 | void on_lnReqAmount_textChanged(); 24 | void on_lnLabel_textChanged(); 25 | void on_lnMessage_textChanged(); 26 | void on_btnSaveAs_clicked(); 27 | void on_chkReqPayment_toggled(bool fChecked); 28 | 29 | void updateDisplayUnit(); 30 | 31 | private: 32 | Ui::QRCodeDialog *ui; 33 | OptionsModel *model; 34 | QString address; 35 | QImage myImage; 36 | 37 | void genCode(); 38 | QString getURI(); 39 | }; 40 | 41 | #endif // QRCODEDIALOG_H 42 | -------------------------------------------------------------------------------- /src/qt/coincontroltreewidget.cpp: -------------------------------------------------------------------------------- 1 | #include "coincontroltreewidget.h" 2 | #include "coincontroldialog.h" 3 | 4 | CoinControlTreeWidget::CoinControlTreeWidget(QWidget *parent) : 5 | QTreeWidget(parent) 6 | { 7 | 8 | } 9 | 10 | void CoinControlTreeWidget::keyPressEvent(QKeyEvent *event) 11 | { 12 | if (event->key() == Qt::Key_Space) // press spacebar -> select checkbox 13 | { 14 | event->ignore(); 15 | int COLUMN_CHECKBOX = 0; 16 | this->currentItem()->setCheckState(COLUMN_CHECKBOX, ((this->currentItem()->checkState(COLUMN_CHECKBOX) == Qt::Checked) ? Qt::Unchecked : Qt::Checked)); 17 | } 18 | else if (event->key() == Qt::Key_Escape) // press esc -> close dialog 19 | { 20 | event->ignore(); 21 | CoinControlDialog *coinControlDialog = (CoinControlDialog*)this->parentWidget(); 22 | coinControlDialog->done(QDialog::Accepted); 23 | } 24 | else 25 | { 26 | this->QTreeWidget::keyPressEvent(event); 27 | } 28 | } -------------------------------------------------------------------------------- /src/qt/test/paymentservertests.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2014 The Bitcoin developers 2 | // Distributed under the MIT software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef BITCOIN_QT_TEST_PAYMENTSERVERTESTS_H 6 | #define BITCOIN_QT_TEST_PAYMENTSERVERTESTS_H 7 | 8 | #include "../paymentserver.h" 9 | 10 | #include 11 | #include 12 | 13 | class PaymentServerTests : public QObject 14 | { 15 | Q_OBJECT 16 | 17 | private slots: 18 | void paymentServerTests(); 19 | }; 20 | 21 | // Dummy class to receive paymentserver signals. 22 | // If SendCoinsRecipient was a proper QObject, then 23 | // we could use QSignalSpy... but it's not. 24 | class RecipientCatcher : public QObject 25 | { 26 | Q_OBJECT 27 | 28 | public slots: 29 | void getRecipient(SendCoinsRecipient r); 30 | 31 | public: 32 | SendCoinsRecipient recipient; 33 | }; 34 | 35 | #endif // BITCOIN_QT_TEST_PAYMENTSERVERTESTS_H 36 | -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.8.1.md: -------------------------------------------------------------------------------- 1 | Bitcoin-Qt/bitcoind version 0.8.1 is now available from: 2 | http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.8.1/ 3 | 4 | This is a maintenance release that adds a new network rule to avoid 5 | a chain-forking incompatibility with versions 0.7.2 and earlier. 6 | 7 | Please report bugs using the issue tracker at github: 8 | https://github.com/bitcoin/bitcoin/issues 9 | 10 | 11 | How to Upgrade 12 | -------------- 13 | 14 | If you are running an older version, shut it down. Wait 15 | until it has completely shut down (which might take a few minutes for older 16 | versions), then run the installer (on Windows) or just copy over 17 | /Applications/Bitcoin-Qt (on Mac) or bitcoind/bitcoin-qt (on Linux). 18 | 19 | If you are upgrading from version 0.7.2 or earlier, the first time you 20 | run 0.8.1 your blockchain files will be re-indexed, which will take 21 | anywhere from 30 minutes to several hours, depending on the speed of 22 | your machine. 23 | 24 | -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /src/checkpoints.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009-2012 The Bitcoin developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | #ifndef BITCOIN_CHECKPOINT_H 5 | #define BITCOIN_CHECKPOINT_H 6 | 7 | #include 8 | 9 | class uint256; 10 | class CBlockIndex; 11 | 12 | /** Block-chain checkpoints are compiled-in sanity checks. 13 | * They are updated every release or three. 14 | */ 15 | namespace Checkpoints 16 | { 17 | // Returns true if block passes checkpoint checks 18 | bool CheckBlock(int nHeight, const uint256& hash); 19 | 20 | // Return conservative estimate of total number of blocks, 0 if unknown 21 | int GetTotalBlocksEstimate(); 22 | 23 | // Returns last CBlockIndex* in mapBlockIndex that is a checkpoint 24 | CBlockIndex* GetLastCheckpoint(const std::map& mapBlockIndex); 25 | 26 | double GuessVerificationProgress(CBlockIndex *pindex); 27 | } 28 | 29 | #endif 30 | -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /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), type (1 byte), length (2 bytes). 30 | static const int kHeaderSize = 4 + 1 + 2; 31 | 32 | } // namespace log 33 | } // namespace leveldb 34 | 35 | #endif // STORAGE_LEVELDB_DB_LOG_FORMAT_H_ 36 | -------------------------------------------------------------------------------- /src/qt/monitoreddatamapper.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef MONITOREDDATAMAPPER_H 6 | #define MONITOREDDATAMAPPER_H 7 | 8 | #include 9 | 10 | QT_BEGIN_NAMESPACE 11 | class QWidget; 12 | QT_END_NAMESPACE 13 | 14 | /** Data to Widget mapper that watches for edits and notifies listeners when a field is edited. 15 | This can be used, for example, to enable a commit/apply button in a configuration dialog. 16 | */ 17 | class MonitoredDataMapper : public QDataWidgetMapper 18 | { 19 | Q_OBJECT 20 | 21 | public: 22 | explicit MonitoredDataMapper(QObject *parent=0); 23 | 24 | void addMapping(QWidget *widget, int section); 25 | void addMapping(QWidget *widget, int section, const QByteArray &propertyName); 26 | 27 | private: 28 | void addChangeMonitor(QWidget *widget); 29 | 30 | signals: 31 | void viewModified(); 32 | }; 33 | 34 | #endif // MONITOREDDATAMAPPER_H 35 | -------------------------------------------------------------------------------- /src/qt/qvaluecombobox.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef QVALUECOMBOBOX_H 6 | #define QVALUECOMBOBOX_H 7 | 8 | #include 9 | #include 10 | 11 | /* QComboBox that can be used with QDataWidgetMapper to select ordinal values from a model. */ 12 | class QValueComboBox : public QComboBox 13 | { 14 | Q_OBJECT 15 | 16 | Q_PROPERTY(QVariant value READ value WRITE setValue NOTIFY valueChanged USER true) 17 | 18 | public: 19 | explicit QValueComboBox(QWidget *parent = 0); 20 | 21 | QVariant value() const; 22 | void setValue(const QVariant &value); 23 | 24 | /** Specify model role to use as ordinal value (defaults to Qt::UserRole) */ 25 | void setRole(int role); 26 | 27 | signals: 28 | void valueChanged(); 29 | 30 | private: 31 | int role; 32 | 33 | private slots: 34 | void handleSelectionChanged(int idx); 35 | }; 36 | 37 | #endif // QVALUECOMBOBOX_H 38 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.3.22.md: -------------------------------------------------------------------------------- 1 | Download URL: https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.22/ 2 | 3 | This is largely a bugfix and TX fee schedule release. We also hope to make 0.3.23 a quick release, to fix problems that the network has seen due to explosive growth in the past week. 4 | 5 | Notable changes: 6 | * Client will accept and relay TX's with 0.0005 BTC fee schedule (users still pay 0.01 BTC per kb, until next version) 7 | * Non-standard transactions accepted on testnet 8 | * Source code tree reorganized (prep for autotools build) 9 | * Remove "Generate Coins" option from GUI, and remove 4way SSE miner. Internal reference CPU miner remains available, but users are directed to external miners for best hash production. 10 | * IRC is overflowing. Client now bootstraps to channels #bitcoin00 - #bitcoin99 11 | * DNS names now may be used with -addnode, -connect (requires -dns to enable) 12 | 13 | RPC changes: 14 | * 'listtransactions' adds 'from' param, for range queries 15 | * 'move' may take account balances negative 16 | * 'settxfee' added, to manually set TX fee 17 | 18 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.3.20.md: -------------------------------------------------------------------------------- 1 | Please checkout the git integration branch from: 2 | 3 | https://github.com/bitcoin/bitcoin 4 | 5 | ... and help test. The new features that need testing are: 6 | 7 | * -nolisten : https://github.com/bitcoin/bitcoin/pull/11 8 | * -rescan : scan block chain for missing wallet transactions 9 | * -printtoconsole : https://github.com/bitcoin/bitcoin/pull/37 10 | * RPC gettransaction details : https://github.com/bitcoin/bitcoin/pull/24 11 | * listtransactions new features : https://github.com/bitcoin/bitcoin/pull/10 12 | 13 | Bug fixes that also need testing: 14 | 15 | * -maxconnections= : https://github.com/bitcoin/bitcoin/pull/42 16 | * RPC listaccounts minconf : https://github.com/bitcoin/bitcoin/pull/27 17 | * RPC move, add time to output : https://github.com/bitcoin/bitcoin/pull/21 18 | * ...and several improvements to --help output. 19 | 20 | This needs more testing on Windows! Please drop me a quick private message, email, or IRC message if you are able to do some testing. If you find bugs, please open an issue at: 21 | 22 | https://github.com/bitcoin/bitcoin/issues 23 | 24 | -------------------------------------------------------------------------------- /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/test/timedata_tests.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2014 The Bitcoin Core developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | // 5 | #include "timedata.h" 6 | 7 | #include 8 | 9 | using namespace std; 10 | 11 | BOOST_AUTO_TEST_SUITE(timedata_tests) 12 | 13 | BOOST_AUTO_TEST_CASE(util_MedianFilter) 14 | { 15 | CMedianFilter filter(5, 15); 16 | 17 | BOOST_CHECK_EQUAL(filter.median(), 15); 18 | 19 | filter.input(20); // [15 20] 20 | BOOST_CHECK_EQUAL(filter.median(), 17); 21 | 22 | filter.input(30); // [15 20 30] 23 | BOOST_CHECK_EQUAL(filter.median(), 20); 24 | 25 | filter.input(3); // [3 15 20 30] 26 | BOOST_CHECK_EQUAL(filter.median(), 17); 27 | 28 | filter.input(7); // [3 7 15 20 30] 29 | BOOST_CHECK_EQUAL(filter.median(), 15); 30 | 31 | filter.input(18); // [3 7 18 20 30] 32 | BOOST_CHECK_EQUAL(filter.median(), 18); 33 | 34 | filter.input(0); // [0 3 7 18 30] 35 | BOOST_CHECK_EQUAL(filter.median(), 7); 36 | } 37 | 38 | BOOST_AUTO_TEST_SUITE_END() 39 | -------------------------------------------------------------------------------- /COPYING: -------------------------------------------------------------------------------- 1 | Copyright (c) 2009-2014 Bitcoin Developers 2 | Copyright (c) 2011-2014 Fastcoin Developers 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy 5 | of this software and associated documentation files (the "Software"), to deal 6 | in the Software without restriction, including without limitation the rights 7 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | copies of the Software, and to permit persons to whom the Software is 9 | furnished to do so, subject to the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be included in 12 | all copies or substantial portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 20 | THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.6.3.md: -------------------------------------------------------------------------------- 1 | Bitcoin version 0.6.3 is now available for download at: 2 | http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.6.3/ 3 | 4 | This is a bug-fix release, with no new features. 5 | 6 | Please report bugs using the issue tracker at github: 7 | https://github.com/bitcoin/bitcoin/issues 8 | 9 | CHANGE SUMMARY 10 | 11 | Fixed a serious denial-of-service attack that could cause the 12 | bitcoin process to become unresponsive. Thanks to Sergio Lerner 13 | for finding and responsibly reporting the problem. (CVE-2012-3789) 14 | 15 | Optimized the process of checking transaction signatures, to 16 | speed up processing of new block messages and make propagating 17 | blocks across the network faster. 18 | 19 | Fixed an obscure bug that could cause the bitcoin process to get 20 | stuck on an invalid block-chain, if the invalid chain was 21 | hundreds of blocks long. 22 | 23 | Bitcoin-Qt no longer automatically selects the first address 24 | in the address book (Issue #1384). 25 | 26 | Fixed minimize-to-dock behavior of Bitcon-Qt on the Mac. 27 | 28 | Added a block checkpoint at block 185,333 to speed up initial 29 | blockchain download. 30 | 31 | -------------------------------------------------------------------------------- /src/json/LICENSE.txt: -------------------------------------------------------------------------------- 1 | The MIT License 2 | 3 | Copyright (c) 2007 - 2009 John W. Wilkinson 4 | 5 | Permission is hereby granted, free of charge, to any person 6 | obtaining a copy of this software and associated documentation 7 | files (the "Software"), to deal in the Software without 8 | restriction, including without limitation the rights to use, 9 | copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the 11 | Software is furnished to do so, subject to the following 12 | conditions: 13 | 14 | The above copyright notice and this permission notice shall be 15 | included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 18 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 19 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 20 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 21 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 22 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 23 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 24 | OTHER DEALINGS IN THE SOFTWARE. 25 | -------------------------------------------------------------------------------- /src/qt/qvalidatedlineedit.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "qvalidatedlineedit.h" 6 | 7 | #include "guiconstants.h" 8 | 9 | QValidatedLineEdit::QValidatedLineEdit(QWidget *parent) : 10 | QLineEdit(parent), valid(true) 11 | { 12 | connect(this, SIGNAL(textChanged(QString)), this, SLOT(markValid())); 13 | } 14 | 15 | void QValidatedLineEdit::setValid(bool valid) 16 | { 17 | if(valid == this->valid) 18 | { 19 | return; 20 | } 21 | 22 | if(valid) 23 | { 24 | setStyleSheet(""); 25 | } 26 | else 27 | { 28 | setStyleSheet(STYLE_INVALID); 29 | } 30 | this->valid = valid; 31 | } 32 | 33 | void QValidatedLineEdit::focusInEvent(QFocusEvent *evt) 34 | { 35 | // Clear invalid flag on focus 36 | setValid(true); 37 | QLineEdit::focusInEvent(evt); 38 | } 39 | 40 | void QValidatedLineEdit::markValid() 41 | { 42 | setValid(true); 43 | } 44 | 45 | void QValidatedLineEdit::clear() 46 | { 47 | setValid(true); 48 | QLineEdit::clear(); 49 | } 50 | -------------------------------------------------------------------------------- /src/leveldb/table/block.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_BLOCK_H_ 6 | #define STORAGE_LEVELDB_TABLE_BLOCK_H_ 7 | 8 | #include 9 | #include 10 | #include "leveldb/iterator.h" 11 | 12 | namespace leveldb { 13 | 14 | struct BlockContents; 15 | class Comparator; 16 | 17 | class Block { 18 | public: 19 | // Initialize the block with the specified contents. 20 | explicit Block(const BlockContents& contents); 21 | 22 | ~Block(); 23 | 24 | size_t size() const { return size_; } 25 | Iterator* NewIterator(const Comparator* comparator); 26 | 27 | private: 28 | uint32_t NumRestarts() const; 29 | 30 | const char* data_; 31 | size_t size_; 32 | uint32_t restart_offset_; // Offset in data_ of restart array 33 | bool owned_; // Block owns data_[] 34 | 35 | // No copying allowed 36 | Block(const Block&); 37 | void operator=(const Block&); 38 | 39 | class Iter; 40 | }; 41 | 42 | } // namespace leveldb 43 | 44 | #endif // STORAGE_LEVELDB_TABLE_BLOCK_H_ 45 | -------------------------------------------------------------------------------- /contrib/linearize/README.md: -------------------------------------------------------------------------------- 1 | # Linearize 2 | Construct a linear, no-fork, best version of the blockchain. 3 | 4 | ## Step 1: Download hash list 5 | 6 | $ ./linearize-hashes.py linearize.cfg > hashlist.txt 7 | 8 | Required configuration file settings for linearize-hashes: 9 | * RPC: rpcuser, rpcpassword 10 | 11 | Optional config file setting for linearize-hashes: 12 | * RPC: host, port 13 | * Block chain: min_height, max_height 14 | 15 | ## Step 2: Copy local block data 16 | 17 | $ ./linearize-data.py linearize.cfg 18 | 19 | Required configuration file settings: 20 | * "input": bitcoind blocks/ directory containing blkNNNNN.dat 21 | * "hashlist": text file containing list of block hashes, linearized-hashes.py 22 | output. 23 | * "output_file": bootstrap.dat 24 | or 25 | * "output": output directory for linearized blocks/blkNNNNN.dat output 26 | 27 | Optional config file setting for linearize-data: 28 | * "netmagic": network magic number 29 | * "max_out_sz": maximum output file size (default 1000*1000*1000) 30 | * "split_timestamp": Split files when a new month is first seen, in addition to 31 | reaching a maximum file size. 32 | * "file_timestamp": Set each file's last-modified time to that of the 33 | most recent block in that file. 34 | -------------------------------------------------------------------------------- /doc/files.md: -------------------------------------------------------------------------------- 1 | Used in 0.8.0 2 | --------------------- 3 | * wallet.dat: personal wallet (BDB) with keys and transactions 4 | * peers.dat: peer IP address database (custom format); since 0.7.0 5 | * blocks/blk000??.dat: block data (custom, 128 MiB per file); since 0.8.0 6 | * blocks/rev000??.dat; block undo data (custom); since 0.8.0 (format changed since pre-0.8) 7 | * blocks/index/*; block index (LevelDB); since 0.8.0 8 | * chainstate/*; block chain state database (LevelDB); since 0.8.0 9 | * database/*: BDB database environment; only used for wallet since 0.8.0 10 | 11 | Only used in pre-0.8.0 12 | --------------------- 13 | * blktree/*; block chain index (LevelDB); since pre-0.8, replaced by blocks/index/* in 0.8.0 14 | * coins/*; unspent transaction output database (LevelDB); since pre-0.8, replaced by chainstate/* in 0.8.0 15 | 16 | Only used before 0.8.0 17 | --------------------- 18 | * blkindex.dat: block chain index database (BDB); replaced by {chainstate/*,blocks/index/*,blocks/rev000??.dat} in 0.8.0 19 | * blk000?.dat: block data (custom, 2 GiB per file); replaced by blocks/blk000??.dat in 0.8.0 20 | 21 | Only used before 0.7.0 22 | --------------------- 23 | * addr.dat: peer IP address database (BDB); replaced by peers.dat in 0.7.0 24 | 25 | -------------------------------------------------------------------------------- /src/leveldb/db/builder.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_BUILDER_H_ 6 | #define STORAGE_LEVELDB_DB_BUILDER_H_ 7 | 8 | #include "leveldb/status.h" 9 | 10 | namespace leveldb { 11 | 12 | struct Options; 13 | struct FileMetaData; 14 | 15 | class Env; 16 | class Iterator; 17 | class TableCache; 18 | class VersionEdit; 19 | 20 | // Build a Table file from the contents of *iter. The generated file 21 | // will be named according to meta->number. On success, the rest of 22 | // *meta will be filled with metadata about the generated table. 23 | // If no data is present in *iter, meta->file_size will be set to 24 | // zero, and no Table file will be produced. 25 | extern Status BuildTable(const std::string& dbname, 26 | Env* env, 27 | const Options& options, 28 | TableCache* table_cache, 29 | Iterator* iter, 30 | FileMetaData* meta); 31 | 32 | } // namespace leveldb 33 | 34 | #endif // STORAGE_LEVELDB_DB_BUILDER_H_ 35 | -------------------------------------------------------------------------------- /src/coincontrol.h: -------------------------------------------------------------------------------- 1 | #ifndef COINCONTROL_H 2 | #define COINCONTROL_H 3 | 4 | /** Coin Control Features. */ 5 | class CCoinControl 6 | { 7 | public: 8 | CTxDestination destChange; 9 | 10 | CCoinControl() 11 | { 12 | SetNull(); 13 | } 14 | 15 | void SetNull() 16 | { 17 | destChange = CNoDestination(); 18 | setSelected.clear(); 19 | } 20 | 21 | bool HasSelected() const 22 | { 23 | return (setSelected.size() > 0); 24 | } 25 | 26 | bool IsSelected(const uint256& hash, unsigned int n) const 27 | { 28 | COutPoint outpt(hash, n); 29 | return (setSelected.count(outpt) > 0); 30 | } 31 | 32 | void Select(COutPoint& output) 33 | { 34 | setSelected.insert(output); 35 | } 36 | 37 | void UnSelect(COutPoint& output) 38 | { 39 | setSelected.erase(output); 40 | } 41 | 42 | void UnSelectAll() 43 | { 44 | setSelected.clear(); 45 | } 46 | 47 | void ListSelected(std::vector& vOutpoints) 48 | { 49 | vOutpoints.assign(setSelected.begin(), setSelected.end()); 50 | } 51 | 52 | private: 53 | std::set setSelected; 54 | 55 | }; 56 | 57 | #endif // COINCONTROL_H 58 | -------------------------------------------------------------------------------- /src/test/README.md: -------------------------------------------------------------------------------- 1 | # Notes 2 | The sources in this directory are unit test cases. Boost includes a 3 | unit testing framework, and since bitcoin already uses boost, it makes 4 | sense to simply use this framework rather than require developers to 5 | configure some other framework (we want as few impediments to creating 6 | unit tests as possible). 7 | 8 | The build system is setup to compile an executable called "test_bitcoin" 9 | that runs all of the unit tests. The main source file is called 10 | test_bitcoin.cpp, which simply includes other files that contain the 11 | actual unit tests (outside of a couple required preprocessor 12 | directives). The pattern is to create one test file for each class or 13 | source file for which you want to create unit tests. The file naming 14 | convention is "_tests.cpp" and such files should wrap 15 | their tests in a test suite called "_tests". For an 16 | examples of this pattern, examine uint160_tests.cpp and 17 | uint256_tests.cpp. 18 | 19 | For further reading, I found the following website to be helpful in 20 | explaining how the boost unit test framework works: 21 | [http://www.alittlemadness.com/2009/03/31/c-unit-testing-with-boosttest/](http://www.alittlemadness.com/2009/03/31/c-unit-testing-with-boosttest/). -------------------------------------------------------------------------------- /src/qt/csvmodelwriter.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef CSVMODELWRITER_H 6 | #define CSVMODELWRITER_H 7 | 8 | #include 9 | #include 10 | 11 | QT_BEGIN_NAMESPACE 12 | class QAbstractItemModel; 13 | QT_END_NAMESPACE 14 | 15 | /** Export a Qt table model to a CSV file. This is useful for analyzing or post-processing the data in 16 | a spreadsheet. 17 | */ 18 | class CSVModelWriter : public QObject 19 | { 20 | Q_OBJECT 21 | 22 | public: 23 | explicit CSVModelWriter(const QString &filename, QObject *parent = 0); 24 | 25 | void setModel(const QAbstractItemModel *model); 26 | void addColumn(const QString &title, int column, int role=Qt::EditRole); 27 | 28 | /** Perform export of the model to CSV. 29 | @returns true on success, false otherwise 30 | */ 31 | bool write(); 32 | 33 | private: 34 | QString filename; 35 | const QAbstractItemModel *model; 36 | 37 | struct Column 38 | { 39 | QString title; 40 | int column; 41 | int role; 42 | }; 43 | QList columns; 44 | }; 45 | 46 | #endif // CSVMODELWRITER_H 47 | -------------------------------------------------------------------------------- /src/qt/macdockiconhandler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #ifndef MACDOCKICONHANDLER_H 6 | #define MACDOCKICONHANDLER_H 7 | 8 | #include 9 | #include 10 | 11 | QT_BEGIN_NAMESPACE 12 | class QMenu; 13 | class QIcon; 14 | class QWidget; 15 | QT_END_NAMESPACE 16 | 17 | #ifdef __OBJC__ 18 | @class DockIconClickEventHandler; 19 | #else 20 | class DockIconClickEventHandler; 21 | #endif 22 | 23 | /** Macintosh-specific dock icon handler. 24 | */ 25 | class MacDockIconHandler : public QObject 26 | { 27 | Q_OBJECT 28 | 29 | public: 30 | ~MacDockIconHandler(); 31 | 32 | QMenu *dockMenu(); 33 | void setIcon(const QIcon &icon); 34 | void setMainWindow(QMainWindow *window); 35 | static MacDockIconHandler *instance(); 36 | 37 | void handleDockIconClickEvent(); 38 | 39 | signals: 40 | void dockIconClicked(); 41 | 42 | private: 43 | MacDockIconHandler(); 44 | 45 | DockIconClickEventHandler *m_dockIconClickEventHandler; 46 | QWidget *m_dummyWidget; 47 | QMenu *m_dockMenu; 48 | QMainWindow *mainWindow; 49 | }; 50 | 51 | #endif // MACDOCKICONCLICKHANDLER_H 52 | -------------------------------------------------------------------------------- /doc/release-notes/release-notes-0.4.3.md: -------------------------------------------------------------------------------- 1 | bitcoind version 0.4.3 is now available for download at: 2 | http://luke.dashjr.org/programs/bitcoin/files/bitcoind-0.4.3/ (until Gavin uploads to SourceForge) 3 | 4 | This is a bugfix-only release based on 0.4.0. 5 | 6 | Please note that the wxBitcoin GUI client is no longer maintained nor supported. If someone would like to step up to maintain this, they should contact Luke-Jr. 7 | 8 | Please report bugs for the daemon only using the issue tracker at github: 9 | https://github.com/bitcoin/bitcoin/issues 10 | 11 | Stable source code is hosted at Gitorious: 12 | http://gitorious.org/bitcoin/bitcoind-stable/archive-tarball/v0.4.3#.tar.gz 13 | 14 | BUG FIXES 15 | 16 | Cease locking memory used by non-sensitive information (this caused a huge performance hit on some platforms, especially noticable during initial blockchain download). 17 | Fixed some address-handling deadlocks (client freezes). 18 | No longer accept inbound connections over the internet when Bitcoin is being used with Tor (identity leak). 19 | Use the correct base transaction fee of 0.0005 BTC for accepting transactions into mined blocks (since 0.4.0, it was incorrectly accepting 0.0001 BTC which was only meant to be relayed). 20 | Add new DNS seeds (maintained by Pieter Wuille and Luke Dashjr). 21 | -------------------------------------------------------------------------------- /src/qt/aboutdialog.cpp: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011-2013 The Bitcoin developers 2 | // Distributed under the MIT/X11 software license, see the accompanying 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 | 5 | #include "aboutdialog.h" 6 | #include "ui_aboutdialog.h" 7 | 8 | #include "clientmodel.h" 9 | #include "clientversion.h" 10 | 11 | // Copyright year (2009-this) 12 | // Todo: update this when changing our copyright comments in the source 13 | const int ABOUTDIALOG_COPYRIGHT_YEAR = 2014; 14 | 15 | AboutDialog::AboutDialog(QWidget *parent) : 16 | QDialog(parent), 17 | ui(new Ui::AboutDialog) 18 | { 19 | ui->setupUi(this); 20 | 21 | // Set current copyright year 22 | ui->copyrightLabel->setText(tr("Copyright") + QString(" © 2009-%1 ").arg(COPYRIGHT_YEAR) + tr("The Bitcoin developers") + QString("
") + tr("Copyright") + QString(" © ") + tr("2011-%1 The Fastcoin developers").arg(ABOUTDIALOG_COPYRIGHT_YEAR)); 23 | } 24 | 25 | void AboutDialog::setModel(ClientModel *model) 26 | { 27 | if(model) 28 | { 29 | ui->versionLabel->setText(model->formatFullVersion()); 30 | } 31 | } 32 | 33 | AboutDialog::~AboutDialog() 34 | { 35 | delete ui; 36 | } 37 | 38 | void AboutDialog::on_buttonBox_accepted() 39 | { 40 | close(); 41 | } 42 | -------------------------------------------------------------------------------- /src/leveldb/WINDOWS.md: -------------------------------------------------------------------------------- 1 | # Building LevelDB On Windows 2 | 3 | ## Prereqs 4 | 5 | Install the [Windows Software Development Kit version 7.1](http://www.microsoft.com/downloads/dlx/en-us/listdetailsview.aspx?FamilyID=6b6c21d2-2006-4afa-9702-529fa782d63b). 6 | 7 | Download and extract the [Snappy source distribution](http://snappy.googlecode.com/files/snappy-1.0.5.tar.gz) 8 | 9 | 1. Open the "Windows SDK 7.1 Command Prompt" : 10 | Start Menu -> "Microsoft Windows SDK v7.1" > "Windows SDK 7.1 Command Prompt" 11 | 2. Change the directory to the leveldb project 12 | 13 | ## Building the Static lib 14 | 15 | * 32 bit Version 16 | 17 | setenv /x86 18 | msbuild.exe /p:Configuration=Release /p:Platform=Win32 /p:Snappy=..\snappy-1.0.5 19 | 20 | * 64 bit Version 21 | 22 | setenv /x64 23 | msbuild.exe /p:Configuration=Release /p:Platform=x64 /p:Snappy=..\snappy-1.0.5 24 | 25 | 26 | ## Building and Running the Benchmark app 27 | 28 | * 32 bit Version 29 | 30 | setenv /x86 31 | msbuild.exe /p:Configuration=Benchmark /p:Platform=Win32 /p:Snappy=..\snappy-1.0.5 32 | Benchmark\leveldb.exe 33 | 34 | * 64 bit Version 35 | 36 | setenv /x64 37 | msbuild.exe /p:Configuration=Benchmark /p:Platform=x64 /p:Snappy=..\snappy-1.0.5 38 | x64\Benchmark\leveldb.exe 39 | 40 | -------------------------------------------------------------------------------- /src/leveldb/util/mutexlock.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_MUTEXLOCK_H_ 6 | #define STORAGE_LEVELDB_UTIL_MUTEXLOCK_H_ 7 | 8 | #include "port/port.h" 9 | #include "port/thread_annotations.h" 10 | 11 | namespace leveldb { 12 | 13 | // Helper class that locks a mutex on construction and unlocks the mutex when 14 | // the destructor of the MutexLock object is invoked. 15 | // 16 | // Typical usage: 17 | // 18 | // void MyClass::MyMethod() { 19 | // MutexLock l(&mu_); // mu_ is an instance variable 20 | // ... some complex code, possibly with multiple return paths ... 21 | // } 22 | 23 | class SCOPED_LOCKABLE MutexLock { 24 | public: 25 | explicit MutexLock(port::Mutex *mu) EXCLUSIVE_LOCK_FUNCTION(mu) 26 | : mu_(mu) { 27 | this->mu_->Lock(); 28 | } 29 | ~MutexLock() UNLOCK_FUNCTION() { this->mu_->Unlock(); } 30 | 31 | private: 32 | port::Mutex *const mu_; 33 | // No copying allowed 34 | MutexLock(const MutexLock&); 35 | void operator=(const MutexLock&); 36 | }; 37 | 38 | } // namespace leveldb 39 | 40 | 41 | #endif // STORAGE_LEVELDB_UTIL_MUTEXLOCK_H_ 42 | -------------------------------------------------------------------------------- /doc/REST-interface.md: -------------------------------------------------------------------------------- 1 | Unauthenticated REST Interface 2 | ============================== 3 | 4 | The REST API can be enabled with the `-rest` option. 5 | 6 | Supported API 7 | ------------- 8 | `GET /rest/tx/TX-HASH.{bin|hex|json}` 9 | 10 | Given a transaction hash, 11 | Returns a transaction, in binary, hex-encoded binary or JSON formats. 12 | 13 | `GET /rest/block/BLOCK-HASH.{bin|hex|json}` 14 | `GET /rest/block/notxdetails/BLOCK-HASH.{bin|hex|json}` 15 | 16 | Given a block hash, 17 | Returns a block, in binary, hex-encoded binary or JSON formats. 18 | 19 | The HTTP request and response are both handled entirely in-memory, thus making maximum memory usage at least 2.66MB (1 MB max block, plus hex encoding) per request. 20 | 21 | With the /notxdetails/ option JSON response will only contain the transaction hash instead of the complete transaction details. The option only affects the JSON response. 22 | 23 | For full TX query capability, one must enable the transaction index via "txindex=1" command line / configuration option. 24 | 25 | Risks 26 | ------------- 27 | Running a webbrowser on the same node with a REST enabled bitcoind can be a risk. Accessing prepared XSS websites could read out tx/block data of your node by placing links like `