summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-04-25-fPICv0.18.3.3-RC39Czarek Nakamoto
2024-04-25fix build issues with wownero-seedv0.18.3.3-RC38Czarek Nakamoto
2024-04-25update header fileCzarek Nakamoto
2024-04-25fix wownero build in contrib/depends systemv0.18.3.3-RC37Czarek Nakamoto
2024-04-25wownero-seed supportCzarek Nakamoto
2024-04-23export symbols on macosv0.18.3.3-RC36Czarek Nakamoto
2024-04-22minimal cmake exampleCzarek Nakamoto
2024-04-22yet another difference in wow...v0.18.3.3-RC35Czarek Nakamoto
2024-04-22sync changes to wownero. Wow.v0.18.3.3-RC34Czarek Nakamoto
2024-04-22add missing functionality from for cake's polyseed implementationv0.18.3.3-RC33Czarek Nakamoto
2024-04-22update polyseed commitv0.18.3.3-RC32Czarek Nakamoto
change POLYSEED_COIN to wownero in the fork update wownero patches
2024-04-20fix memory allocation issuev0.18.3.3-RC31Czarek Nakamoto
2024-04-20fix signaturev0.18.3.3-RC30Czarek Nakamoto
2024-04-19unsigned long longv0.18.3.3-RC29Czarek Nakamoto
2024-04-19iOS build: do not fail due to mv: Directory not emptysneurlax
2024-04-19fix regarding the issues raised during security auditCzarek Nakamoto
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-19Wallet::reconnectDevice implementationCzarek Nakamoto
2024-04-19legacy code removal + deprecation noticeCzarek Nakamoto
can't remove the runTHread code just yet as xmruw depends on it, and I don't have enough hours in the day to fix that at the moment.
2024-04-19make vectorToString behave as it should, without appending separators when ↵Czarek Nakamoto
it isn't required
2024-04-17add multi dest tx supportv0.18.3.3-RC28Czarek Nakamoto
2024-04-15WIP: cake stuffv0.18.3.3-RC27Czarek Nakamoto
2024-04-15polyseed fixv0.18.3.3-RC26Czarek Nakamoto
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-12Merge pull request #2 from cypherstack/scriptsv0.18.3.3-RC25cyan
fix openssl script re: previous commit
2024-04-12fix openssl script re: previous commitsneurlax
forgot to remove this one line. Interestingly, Windows built fine with it, whereas iOS threw.
2024-04-12do not fail if repo already existssneurlax
build_single.sh will fail on Windows (WSL2) due to `git clone` if we already did a `git submodule update --init --recursive`
2024-04-12Merge pull request #1 from cypherstack/scriptscyan
Windows fix: do not fail on `git clone` if repo already exists
2024-04-12credit tobtohtCzarek Nakamoto
2024-04-12update patchesv0.18.3.3-RC23Czarek Nakamoto
update readme
2024-04-11Revert "add polyseed language options"Czarek Nakamoto
This reverts commit a032a20221579d5fb9445b370eec1b6bd4ff653b.
2024-04-11add polyseed language optionsv0.18.3.3-RC22Czarek Nakamoto
2024-04-05add comments explaining what does the code do?Czarek Nakamoto
2024-04-04update readmeCzarek Nakamoto
2024-04-04~~fix~~ workaround wownero randomwow remoteCzarek Nakamoto
2024-04-04if cases are difficultCzarek Nakamoto
2024-04-04fix patch numberCzarek Nakamoto
2024-04-04fix android (i hope)Czarek Nakamoto
2024-04-03fix ios build script (how did it even work before!?!?!?)Czarek Nakamoto
2024-04-02randomx bumpv0.18.3.3-RC17Czarek Nakamoto
2024-04-02actually fix and not workaround the iOS issue.v0.18.3.3-RC16Czarek Nakamoto
2024-04-02update randomx commitCzarek Nakamoto
2024-04-02feat: iOS buildsv0.18.3.3-RC15Czarek Nakamoto
includes patches to - randomx: https://github.com/tevador/RandomX/pull/294 - randomwow: https://git.wownero.com/wownero/RandomWOW/pulls/2
2024-04-02add wownero patch so it won't crashCzarek Nakamoto
2024-04-02monero: fix make debug-testsCzarek Nakamoto
2024-04-02build debug by defaultCzarek Nakamoto
2024-04-01un-conflict exported symbols on macosCzarek Nakamoto
2024-04-01feat: macos host buildsCzarek Nakamoto
2024-04-01update readmeCzarek Nakamoto
2024-04-01fix: wownero and monero wallets in the same processv0.18.3.3-RC12Czarek Nakamoto
ci: cache ~/.ccache directory
2024-03-31feat: split MONERO and WOWNERO prefixed functionsv0.18.3.3-RC11Czarek Nakamoto
So basically: when we open the .so file, we define some symbols, and it appears that if we load something else, with the same symbols, under the same thread we cause some funky behaviour - like calling function a wownero function MONERO_Wallet_address() resulting in a monero address being generated. Needless to say, this is undesired, and a blocker for https://github.com/cypherstack/stack_wallet/pull/818 I'm afraid that this may not solve all of our issues (but will solve some significant roadblocks), because of the "genesis block" issue, as output of nm -gDC release/wownero/x86_64-linux-gnu_libwallet2_api_c.so | grep genesis indicate that these functions may share *something* in common across both WOW and XMR libraries. In a case in which this fix won't be sufficient, I think that the way forward would be to close the dynamic libraries, but before we do that I want to check if maybe there is a change to run multiple wallets at once.
2024-03-28macos supportCzarek Nakamoto