jwinterm
97877eda27
Port monero-lws to wownero-lws
...
Adapts monero-lws for Wownero cryptocurrency:
- Rename all monero-lws-* binaries to wownero-lws-*
- Update submodule to point to official Wownero repo
- Use Wownero default ports (RPC: 34568, ZMQ: 34569)
- Update data directory to ~/.wownero/light_wallet_server
- Adapt next_difficulty() calls for Wownero API signature
Key technical changes for Wownero compatibility:
- BulletproofPlus (RCTTypeBulletproofPlus, type 8) commitment verification:
Wownero stores BP+ commitments in 'divided by 8' form. Must call
rct::scalarmult8() on outPk commitment before comparing with computed
commitment (mask*G + amount*H). This is essential for amount decryption.
- Pass rct_type to decode_amount() for proper commitment handling
- Handle Wownero's ZMQ JSON format for ecdhTuple (32-byte mask/amount fields)
No fork of Wownero is required - uses official codeberg.org/wownero/wownero.
2026-01-04 20:04:42 -05:00
Lee *!* Clagett
6c0b957e95
lookahead optimization for users that disabled subaddresses ( #220 )
2025-12-19 18:53:32 -05:00
Lee *!* Clagett
332c969c74
Fix divide by zero in db code ( #219 )
2025-12-18 10:20:02 -05:00
Lee *!* Clagett
770e3b0ca4
A few odds and ends after lookahead patch ( #215 )
2025-12-18 10:19:53 -05:00
Lee *!* Clagett
16111cae2c
Add support for subaddress lookahead ( #195 )
2025-12-18 10:19:43 -05:00
everoddandeven
e8b889e95f
Fix missing regtest option ( #214 )
2025-12-18 10:19:07 -05:00
Lee *!* Clagett
506c3a871d
Print version on monero-lws-daemon startup ( #213 )
2025-12-02 20:28:45 -05:00
Lee *!* Clagett
24bdbb43d4
Fix usage of mdb_cursor_put with invalid memory references ( #210 )
2025-12-01 09:00:50 -05:00
Lee *!* Clagett
8cf0976557
Add /get_version, based on openmonero with a few extra additions ( #209 )
2025-11-26 19:04:19 -05:00
Lee *!* Clagett
c65a1f488b
Don't log MDB_NOTFOUND with subaddress lookup ( #208 )
2025-11-23 17:33:37 -05:00
Lee *!* Clagett
320cf03b2b
Improve LMDB error logging ( #205 )
2025-11-19 11:00:58 -05:00
William Swanson
e08480cbc1
Logging Improvements ( #198 )
...
* Log ZMQ SUB address at startup
* Log current thread number and block height
* fixup! Log current thread number and block height
2025-11-14 13:00:43 -05:00
Lee *!* Clagett
0caec18f84
Fix locked_funds computation ( #200 )
2025-11-14 12:45:22 -05:00
Lee *!* Clagett
26a882965f
Hopefully fix issue with db corruption (bad data size) ( #199 )
2025-11-13 11:14:33 -05:00
Lee *!* Clagett
151d3092a7
Add from_height to /import_wallet_request ( #194 )
2025-11-04 20:09:48 -05:00
everoddandeven
01374ec620
Add regtest option ( #193 )
...
Disable checkpoints check on storage::sync_chain when regtest mode is enabled
2025-11-04 20:09:22 -05:00
Lee *!* Clagett
73fb2f7794
Update limits for get_random_outs ( #190 )
2025-10-29 19:46:41 -04:00
Lee *!* Clagett
3d12cc1c06
Add GH workflow for docker build and push ( #186 )
2025-10-17 14:53:06 -04:00
Lee *!* Clagett
8955547536
Reconnect RMQ on publish failure ( #181 )
2025-10-15 12:37:10 -04:00
Lee *!* Clagett
a11482c123
Fix ringct+coinbase output tracking, and update rescan rollbacks ( #178 )
2025-09-04 23:17:20 -04:00
Lee *!* Clagett
44278d0d11
Restarting on reorg is broken; fix asio::io_context::restart calls ( #177 )
2025-09-02 11:09:13 -04:00
Lee *!* Clagett
ecf30672fb
Fix import_wallet_response status ( #175 )
2025-07-24 14:40:46 -04:00
Lee *!* Clagett
e593fd5fb2
Add support for dynamic fees over ZMQ ( #166 )
...
* Add support for dynamic fees over ZMQ
* Fix build after upstream change
* Fix unit tests
2025-07-20 13:19:50 -04:00
Lee *!* Clagett
448c6740f4
Set longer timeouts for requests after login ( #171 )
2025-06-22 19:51:00 -04:00
Lee *!* Clagett
cf407344e1
Fix /submit_raw_tx_response status (currently outputs 'bool') ( #162 )
2025-06-07 18:25:41 -04:00
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
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
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
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