github cculianu/Fulcrum v1.0.5b
Fulcrum 1.0.5b

latest releases: v1.12.0.1, v1.12.0, v1.11.1...
5 years ago

What's new:

  • Performance improvements - Made the bitcoind_throttle facility (introduced in Fulcrum 1.0.4) behave in a peppier and more efficient manner when the server is not under load.
  • Resiliency - A new max subscriptions facility has been added to make it nearly impossible for abusive clients to degrade performance for normal clients.
    • max_subs_per_ip has been added as a conf file variable. Default is 50000 if unspecified. If the number of subscriptions from a particular IP address exceeds this value, new subscription requests are denied from that IP until its client(s) unsubscribe or disconnect. Note that clients belonging to subnets_to_exclude_from_per_ip_limits are not subjected to this limit.
    • max_subs has also been added as a conf file variable. Default is 10000000 (10 million) if unspecified. This is a limit on the number of subscriptions the server will allow, server-wide, for all clients. If this limit is reached, the server will take measures to potentially kick the most-offending client(s) that it detects.
  • Interoperability - Added 7 new RPC methods to make interoperability with scripting easier.
    • All the new methods live alongside the existing methods but they now accept addresses instead of script hashes, and all are prefixed with: blockchain.address.*
    • These work identically to their blockchain.scripthash.* counterparts, but can be given Bitcoin Cash addresses (rather than the esoteric script hash).
    • These methods increase interoperability of this server software with various clients that may or may not have a full bitcoin scripting lib to translate Bitcoin Addresses -> script hashes.
    • See the protocol documentation for a description of the methods in question.
  • Minor bug fix - The ban by client ID command wouldn't ban. (But ban by IP address worked). Fixed.
  • Internal code refactoring.

Due to the above improvements it is highly recommended that server admins upgrade to this version at their earliest convenience.


Pre-compiled binaries for Linux

I have provided two pre-built binaries for Linux:

  • Fulcrum-1.0.5b-x86_64-linux.tar.gz, which is compiled on an Ubuntu 18.10 system.
  • Fulcrum-1.0.5b-x86_64-linux-ub16.tar.gz, which is compiled on a stock Ubuntu 16.04 system but with g++ 7.3.0 installed from this ppa source: ppa:jonathonf/gcc-7.3 & ppa:jonathonf/gcc

Both of the above binaries contains Qt5Core and Qt5Network from Qt 5.14.1 statically linked. They still requires libz2, libstd++, and the right libc version as dynamic libs on your system (but those are usually present if you are on a recent system).

If the first binary fails, try the second one (-ub16), which should work on older systems, hopefully.

Pre-compiled binaries for Windows

  • Fulcrum-1.0.5b-win64.zip - Pre-built, statically linked Windows version.
    • It should "just work" on any Windows 7 or above 64-bit system.
    • Includes is a statically-linked Fulcrum.exe, built with Qt 5.14.1 and gcc 7.5.0.
    • Additionally, FulcrumAdmin.exe is included which is the python script, but made into a onefile .exe using PyInstaller.

See the .asc files at the bottom for signatures; my gpg public key can be obtained here: https://github.com/Electron-Cash/keys-n-hashes/blob/master/pubkeys/calinkey.txt


Binary builds for macOS coming soon -- Until then you can always build from source!

Don't miss a new Fulcrum release

NewReleases is sending notifications on new releases.