aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | Merge pull request #9159luigi11112024-02-241-1/+1
|\ \ | | | | | | | | | fbd0b19 remove ARCH=x86-64 from release-static (woodser)
| * | remove ARCH=x86-64 from release-staticwoodser2024-02-101-1/+1
| |/
* | Merge pull request #9156luigi11112024-02-241-0/+4
|\ \ | | | | | | | | | 052df1b Zero initialize rctSigBase elements (Lee *!* Clagett)
| * | Zero initialize rctSigBase elementsLee *!* Clagett2024-02-061-0/+4
| |/
* | Merge pull request #9145luigi11112024-02-241-0/+1
|\ \ | | | | | | | | | f5b8634 Add <cstdint> to aligned test (Lee *!* Clagett)
| * | Add <cstdint> to aligned testLee *!* Clagett2024-01-291-0/+1
| |/
* | Merge pull request #9142luigi11112024-02-245-85/+52
|\ \ | | | | | | | | | 98ee46f Disable/fix ports with I2P (Lee Clagett)
| * | Disable/fix ports with I2PLee Clagett2024-01-305-85/+52
| |/
* | Merge pull request #9130luigi11112024-02-241-16/+43
|\ \ | | | | | | | | | dfb990e wallet: mitigate statistical dependence for decoy selection within rings (jeffro256)
| * | wallet: mitigate statistical dependence for decoy selection within ringsjeffro2562024-01-191-16/+43
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since we are required to check for uniqueness of decoy picks within any given ring, and since some decoy picks may fail due to unlock time or malformed EC points, the wallet2 decoy selection code was building up a larger than needed *unique* set of decoys for each ring according to a certain distribution *without replacement*. After filtering out the outputs that it couldn't use, it chooses from the remaining decoys uniformly random *without replacement*. The problem with this is that the picks later in the picking process are not independent from the picks earlier in the picking process, and the later picks do not follow the intended decoy distribution as closely as the earlier picks. To understand this intuitively, imagine that you have 1023 marbles. You label 512 marbles with the letter A, label 256 with the letter B, so on and so forth, finally labelling one marble with the letter J. You put them all into a bag, shake it well, and pick 8 marbles from the bag, but everytime you pick a marble of a certain letter, you remove all the other marbles from that bag with the same letter. That very first pick, the odds of picking a certain marble are exactly how you would expect: you are twice as likely to pick A as you are B, twice as likely to pick B as you are C, etc. However, on the second pick, the odds of getting the first pick are 0%, and the chances for everything else is higher. As you go down the line, your picked marbles will have letters that are increasingly more unlikely to pick if you hadn't remove the other marbles. In other words, the distribution of the later marbles will be more "skewed" in comparison to your original distribution of marbles. In Monero's decoy selection, this same statistical effect applies. It is not as dramatic since the distribution is not so steep, and we have more unique values to choose from, but the effect *is* measureable. Because of the protocol rules, we cannot have duplicate ring members, so unless that restriction is removed, we will never have perfectly independent picking. However, since the earlier picks are less affected by this statistical effect, the workaround that this commit offers is to store the order that the outputs were picked and commit to this order after fetching output information over RPC.
* | Merge pull request #9008luigi11112024-02-242-1/+5
|\ \ | | | | | | | | | | | | 9a89e2d wallet2: call on_reorg callback in handle_reorg (j-berman) 1df5630 wallet2: add on_reorg callback (Crypto City)
| * | wallet2: call on_reorg callback in handle_reorgj-berman2023-09-271-4/+4
| | |
| * | wallet2: add on_reorg callbackCrypto City2023-09-272-0/+4
| | |
* | | Merge pull request #8945luigi11112024-02-2410-43/+405
|\ \ \ | |_|/ |/| | | | | 51d7a69 wallet: feature: transfer amount with fee included (jeffro256)
| * | wallet: feature: transfer amount with fee includedjeffro2562024-02-2010-43/+405
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To transfer ~5 XMR to an address such that your balance drops by exactly 5 XMR, provide a `subtractfeefrom` flag to the `transfer` command. For example: transfer 76bDHojqFYiFCCYYtzTveJ8oFtmpNp3X1TgV2oKP7rHmZyFK1RvyE4r8vsJzf7SyNohMnbKT9wbcD3XUTgsZLX8LU5JBCfm 5 subtractfeefrom=all If my walet balance was exactly 30 XMR before this transaction, it will be exactly 25 XMR afterwards and the destination address will receive slightly less than 5 XMR. You can manually select which destinations fund the transaction fee and which ones do not by providing the destination index. For example: transfer 75sr8AAr... 3 74M7W4eg... 4 7AbWqDZ6... 5 subtractfeefrom=0,2 This will drop your balance by exactly 12 XMR including fees and will spread the fee cost proportionally (3:5 ratio) over destinations with addresses `75sr8AAr...` and `7AbWqDZ6...`, respectively. Disclaimer: This feature was paid for by @LocalMonero.
* | Merge pull request #9080luigi11112024-01-182-0/+208
|\ \ | | | | | | | | | 47d8899 Fix missing checks for IsObject in ZMQ jsonrpc reading (Lee Clagett)
| * | Fix missing checks for IsObject in ZMQ jsonrpc readingLee Clagett2023-11-282-0/+208
| | |
* | | Merge pull request #9053luigi11112024-01-181-6/+15
|\ \ \ | | | | | | | | | | | | fe746dc Fix EAGAIN bug in ZMQ-RPC/ZMQ-PUB (Lee *!* Clagett)
| * | | Fix EAGAIN bug in ZMQ-RPC/ZMQ-PUBLee *!* Clagett2023-11-041-6/+15
| | | |
* | | | Merge pull request #9051luigi11112023-11-061-0/+26
|\ \ \ \ | | | | | | | | | | | | | | | fe47806 wallet: fix multisig key memory leak (jeffro256)
| * | | | wallet: fix multisig key memory leakjeffro2562023-11-031-0/+26
| |/ / / | | | | | | | | | | | | | | | | Multisig keys per-transfer were being wiped, but not erased, which lead to a ginormous quadratic bloat the more transfers and exports you performed with the wallet.
* | | | Merge pull request #9047luigi11112023-11-062-0/+18
|\ \ \ \ | | | | | | | | | | | | | | | 6c38c21 heed NO_COLOR environment variable (moneromooo-monero)
| * | | | heed NO_COLOR environment variablemoneromooo-monero2023-10-312-0/+18
| |/ / /
* | | | Merge pull request #9046luigi11112023-11-061-0/+4
|\ \ \ \ | | | | | | | | | | | | | | | 5435202 readline_buffer: disable bracketed paste escape sequences (Jeffrey Ryan)
| * | | | readline_buffer: disable bracketed paste escape sequencesJeffrey Ryan2023-10-311-0/+4
| |/ / /
* | | | Merge pull request #9043luigi11112023-11-061-4/+13
|\ \ \ \ | | | | | | | | | | | | | | | e7d51e5 JH hash compiler workarounds (SChernykh)
| * | | | JH hash compiler workaroundsSChernykh2023-11-041-4/+13
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | - Fixed uninitialized `state->x` warning - Fixed broken code with `-O3` or `-Ofast` The old code is known to break GCC 10.1 and GCC 11.4
* | | | Merge pull request #9039luigi11112023-11-061-3/+6
|\ \ \ \ | | | | | | | | | | | | | | | 0f75585 multisig: better errors for small malformed kex msgs (jeffro256)
| * | | | multisig: better errors for small malformed kex msgsjeffro2562023-10-251-3/+6
| | | | | | | | | | | | | | | | | | | | Resolves https://github.com/monero-project/monero/issues/8493
* | | | | Merge pull request #9036luigi11112023-11-061-3/+9
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | eae62a0 ringct: make ctSigBase serialization follow strict aliasing rule (jeffro256)
| * | | | | ringct: make `rctSigBase` serialization follow strict aliasing rulejeffro2562023-10-241-3/+9
| |/ / / / | | | | | | | | | | | | | | | | | | | | Accessing an object of type `char` thru an lvalue of type `crypto::hash8` is undefined behavior. https://developers.redhat.com/blog/2020/06/03/the-joys-and-perils-of-aliasing-in-c-and-c-part-2
* | | | | Merge pull request #9034luigi11112023-11-061-0/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | 14ae812 cryptonote_config: include cstdint (jeffro256)
| * | | | | cryptonote_config: include cstdintjeffro2562023-10-231-0/+1
| |/ / / / | | | | | | | | | | | | | | | Header was using `uint64_t` without including `<cstdint>` which caused some issues downstream for windows builds
* | | | | Merge pull request #9029luigi11112023-11-061-2/+9
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | 5b0c274 gitian: add riscv64 support (selsta)
| * | | | gitian: add riscv64 supportselsta2023-10-211-2/+9
| |/ / /
* | | | Merge pull request #9027luigi11112023-10-252-2/+2
|\ \ \ \ | | | | | | | | | | | | | | | 09a88cc Update RandomX to 1.2.1 (tevador)
| * | | | Update RandomX to 1.2.1tevador2023-10-202-2/+2
| |/ / /
* | | | Merge pull request #9022luigi11112023-10-251-3/+3
|\ \ \ \ | | | | | | | | | | | | | | | bdebf68 wallet2: ensure transfers and sweeps use same fee calc logic (j-berman)
| * | | | wallet2: ensure transfers and sweeps use same fee calc logicj-berman2023-10-161-3/+3
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | Ensures both transfers and sweeps use a fee that's calculated from the tx's weight. Using different logic could theoretically enable distinguishability between the two types of txs. We don't want that.
* | | | Merge pull request #9020luigi11112023-10-251-16/+26
|\ \ \ \ | | | | | | | | | | | | | | | e0b2123 http_client: reduce number of packets sent for small bodies (jeffro256)
| * | | | http_client: reduce number of packets sent for small bodiesjeffro2562023-10-151-16/+26
| |/ / /
* | | | Merge pull request #8992luigi11112023-10-252-8/+8
|\ \ \ \ | |/ / / |/| | | | | | | 0c04018 depends: openssl: update to 3.0.11 (tobtoht)
| * | | depends: openssl: update to 3.0.11tobtoht2023-09-192-8/+8
| |/ /
* | | Merge pull request #9014v0.18.3.1luigi11112023-10-022-33/+37
|\ \ \ | | | | | | | | | | | | | | | | 69de381 add a test for the long term weight cache (Boog900) 810f6a6 Fix: long term block weight cache The long term block weight cache was doing a wrong calculation when adding a new block to the cache. (Boog900)
| * | | add a test for the long term weight cacheBoog9002023-10-021-0/+35
| | | |
| * | | Fix: long term block weight cacheBoog9002023-10-021-33/+2
| | | | | | | | | | | | | | | | | | | | The long term block weight cache was doing a wrong calculation when adding a new block to the cache.
* | | | Merge pull request #9012luigi11112023-10-027-9/+10
|\ \ \ \ | | | | | | | | | | | | | | | fbcd8da build: prepare v0.18.3.1 (selsta)
| * | | | build: prepare v0.18.3.1selsta2023-10-027-9/+10
| |/ / /
* | | | Merge pull request #9011luigi11112023-10-023-3/+3
|\ \ \ \ | |/ / / |/| | | | | | | 03d51b7 wallet2: fix refresh function parameters (selsta)
| * | | wallet2: fix refresh function parametersselsta2023-10-013-3/+3
| | |/ | |/| | | | | | | max_blocks is last on master branch