Commit Graph

58 Commits

Author SHA1 Message Date
Czarek Nakamoto
2968e45b4c serialize cache to json 2025-09-30 09:18:05 +01:00
Czarek Nakamoto
04ec60d6df feat: enable desktop HIDAPI_DUMMY 2025-09-30 09:18:05 +01:00
Czarek Nakamoto
55b1865d38 fix: copy data in setDeviceReceivedData 2025-09-30 09:18:05 +01:00
cyan
8b3d0f2c35 feat: callback-based ledger connection (#137)
* feat: callback-based ledger connection
* int -> void use sendToLedgerDeviceCallback only when needed
* fix(ledger): fix binds, make functions static
* update ledger patch
* monero.dart: add ledger callback api
2025-09-30 09:16:58 +01:00
cyan
da6c95ff28 sdk updates (#133)
* cmake: fix minimum required version

* fix: unary_function -> __unary_function

* fix it only where it's broken

* update zano to 400

* improve ci speed, update xcode

* update dockerfile, remove zano mingw

* 16.2
2025-09-30 08:52:18 +01:00
Czarek Nakamoto
5ab515a7f7 fix cmake 4.0.0 2025-09-30 08:51:25 +01:00
cyan
991a0d0c97 [monero] update to latest v0.18 (#122)
* monero update
* update checksum
2025-02-20 15:12:58 +01:00
cyan
9d9b1f2f23 Fix ledger issue (#114)
* Fix ledger issue (https://github.com/cake-tech/cake_wallet/issues/2007)

* cleanup debug message
2025-02-11 16:11:45 +01:00
Czarek Nakamoto
127c54599c Change earliest fork height message 2025-01-29 16:34:17 +01:00
cyan
fcc2924f31 initial zano commit (#83)
* initial zano commit

* update checksum, fix zano patches on CI

* fix monero builds

* fix cmake command

* fix: devcontainer on x64
ffigen: add zano
zano: add missing free
dart: implement zano

* update boost filenames

* unboost the cmakelists

* fix zano boost issues

* added patch into proper location

* fix various build issues

* [skip ci] update tor-connect

* fix zano builds for ios

* fix apply patches and don't fail-fast

* uncomment build depends for monero

* build_single.sh fix for macos native builds

* disable qemu on arm64 builders from buildjet

* fix boost, fix missing symbols (maybe)

* fix ordering of crypto and ssl libraries

* fix wownero mingw

* fetch zano releases to release-bulk

* build things 'the zano way'

* proper cmake config

* Zano.. yeah...

* Update zano release to 2.0.1.367

* update zano patches

* update zano builds

* update zano build

* fix zano build

* move zlibstatic to the top (this shouldn't matter anyway)

* fix patch location, update tor-connect

* update ci runner

* fix zano build on the CI

* enable zano for other targets

* nvm

* don't use darwin in single release file

* Increase max password length

* build contrib/depends offline

* zano support for macos

* Update dependencies to work on multithread via rosetta2

* different way of adding .patch-applied

* Improve performance of incremental builds

* remove unnecessary patches

* update coin-control patch

* fix test

* remove contrib/depends patches in wownero

* chore: support fallback names in the download_deps util

---------

Co-authored-by: Im-Beast <franik.mateusz@gmail.com>
2025-01-04 09:02:44 +01:00
cyan
785aca81ea remove patch 2024-12-30 13:50:10 +00:00
cyan
ef1ef9c9fc Merge remote-tracking branch 'origin/master' into develop 2024-12-30 13:49:51 +00:00
cyan
58267fe5bd update coin-control patch 2024-12-30 13:49:32 +00:00
cyan
b39712e526 detailed error messages (#95) 2024-12-11 20:48:13 -05:00
cyan
65950f46f4 Fix coin control error message (#94)
* Fix coin control error message
* fix string format
2024-12-11 12:21:44 -05:00
cyan
2a38bf2961 cleanup patches (and other stuff) (#79)
* cleanup patches
* fix polyseed patch
* Fix iOS builds
* fix polyseed dependencies
* fix polyseed patch for macOS
* update ledger patch
* update wownero patches and version
* update checksums
* wip"
* update gitmodules
* update boost build script
* update build_single.sh
* vix verbosey_copy
* fix __clear_cache bug on wownero
* update randomwow
* migrate build system
* fix cross compilation issues
* some more build issue
* update polyseed
* cleanup cmakelists
* fix toolchain.cmake.in
* add ssp
* another attempt at building windows on CI
* fix package name
* migrate mirror to my own hosting
* change download mirror priority (fallback first)
* link ssp in monero module as well by using CMAKE_{C,CXX}_FLAGS
* fix android builds
* update polyseed source
* 13 -> trixie
* fix package name conflicts, update runner to sid
* update boost to 1_84_0, disable patch that's no longer needed
* switch to ubuntu:24.04
* add POLYSEED_STATIC to toolchain.cmake.in in order to properly link
* drop patches
* fixes to darwin
* link missing wowner-seed library
* a litte bit more of experiments
* build locale only on windows
* update iconv
* update definitions
* update ci builds
* update my progress
* ios fix, update depends, ci
* multithread build system
* fix android, mingw and linux build issues
* remove dependency check
* update Dockerfile to include pigz
* show a message when pigz is missing
* fix devcontainer mingw setup (missing ENV)
* update android build runner
* sailfishos dropped (you better go behave yourself and run actual linux programs)
* fiz pigz issues
* install llvm-ranlib for android
* fix iOS build issues
* fix dummy ledger patch
* fix macos and darwin
* fix macos ci
* fix macos build command
* install autoconf
* add automake
* add libtool
* macos fixes, wownero fixes, idk what else, please help me
* fix wownero iOS build
* Cleanup patches
* add try-catch into monero code
* fix error handling
* update checksums
2024-12-04 10:22:48 -05:00
cyan
c41c4dad9a fix queryWalletDevice on corrupted wallets 2024-11-27 23:30:18 +00:00
Konstantin Ullrich
d72c15f433 use usleep instead of sleep (#88) 2024-11-13 10:44:50 +01:00
cyan
1d8e0fb30b ledger changes (#41)
* ledger changes
* minor fix
* Implement monero queryWalletDevice
* update checksums
* Remove ledger_flutter_plus dependency
---------

Co-authored-by: Konstantin Ullrich <konstantinullrich12@gmail.com>
2024-10-21 12:54:58 +02:00
cyan
939040032f Fix freeze coin info (#73)
* Enable stdout/stderr logging to logcat on android
* coin control fix
2024-10-16 17:34:19 +02:00
Czarek Nakamoto
6eb571ea49 fix coin control
drop xmruw ci for the time being
2024-09-27 20:00:41 +02:00
Czarek Nakamoto
811ade0116 Fix build issues on latest ubuntu 2024-09-03 08:43:23 +02:00
cyan
d7a38301ec Monero v0.18.3.4 (#38)
* updated monero dependency
* update patches for v0.18.3.4
* update generate checksum to include version of submodule as well
2024-08-26 06:57:16 +02:00
Czarek Nakamoto
c094ed5da6 fix airgap code throwin in non-airgap wallets 2024-07-22 16:25:30 +02:00
Czarek Nakamoto
5aa1f84d09 st sendToDeviceLength while calling setDeviceSendData 2024-07-05 08:40:44 +00:00
Czarek Nakamoto
6fa459b035 fixes 2024-07-03 10:49:14 +00:00
Czarek Nakamoto
67fbe133fd possible fix for dummy device 2024-07-02 13:51:19 +00:00
Czarek Nakamoto
eaa7bdb8be fix missing ledger definition 2024-06-29 07:53:01 +00:00
Czarek Nakamoto
956c45ee44 fix ledger issues 2024-06-28 06:27:24 +00:00
Czarek Nakamoto
1829cb8feb fix android build issues 2024-06-26 17:24:09 +02:00
Czarek Nakamoto
34a3616180 add dummy device to monero codebase 2024-06-26 15:41:19 +02:00
Czarek Nakamoto
4f4cde82f7 add the patch to monero codebase 2024-06-25 10:56:47 +02:00
Czarek Nakamoto
57f19be240 return error code instead of just crashing :) 2024-06-24 14:36:29 +02:00
Czarek Nakamoto
45e26e7f64 use-proper-error-handling-in-get_seed.patch 2024-06-24 10:55:16 +02:00
Czarek Nakamoto
cd07e5d211 fix wownero build issues, rename target to proper triplet 2024-06-12 16:53:30 +02:00
Czarek Nakamoto
54ed596ec5 macos compat
android fixes
2024-05-23 13:58:42 +02:00
Czarek Nakamoto
c4b28a6a62 -DCMAKE_SYSTEM_VERSION=1
is the workaround to update to newer ndk without breaking the entire build system
2024-05-23 08:03:35 +02:00
Czarek Nakamoto
d41f4fd6d0 fix mingw, darwin builds
break mutex in ledger
2024-05-21 13:59:56 +02:00
Czarek Nakamoto
1ef940fdee fix build issues 2024-05-18 12:43:42 +02:00
Czarek Nakamoto
e2e752c365 wip ur support 2024-05-16 18:26:32 +02:00
Czarek Nakamoto
4a9142a36f fix store crash readme update wownero build fix 2024-05-11 17:32:40 +02:00
Czarek Nakamoto
7e49b4ad69 add missing functionality from for cake's polyseed implementation 2024-04-22 12:49:17 +02:00
Czarek Nakamoto
90658235f6 update polyseed commit
change POLYSEED_COIN to wownero in the fork
update wownero patches
2024-04-22 09:33:21 +02:00
Czarek Nakamoto
22f6fb4b63 fix regarding the issues raised during security audit
In the polyseed-examples repository, the `utf8_nfc` and `utf8_nfkd` functions will never return a value exceeding `POLYSEED_STR_SIZE - 1`
In your code, the utf8_norm function has variable return behavior that seems odd
In case of a normalization error, the underlying normalizer will return a negative value, at which point your function just returns POLYSEED_STR_SIZE (this is unclear)
In case the buffer isn't large enough, the normalizer will return the required buffer size but have undefined internal behavior, at which point your function returns a value exceeding POLYSEED_STR_SIZE
Otherwise, it uses the normalizer's return value (indicating the written size) to continue with re-encoding

tobtoht: Czarek Nakamoto: polyseed asserts that the return value < POLYSEED_STR_SIZE, so if normalization fails the program crashes..
> I think my idea was to have have polyseed check the return value and return an error code instead of asserting, which would in turn throw the "Unicode normalization failed" error
> I'll upstream that. In the meantime you can replace the injected function with
```cpp
    inline size_t utf8_norm(const char* str, polyseed_str norm, utf8proc_option_t options) {
      utf8proc_int32_t buffer[POLYSEED_STR_SIZE];
      utf8proc_ssize_t result;

      result = utf8proc_decompose(reinterpret_cast<const uint8_t*>(str), 0, buffer, POLYSEED_STR_SIZE, options);
      if (result < 0 || result > (POLYSEED_STR_SIZE - 1)) {
        throw std::runtime_error("Unicode normalization failed");
      }

      result = utf8proc_reencode(buffer, result, options);
      if (result < 0 || result > POLYSEED_STR_SIZE) {
        throw std::runtime_error("Unicode normalization failed");
      }

      strcpy(norm, reinterpret_cast<const char*>(buffer));
      sodium_memzero(buffer, sizeof(buffer));
      return result;
    }
```
2024-04-19 16:37:42 +02:00
Czarek Nakamoto
1b58a960da polyseed fix
tobtoht:
Since only the composed languages are broken, it could also be that canonical composition is producing weird output. Try dumping whatever seed string is being fed to polyseed_decode to hex and we should be able to tell.
Or try removing UTF8PROC_LUMP from utf8_nfc
2024-04-15 16:17:54 +02:00
Czarek Nakamoto
f5a6dbdd8e credit tobtoht 2024-04-12 11:50:32 +02:00
Czarek Nakamoto
125e64f11f update patches
update readme
2024-04-12 11:13:43 +02:00
Czarek Nakamoto
4adbc8667c update readme 2024-04-04 23:09:29 +02:00
Czarek Nakamoto
939a955cd7 if cases are difficult 2024-04-04 17:45:42 +02:00
Czarek Nakamoto
8c54a73672 fix patch number 2024-04-04 17:08:58 +02:00