Commit Graph

12844 Commits

Author SHA1 Message Date
tomFlowee 998a4ed7ff Add uin256 bind 2025.04.0 2025-04-15 21:40:33 +02:00
tomFlowee 4d5c934e17 Fix regression, mixup micro and milli 2025-04-14 22:20:13 +02:00
tomFlowee fddfa8e0e4 Add copyconstructor to ctransaction
It already had an assignment operator, as such the copy constructor
really should be there too.
2025-04-14 19:19:05 +02:00
tomFlowee 2c50f4bd52 Work with newer Qt version
This sets the permissions on the saved blk file to be writable, seems
that a qrc input causes Qt to create it with QFile::copy() as read-only
by default.
2025-04-14 18:15:32 +02:00
tomFlowee e9a9746c67 Restoring this hack for testing.
Turns out it is also about ctor, not just the tx size.
2025-04-14 18:14:20 +02:00
tomFlowee 3227f27223 comment out unneeded code 2025-04-14 18:01:55 +02:00
tomFlowee c47c174b7f Fix inconsistent argument name
Now we have -bind / -apibind / -rpcbind as a consistent naming of
arguments.
2025-04-14 16:56:52 +02:00
tomFlowee 553568da32 Delete our connections in destructor.
When we didn't and one was still alive, it might do a callback on the
class after the destructor.
Deleting them makes the callbacks be removed on the server, avoiding
usage after free.
2025-04-14 16:36:27 +02:00
tomFlowee f764f2de78 Add new binding type. 2025-04-12 19:56:03 +02:00
tomFlowee 3c854c1ac9 Add simpler way to get data out of a message 2025-04-12 17:05:01 +02:00
tomFlowee 624257b3a9 Add interruption points for better shutdown.
Also make more responsive as the code could make the shutdown take 120
seconds.
2025-04-12 13:58:46 +02:00
tomFlowee 07f408d601 Turn off validation while not in consensus. 2025-04-12 12:14:59 +02:00
tomFlowee e8aa7b5e0e Update transaction size check.
Get a little bit back into consensus.
2025-04-12 12:11:01 +02:00
tomFlowee f9756a6ac6 New release 2025-04-08 13:01:09 +02:00
tomFlowee e62b0013c3 Add new method Mnemonic::completeWords(partial) 2025-04-07 21:14:32 +02:00
tomFlowee 063816137e Implement binary search 2025-04-07 21:14:25 +02:00
tomFlowee f70adc558d Initialize it here 2025-03-10 23:33:22 +01:00
tomFlowee 49324fad28 Limit linking to only needed boost libs.
We now removed the need for Boost:chrono in all the libs, to avoid
accidentally linking to it again this change makes the apps link to
the actual specific libs instead of just all.
2025-03-07 15:36:36 +01:00
tomFlowee ec408c2f36 New month, new version 2025.03.0 2025-03-07 14:31:22 +01:00
tomFlowee 5f6db1de18 Add feature: p2pnet power save mode.
Setting the "LowPower" mode on the main DownloadManager class will
cause it to halt all network activity and jobs will die.
You can revive it by changing it to NormalPower and optionally calling
the start() method to restart all jobs.
2025-03-07 14:31:02 +01:00
tomFlowee 119988723f Ensure that we don't hold onto the sharedptr too long
This allows a peer we remove / ban to get deleted properly again.
2025-02-24 21:18:07 +01:00
tomFlowee 16bf019d6b Minor. Cleanup and debug outputs.
Cleans up the comments a bit, adds some logging details and as most
functional change it tweaks the numbers a little.
2025-02-24 15:53:52 +01:00
tomFlowee 412adb11ef Detect closed network listener.
This also removes the duplicate call.
2025-02-24 08:25:56 +01:00
tomFlowee a10490b7f9 Make the argument do what the docs says 2025-02-23 22:34:39 +01:00
tomFlowee 64a217df74 Use the passed in tx instead of the indirect one. 2025-02-22 16:38:59 +01:00
tomFlowee 55328ce0d7 Help binding to future interfaces
The idea of binding to interfaces now will take into account the
interfaces maybe becoming available only after the server started.

If your server starts at machine boot, it is a 50/50 chance that the
network interfaces are already fully configured and have received
addresses. In case of dhcp, more often than not this means that your
server will not be listening at the main interface because it wasn't up
yet.

