Commit graph

13914 commits

Author SHA1 Message Date
Jason Rhinelander eb4c9ca52d
Dep updates
- oxenmq requires >= .13 for the fmt header
- update oxen-logging with cmake build fix and text style support
2022-10-17 13:41:12 -03:00
Jason Rhinelander 469a6ebdb6
Bump oxen-logging to stable release; fix imported fmt/spdlog targets
The tagged 1.0.0 release includes a fix for the fmt::fmt/spdlog::spdlog
targets not being transitively available.  (It does require a cmake
version bump to 3.13, though, to make it work).
2022-10-17 13:41:12 -03:00
Sean Darcy d7992b5940
Logging Refactor
This replaces the current epee logging system with our oxen::log
library. It replaces the easylogging library with spdlog, removes the
macros and replaces with functions and standardises how we call the
logs.
2022-10-17 13:41:10 -03:00
Jason Rhinelander 0f85299e1f
Merge pull request #1601 from darcys22/virtual-destructor-wallet3
create virtual destructor on wallet class and define destructor on child
2022-10-17 13:39:37 -03:00
Jason Rhinelander 4c68111c9b
Merge pull request #1610 from darcys22/exception-throw-dev
change naked throws to throw exceptions
2022-10-17 13:39:19 -03:00
Jason Rhinelander 7427fb051b
Merge pull request #1607 from jagerman/aux-ping-errors-dev
Allow lokinet/ss to send an error ping
2022-10-17 13:39:03 -03:00
Jason Rhinelander 867b87dc42
Merge pull request #1604 from jagerman/sn-self-info-dev
Put current info for ourself in service node list
2022-10-17 13:38:41 -03:00
Sean Darcy 31b45ce96c
change naked throws to throw exceptions 2022-10-17 13:37:53 -03:00
Jason Rhinelander 467f8ec5ce
Merge pull request #1609 from jagerman/zlib-bump
zlib security update
2022-10-17 13:36:24 -03:00
Sean Darcy a69e6cfa3c change naked throws to throw exceptions 2022-10-17 07:28:34 +11:00
Sean Darcy c33b024037 create virtual destructor on wallet class and define destructor on child 2022-10-17 07:13:43 +11:00
Jason Rhinelander e724a9c086
zlib security update 2022-10-14 22:27:57 -03:00
Jason Rhinelander 46fd75fa90 Allow lokinet/ss to send an error ping
This lets lokinet or SS signal to oxend that something is known to be
wrong, and so oxend should not send a proof so that, hopefully, the
problem gets noticed and fixed.
2022-10-14 21:42:40 -03:00
Jason Rhinelander 06e3713dfc
Put current info for ourself in service node list
Currently we're putting the last-uptime-received data in the service
node list info, even when we have more updated info that hasn't yet been
accepted by the network.

This causes problems for lokinet, in particular, because it ignores any
SNs in the list without ed25519 pubkeys, including itself, which can
result in lokinet thinking it is deregistered for a while after the SN
becomes registered.

This updates `get_service_nodes` to always include current info (rather
than latest proof info) for itself when querying a service node.
2022-10-14 14:12:49 -03:00
Jason Rhinelander e1c3d95dad
Fix get_accrued_batched_earnings being non-public 2022-09-22 12:48:21 -03:00
Sean 3fd153cd02
Merge pull request #1596 from darcys22/fix-uncaught-exception
tests rely on false returned here
2022-09-20 11:16:08 +10:00
Sean Darcy 6e6f3bf5b4 tests rely on false returned here 2022-09-20 08:52:49 +10:00
Sean 52b9d38706
Merge pull request #1593 from darcys22/tests-merge-issues
start of compiler errors
2022-09-13 10:56:58 +10:00
Thomas Winget 4b56bf4e4b all tests building now, not all passing 2022-09-07 19:34:52 -04:00
Sean Darcy 230a8185aa start of compiler errors 2022-09-02 15:38:21 -04:00
Jason Rhinelander d1d580af93
Merge pull request #1594 from jagerman/no-automine
Fix automining by default
2022-09-02 15:24:31 -03:00
Jason Rhinelander 1250a11452
Fix automining by default
wallet3 had changes to miner.cpp frankenstein merge-resolved, which was
resulting in various fields in miner.h being uninitialized.  This fixes
the conflict (and fixes the auto-mine-at-startup from the wallet3 branch
merge).

