forked from such-gitea/wownero-lws
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.
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
# Copyright (c) 2018-2020, The Monero Project
|
||||
# Copyright (c) 2024-2025, The Wownero Project
|
||||
#
|
||||
# All rights reserved.
|
||||
#
|
||||
@@ -65,25 +66,24 @@ add_subdirectory(rpc)
|
||||
add_subdirectory(util)
|
||||
|
||||
# For both the server and admin utility.
|
||||
set(monero-lws-common_sources config.cpp error.cpp)
|
||||
set(monero-lws-common_headers config.h error.h fwd.h)
|
||||
set(wownero-lws-common_sources config.cpp error.cpp)
|
||||
set(wownero-lws-common_headers config.h error.h fwd.h)
|
||||
|
||||
add_library(monero-lws-common ${monero-lws-common_sources} ${monero-lws-common_headers})
|
||||
target_link_libraries(monero-lws-common monero::libraries)
|
||||
add_library(wownero-lws-common ${wownero-lws-common_sources} ${wownero-lws-common_headers})
|
||||
target_link_libraries(wownero-lws-common wownero::libraries)
|
||||
|
||||
add_library(monero-lws-daemon-common rest_server.cpp scanner.cpp)
|
||||
target_include_directories(monero-lws-daemon-common PUBLIC ${ZMQ_INCLUDE_PATH})
|
||||
target_link_libraries(monero-lws-daemon-common
|
||||
add_library(wownero-lws-daemon-common rest_server.cpp scanner.cpp)
|
||||
target_include_directories(wownero-lws-daemon-common PUBLIC ${ZMQ_INCLUDE_PATH})
|
||||
target_link_libraries(wownero-lws-daemon-common
|
||||
PUBLIC
|
||||
monero::libraries
|
||||
${MONERO_lmdb}
|
||||
monero-lws-common
|
||||
monero-lws-db
|
||||
monero-lws-net
|
||||
monero-lws-rpc
|
||||
monero-lws-rpc-scanner
|
||||
monero-lws-wire-json
|
||||
monero-lws-util
|
||||
${WOWNERO_lmdb}
|
||||
wownero-lws-common
|
||||
wownero-lws-db
|
||||
wownero-lws-net
|
||||
wownero-lws-rpc
|
||||
wownero-lws-rpc-scanner
|
||||
wownero-lws-wire-json
|
||||
wownero-lws-util
|
||||
${Boost_CHRONO_LIBRARY}
|
||||
${Boost_COROUTINE_LIBRARY}
|
||||
${Boost_CONTEXT_LIBRARY}
|
||||
@@ -95,42 +95,43 @@ target_link_libraries(monero-lws-daemon-common
|
||||
${ZMQ_LIB}
|
||||
${SODIUM_LIBRARY}
|
||||
Threads::Threads
|
||||
wownero::libraries
|
||||
)
|
||||
|
||||
add_executable(monero-lws-daemon server_main.cpp)
|
||||
target_link_libraries(monero-lws-daemon
|
||||
add_executable(wownero-lws-daemon server_main.cpp)
|
||||
target_link_libraries(wownero-lws-daemon
|
||||
PRIVATE
|
||||
monero::libraries
|
||||
monero-lws-daemon-common
|
||||
monero-lws-rpc-scanner
|
||||
wownero-lws-daemon-common
|
||||
wownero-lws-rpc-scanner
|
||||
${Boost_PROGRAM_OPTIONS_LIBRARY}
|
||||
${Boost_FILESYSTEM_LIBRARY}
|
||||
wownero::libraries
|
||||
)
|
||||
|
||||
add_executable(monero-lws-admin admin_main.cpp)
|
||||
target_link_libraries(monero-lws-admin
|
||||
add_executable(wownero-lws-admin admin_main.cpp)
|
||||
target_link_libraries(wownero-lws-admin
|
||||
PRIVATE
|
||||
monero::libraries
|
||||
monero-lws-common
|
||||
monero-lws-db
|
||||
monero-lws-rpc
|
||||
monero-lws-wire-json
|
||||
wownero-lws-common
|
||||
wownero-lws-db
|
||||
wownero-lws-rpc
|
||||
wownero-lws-wire-json
|
||||
${Boost_PROGRAM_OPTIONS_LIBRARY}
|
||||
Threads::Threads
|
||||
wownero::libraries
|
||||
)
|
||||
|
||||
add_executable(monero-lws-client client_main.cpp)
|
||||
target_link_libraries(monero-lws-client
|
||||
add_executable(wownero-lws-client client_main.cpp)
|
||||
target_link_libraries(wownero-lws-client
|
||||
PRIVATE
|
||||
monero::libraries
|
||||
monero-lws-common
|
||||
monero-lws-daemon-common
|
||||
monero-lws-rpc
|
||||
monero-lws-rpc-scanner
|
||||
wownero-lws-common
|
||||
wownero-lws-daemon-common
|
||||
wownero-lws-rpc
|
||||
wownero-lws-rpc-scanner
|
||||
${Boost_PROGRAM_OPTIONS_LIBRARY}
|
||||
Threads::Threads
|
||||
wownero::libraries
|
||||
)
|
||||
|
||||
install(TARGETS monero-lws-daemon DESTINATION bin)
|
||||
install(TARGETS monero-lws-admin DESTINATION bin)
|
||||
install(TARGETS monero-lws-client DESTINATION bin)
|
||||
install(TARGETS wownero-lws-daemon DESTINATION bin)
|
||||
install(TARGETS wownero-lws-admin DESTINATION bin)
|
||||
install(TARGETS wownero-lws-client DESTINATION bin)
|
||||
|
||||
Reference in New Issue
Block a user