Commit Graph

13024 Commits

Author SHA1 Message Date
tomFlowee acd32d9a08 Verify the message before storing. 2025-10-14 22:49:14 +02:00
tomFlowee 338a868f40 Add the PublicKey::verifyCompact() method
this matches the PrivateKey::signCompact and the
PublicKey::recoverCompact to handle all parts of compact (read:
recoverable) ECDSA type of signatures.
2025-10-14 22:38:54 +02:00
tomFlowee ca56cf1a51 Add status code on output 2025-10-14 00:03:24 +02:00
tomFlowee 60f54e2b46 Complete API docs 2025-10-14 00:03:24 +02:00
tomFlowee f41604f324 Also add the ability to download the files. 2025-10-14 00:03:24 +02:00
tomFlowee f1803554e7 Make uploaded files go to right dir
The server should keep some revisions and as such we put all revisions
together in a dir, and manage that per 'user'.
This deletes older revisions (keeping a max num of revisions per user)
and sets a symlink to the latest.
2025-10-14 00:03:24 +02:00
tomFlowee dc6fccb449 Add config file support
Reloads with SIGHUP, but we monitor the file path too, so just write is
enough.
2025-10-03 21:50:50 +02:00
tomFlowee 18e8b076a2 Start new project wallet-backup-server
A rather simple server that allows POST uploads of small files that
have to be signed and owned by a bitcoin address.

The data embedded in this file is the backup of a (bitcoin cash) wallet.
Which should be made available by the wallet if it knows the address.
2025-10-02 22:35:41 +02:00
tomFlowee 82f4ba87fb Fixes possible rare race condition on cancelling
Actions can be cancelled, this tries harder to avoid it continuing to
run.
2025-09-15 21:28:44 +02:00
tomFlowee bde4268202 Handle edge cases better in NetworkManager
Prevent a trivial acceptor DoS in the network layer by never shutting down
the listener due to a single bad inbound socket (or banned IP). Instead we
close just that socket and keep accepting.

In NetworkManagerServerBase::acceptConnection(tcp::socket&&), two paths that
previously called shutdown() (which closes the acceptor) now only close the
offending socket:
- When an inbound connection is from a banned IP.
- When an exception occurs while inspecting the just-accepted socket (e.g.,
remote_endpoint throws because the peer vanished).

Patch is from John Galt.
2025-08-15 13:42:35 +02:00
tomFlowee d8e50a348e Make results per connection
This is a patch from John Galt to fix the problem that multiple
connections could end up getting settings from one connection
applied to the reply of another.
2025-08-11 14:28:21 +02:00
tomFlowee d452f411bc move to next release 2025-08-02 19:19:10 +02:00
tomFlowee c4bb20cc90 New month 2025-08-02 16:07:53 +02:00
tomFlowee 2be8ea7a9e Remove app-only libs from the boost search 2025-08-02 00:05:57 +02:00
tomFlowee d86b31e880 Fix allowing users to export this variable 2025-08-01 23:57:51 +02:00
tomFlowee bc73c0620d Minor fixes. 2025-08-01 17:14:01 +02:00
tomFlowee 080bc2456d new month 2025.07.0 2025-07-12 16:10:24 +02:00
tomFlowee 51c24cefaf Remove unused include 2025-06-21 17:40:33 +02:00
tomFlowee 56561b4d98 Add new signal to broadcastTxData
This now also registers when a peer sends the INV.
2025-05-21 22:52:31 +02:00
tomFlowee 5b5b595584 Add direct write
This allows the compiler to avoid going via std::string
2025-05-15 16:54:26 +02:00
tomFlowee ec50e8b12d Improve GetTransaction a little
When the remote requests offsetInBlock, also return the blockheight
in the answer, as they basically come in a pair for all normal
usages.
2025-05-15 16:52:49 +02:00
tomFlowee f49b5c03f5 Update to use list for walletTxIndex
Since a core feature of NotificationListener is to combine many
notification objects into one, we now changed the app-private
wallet-transaction-id to be a list instead of a singular item.
This allows the combined set of notifications to not have lost
the actual reference to the underlying individual transactions.
2025.05.0
2025-05-07 12:43:50 +02:00
tomFlowee 409908178b Avoid a gap. 2025-05-06 15:42:52 +02:00
tomFlowee 51d77f84ad Only call onDisconnect if the connection was open 2025-05-06 12:11:25 +02:00
tomFlowee f1a975f53c Forget Id when the group is multiple items. 2025-05-06 11:58:50 +02:00
tomFlowee 32f58119a2 Add detection of being made too fat. 2025-05-06 11:58:13 +02:00
tomFlowee b9d9b9eda3 new month, new version 2025-05-01 08:21:02 +02:00
tomFlowee e1d8f700b0 Remove commented out code 2025-05-01 08:15:16 +02:00
tomFlowee 42eff37213 Remove unused count and replace it with txindex 2025-04-19 15:33:56 +02:00
tomFlowee ad1a186989 Make using bind parser easier from BufferPool 2025-04-19 15:32:58 +02:00
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