This reapplies all of the changes from
b9755af4b4 to fix it.
2022-09-02 15:16:33 -03:00
Jason Rhinelander 8dad0a1529
Change dev version to 11.0.0 2022-09-01 18:57:23 -03:00
Jason Rhinelander 2bd874e0b5
Merge remote-tracking branch 'tewinget/wallet3' into dev 2022-09-01 18:56:14 -03:00
Jason Rhinelander c4397d200d
Merge pull request #1592 from jagerman/static-dep-updates
Dependency/submodule updates
2022-08-31 15:01:52 -03:00
Jason Rhinelander d0df2b9684
downgrade boost
1.80.0 breaks hard in an android-sdk build
2022-08-31 14:18:44 -03:00
Jason Rhinelander 39a2cdcf74
Add kitware cmake to bionic build 2022-08-31 14:18:44 -03:00
Jason Rhinelander 600fb3aa96
Dependency/submodule updates 2022-08-31 12:46:53 -03:00
Jason Rhinelander f1ee71a1d4
Merge pull request #1591 from darcys22/atomic-sn-reg-cmd
Atomic values for the get_service_node_registration_cmd endpoint
2022-08-30 23:25:32 -03:00
Jason Rhinelander a2a59ee341
Merge pull request #1589 from jagerman/oxen10-2
Oxen 10.2 version bumps
2022-08-30 21:11:25 -03:00
Sean Darcy 872210608b use new basis points function in rpc_command_executor 2022-08-31 10:02:46 +10:00
Jason Rhinelander 3662cb21fb Remove pre-HF19 registration commands from oxend 2022-08-31 10:01:21 +10:00
Thomas Winget ebbc0e5644 wallet3 changes and demo fixup
demo is vaguely presentable now.  syncing and basic tx send work.
change output was being sent to void (change address was unimplemented)
but that works now as well.
2022-08-30 19:58:51 -04:00
Sean Darcy a9c83bd0b2 Atomic values for the get_service_node_registration_cmd endpoint 2022-08-31 09:58:15 +10:00
Jason Rhinelander c3a00f57a2
Oxen 10.2 version bumps & mandatory upgrade date
- 10.2.0 oxend version
- keep lokinet at 0.9.9
- require storage server 2.4.0
- schedule 10.2.0 mandatory date as 14 September 00:00 UTC (10am in
  Australia Eastern Time; 8pm (on the 13th) in US Eastern time.
2022-08-30 19:06:58 -03:00
Thomas Winget e3726f520d wallet3 demo code and syncing bugfix 2022-08-25 17:48:08 -04:00
Jason Rhinelander 2f1e2557ff
Fix pulse not avoiding small contributor unlocks 2022-08-25 11:24:26 -03:00
Thomas Winget d4b6f967fd Merge most recent dev and wallet3 branches
Fixes a few merge conflicts, several compilation errors, and
some behavioral incorrectness.  Still a few bugs with wallet3
but as far as I can tell wallet2 and daemon etc. should be working
correctly.
2022-08-22 19:25:49 -04:00
Jason Rhinelander d955607306
Merge pull request #1588 from darcys22/create-hwdev-file-by-default-for-hw-devices
Create HWDEV file by default for hardware wallets
2022-08-22 17:27:11 -03:00
Jason Rhinelander 5f338c2492
Merge pull request #1585 from jagerman/fix-block-notify-race
Fix block notify race condition, and drain some of the swamp
2022-08-22 17:25:21 -03:00
Jason Rhinelander e730b2fcbb
Merge pull request #1583 from darcys22/small-contributor-atomic-amount-fix
fix for small contributor
2022-08-22 17:24:04 -03:00
Jason Rhinelander 45f302506e
Merge pull request #1581 from jagerman/diet-oaes
Slim down oaes_lib
2022-08-22 17:22:20 -03:00
Sean Darcy 9ae474eb76 Create HWDEV file by default for hardware wallets
This modifies the current behaviour from only creating the hwdev.txt
file, when a new wallet is created if content is specified as an
argument to always creating the file. This file is used by the GUI
wallet to detect if the device is a hardware device and the CLI wallet
behaviour is kept the same to keep behavious consistent between CLI and
RPC wallets.
2022-08-19 15:28:17 +10:00
Sean Darcy d6b8b2d036 fix for small contributor unlocks
The checking if the service node contributers are small miscalculated
atomic oxen. This brings in the correct figure for HF20 and in the
interim brings measures into the wallet and blink to prevent small
contributors from being to unlock in HF19.
2022-08-11 15:09:04 +10:00
Sean Darcy 415098f9e9 Wallet RPC calls for Get Balance, Get Address and Export Keys 2022-08-01 17:21:25 -04:00
Sean Darcy cf6c3724cb Config Struct for wallet3
This brings a simple config structure into the wallet3 that all of the
wallet submodules should be able to access. The first module included in
this PR is the daemon comms module which has its own substruct on the
config and the submodule is now constructed with a reference to the
config.
2022-08-01 17:21:01 -04:00
Sean Darcy 90433d0b71 rpc for get_version 2022-08-01 17:16:29 -04:00
Thomas Winget 9a7f7d6704 wallet3 send/receive works, more or less 2022-08-01 17:12:24 -04:00
Jason Rhinelander 0bc3c2f880
Rewrite trash tools::Notify
This was nasty.

Remove --block-rate-notify entirely; it's nearly useless on Oxen.

block and reorg notify remain, but now use a post-block hook rather than
shoving toxic Notify crap into cryptonote_core headers.
2022-07-27 17:25:48 -03:00
Jason Rhinelander edbce1bf8c
Add and use post-block-added hooks; fix block notify race
Add hooks that are called *after* a block is successfully added to the
blockchain.

This also fixes a race condition with OMQ notify.block subscriptions:
because the notification was firing during (instead of after) block
addition, the lokinet/storage server receiving the notify would race to
fetch the block info, but that request could happen *before* the block
addition is finished, ending up with lokinet/SS sometimes getting a
stale block.
2022-07-27 17:25:12 -03:00