This new api allows the server to give a function to register a new
interface and we have some linux specific code that will notice changes
in the interfaces and we'll allow the app to bind to it a moment or two
after that.
2025-02-20 20:37:33 +01:00
tomFlowee f2d12fd1fe Alter spv download to be parallel.
We always need two random peers to download a certain merkle block, to
avoid the withholding attack.
It occurred to me that there is no need to do them one after the other,
they can both run in parallel without issues. Saving time.
2025-02-19 19:26:56 +01:00
tomFlowee 54b4e531ef Remove unneeded text 2025-02-18 14:18:13 +01:00
tomFlowee 09cb646c1f Update to next docker release 2025-02-18 13:22:11 +01:00
tomFlowee 5874f13505 Remove unused include 2025-02-14 22:31:14 +01:00
tomFlowee 75aa7f05aa Remove outdated link 2025.02.0 2025-02-13 23:22:26 +01:00
tomFlowee 892c5a0027 Don't leave this enabled 2025-02-13 22:01:25 +01:00
tomFlowee 765955cfc0 Move release to new month 2025-02-13 21:44:44 +01:00
tomFlowee 65cc857704 Refactor and cleanup AddressMonitorService
This renames lots of variables to be more "correct" (call it
output instead of transaction and similar things).
This removes duplication by moving repeated into methods.

This fixes the behavior of the dsproof calls to be back to
the old unit test, while adding the new fields to the unit
test for minimal change.
2025-02-13 13:46:12 +01:00
John Galt ae5fc27e4f Improve AddressMonitorService
This is a combination of 5 commits.

Improve AddressMonitorService
Changed double spend notifications to new format & include cashtoken data
Updated AddressMonitorService response for txs found in the mempool.
Removed duplicate BitcoinScriptHashed tags
AddressMonitorService update
2025-02-12 16:01:19 +01:00
tomFlowee 586c0d5eef Some string usage cleanups.
Avoid unneeded conversions.
2025-02-12 15:35:41 +01:00
John Galt aa44de7d89 Change PostgreSQL so that inserts are faster (using COPY) 2025-02-12 15:35:41 +01:00
tomFlowee e4735ebd54 Post commit review of Johns CashToken stuff
This makes minor renames and cleanups.
We merge the 5 different cashtoken booleans into one, making
usage and server-code simpler.
And probably in real use not actually causing bigger messages.
2025-02-12 15:35:41 +01:00
tomFlowee a009b92c59 Revert half of Johns patch to split two features
This splits off the AddressMonitor parts from the previous commit
so we can review that separately.
2025-02-12 15:35:41 +01:00
John Galt 9942126040 Various changes made to the Flowee API to understand CashTokens and imrpove the AddressMonitorService 2025-02-12 15:35:41 +01:00
tomFlowee c083a56916 Add guards for ssl functionlity of network manager
When Boost is too old, avoid compiling the SLL features into the network
manager.
2025-02-11 20:16:32 +01:00
tomFlowee 1dc2656bef Follow ASIO porting for apps too. 2025-02-11 19:41:22 +01:00
tomFlowee 25c0ad9650 Redo the callback handling in the proxy
This makes the unit test work, specifically it ensures the callbacks are
done in the strand.
2025-02-11 19:23:14 +01:00
tomFlowee 5cae07500c Port away from deprecated ASIO methods
This makes thehub compile with BOOST_ASIO_NO_DEPRECATED defined.
2025-02-11 16:46:21 +01:00
tomFlowee 0fb5795305 Add API docs and minor fixes
Also use the more appropriate lock_guard for mutex usage.
And I noticed that in the NotificationCenter we assumed a callback would
be able to unregister itself, which requires a recursive mutex. As such
the mutex has now been elevated to be such.
2025-02-10 17:00:41 +01:00
tomFlowee bb7275466b Stop using deprecated asio io_service
This ports the io-service to the source compatible io-context
class, with the most work going to the WorkerThreads which owns
that one.
2025-02-08 19:05:26 +01:00
tomFlowee 82e698ad57 Avoid negative punishment leading to negative banscore
Negative ban scores are a bit annoying since when a user bans the node
it gives a 1000 point punishment, assuming that this will make the ban
score be above the 1000 point limit which implies banned.
2025-02-03 17:00:26 +01:00
tomFlowee 8935959c40 New release number 2025.01.1 2025-02-01 20:07:40 +01:00
tomFlowee ed93012ba6 Add extra write() helper method. 2025-01-27 20:40:24 +01:00
tomFlowee 67c69b5c56 Fix typo in comment. 2025-01-27 20:40:02 +01:00