Commit Graph

186 Commits

Author SHA1 Message Date
Lee Clagett
95848bd75f Fix /get_random_outs with Boost 1.87+ 2025-06-05 13:51:52 -04:00
everoddandeven
4e85e3c828 Return lws::error::not_enough_amount when received is less than requested amount (#154) 2025-04-19 14:26:49 -04:00
Lee *!* Clagett
450fc0b2cc Remove ubuntu-20.04 runner that is no longer available (#159) 2025-04-19 14:26:42 -04:00
nahuhh
e20dc2133d readme: use $HOME and ../release folder (#158) 2025-04-19 14:26:32 -04:00
Lee *!* Clagett
b1421f55ad Fixing build (upstream ZMQ CMake changes) (#155) 2025-02-24 18:24:52 -05:00
Lee *!* Clagett
b5d0844bbd Update deprecated features removed in Boost ASIO 1.87 (#153) 2025-02-24 18:24:44 -05:00
Lee *!* Clagett
29358f1323 Switch from epee http client to boost::beast. All HTTP now non-blocking. (#150) 2025-02-24 18:24:38 -05:00
Lee *!* Clagett
66b7497a34 Update boost::asio usage to conform to newer standards: (#144)
* Convert boost::asio::io_service to boost::asio::io_context
  * Convert strand.wrap(...) to boost::asio::bind_executor(strand, ...)
  * Convert strand.dispatch(...) to boost::asio::dispatch(strand, ...)
  * Convert io_context.reset() to io_context.restart()
  * Convert null_buffers() usage to socket.async_wait(...)
  * Drop usage of GET_IO_SERVICE macro from monero
  * Refactor REST server to manage resources better
2025-02-24 18:24:31 -05:00
Lee *!* Clagett
5796dad3b8 /get_random_outs is now fully async using stackful coroutines (#142) 2025-02-24 18:23:59 -05:00
Lee *!* Clagett
ed6fde7f28 Fixing shutdown request during sync-phase (#143) 2025-02-24 18:21:58 -05:00
Lee *!* Clagett
075dc5d7c2 Switch from epee http server to boost::beast http server. Min boost 1.70 (#136)
There is roughly a 7.4% increase in performance in the switch to
boost::beast. Additionally, the REST endpoints `/daemon_status`,
`/get_unspent_outs`, and `/submit_raw_tx` do not block in ZMQ calls,
allowing for better response times regardless of `monerod` status.

The REST endpoints `/login and `/get_random_outs` still need updates
to prevent blocking (`/login` is conditional on DB state).
2025-02-24 18:21:18 -05:00
Lee *!* Clagett
8080159fc8 Fix several bugs found in new server scanner code (#146) 2025-02-24 18:12:37 -05:00
Lee *!* Clagett
cd62461578 Add support for remote scanning via custom TCP (#118) 2025-02-24 18:11:17 -05:00
Lee *!* Clagett
a5d802cd9b Update Dockerfile and CMake files to build develop/master (#149) 2024-10-28 13:51:01 -04:00
Lee *!* Clagett
6af558026f Add ubuntu-24.04 and macos-14, and remove macos-12 to Github CI (#145) 2024-10-24 16:15:07 -04:00
Lee *!* Clagett
62d3425277 Fix LMDB double-reader bug with subaddresses+mempool (#140) 2024-10-15 21:49:59 -04:00
Lee *!* Clagett
48e9a52ed9 Replace deprecated result_of with decltype (#139) 2024-10-10 18:09:08 -04:00
Lee *!* Clagett
53ceb292ea Fix build with changes to boost::uuid in versions 1.86+ (#138) 2024-10-09 14:05:04 -04:00
Lee *!* Clagett
64dd5d1aa9 Add equivalent check to validate admin endpoint (#131) 2024-09-10 14:48:08 -04:00
Lee *!* Clagett
24e6c2f5f3 Pull in fixes to lmdb::database from monero PR (#130) 2024-08-09 22:06:47 -04:00
Lee *!* Clagett
14ec0907fd Update Github Actions CI - add macos-13 (#127) 2024-08-06 20:59:21 -04:00
Lee *!* Clagett
8fad87a0fe Add (non-standard) 'daemon_status' endpoint to REST API (#124) 2024-08-06 19:06:43 -04:00
Lee *!* Clagett
79564f714f Fix divide by zero in subaddresses n_maj (#114) 2024-06-26 14:14:43 -04:00
Lee *!* Clagett
57c67ae0e4 Fix ZeroMQ REQ send error after remote process crash/abort (#126) 2024-06-26 14:08:58 -04:00
Lee *!* Clagett
27b682ba69 Fix ZeroMQ invalid REQ/REP state after read timeout. (#125)
After a read timeout, the thread-local ZMQ client is expecting a read,
and not send on the REQ socket. This attempts to read+discard 1 message
before retrying the REQ send. This has proven effective at recovering
from a temporarily unavailable daemon.
2024-06-25 22:08:49 -04:00
Lee *!* Clagett
dca70598cb Fix max_element_count for signature inputs (#123) 2024-06-21 15:00:07 -04:00
Lee *!* Clagett
474fc55d69 Fix webhook bug on overlapping rescan (#121) 2024-06-12 13:54:43 -04:00
Lee *!* Clagett
6fe07fddb9 Fix scan height (db) bug on account check-ins (#120) 2024-06-06 17:03:57 -04:00
Lee *!* Clagett
e093b16447 Fix several bugs: (#119)
* lws::account height update should only go up.
  * Webhook confirmations can start after first new block
  * Webhook confirmations could face a rescan
2024-06-03 19:44:46 -04:00
Lee *!* Clagett
3f2916b0fa Add webhook deletion to admin cli (#105) 2024-06-03 19:44:34 -04:00
Lee *!* Clagett
3bf2ad061f Remove unused function (#109) 2024-04-08 14:27:28 -04:00
Lee *!* Clagett
80604e8133 New accounts are 'pushed' to worker threads (#102) 2024-04-08 14:27:20 -04:00
Lee *!* Clagett
f300bff69f Fix "leader_thread" logic (for info messages) (#110) 2024-04-08 14:27:07 -04:00
Lee *!* Clagett
38c4999555 ZMQ Pub Spends (#101) 2024-04-08 14:26:57 -04:00
Lee *!* Clagett
fe9d861dfb Add basic REST tests and fix a few bugs (#103) 2024-04-08 14:26:39 -04:00
Lee *!* Clagett
f785cad557 Fix too many open files issue with ZeroMQ (#100) 2024-04-08 14:26:29 -04:00
Lee *!* Clagett
cde050baf1 Fix pows_version in check_pow (#108) 2024-04-08 14:26:17 -04:00
Lee *!* Clagett
f242063422 Update Github CI (#106)
* Update to checkout v4
* Remove unnecessary package installs
* Remove macOS 11 from matrix (brew install issues)
2024-04-08 14:26:08 -04:00
Lee *!* Clagett
d49cc0df9a ZMQ pub blocks (#97) 2024-04-08 14:25:53 -04:00
Lee *!* Clagett
486ad3b616 Update chain rollback log message (#98) 2024-04-08 14:25:41 -04:00
Lee *!* Clagett
f66943dce1 ZMQ Hardening (#96) 2024-04-08 14:25:09 -04:00
Lee *!* Clagett
ffdd8da2a9 Make arrays optional in light_wallet_server api (#95) 2024-04-08 14:23:46 -04:00
Lee *!* Clagett
351ccaa872 Basic "chain hardening" for slightly untrusted daemons (#93) 2024-04-08 14:23:35 -04:00
Justin Berman
db66d410cd Submit review first pass (#29) 2024-04-06 14:05:39 -04:00
Lee *!* Clagett
36a8f4e003 Fix response code check for webhooks (again) (#94) 2024-04-03 21:58:04 -04:00
Lee *!* Clagett
ecbd5d2bb2 Fix Github CI (#99) 2024-04-03 21:49:56 -04:00
Lee *!* Clagett
55f6bbb386 Refuse chain rollback past a checkpoint (#92) 2024-04-03 21:49:30 -04:00
Lee *!* Clagett
d2ca5b4180 Fix warnings in unit tests (#91) 2024-04-03 21:48:48 -04:00
Lee *!* Clagett
e477c174e2 Add unit tests for chain syncing (#87) 2024-04-03 21:47:49 -04:00
Lee *!* Clagett
c400c9ef8a Fix fee retrieval for pre-ringct txes (#90) 2024-04-03 21:47:23 -04:00