Skip to content

Conversation

@Snider
Copy link
Member

@Snider Snider commented May 23, 2022

Right now Doxygen is documenting everything in the repo including submodules, everything in contrib,
util, tests, etc. This bogs down the documentation to the point where it is very hard to navigate. I think
it would be a good move to focus on documenting only the main C++ code which is specific to this repo.

Right now this means documenting src/ (without SUPERCOP) and contrib/epee/. After this commit,
Doxygen went from running >6000 graphs to about 2200 graphs.

selsta and others added 11 commits May 7, 2022 21:49
When forced to deal with an untrusted node, a wallet will quantize
its current height to disguise the real height to the adversary, to
try and minimize the daemon's ability to distinguish returning
wallets.
Daemons will thus return more blocks than the wallet needs, starting
from earlier in the chain. These extra blocks will be disregarded
by the wallet, which had already scanned them.
However, for the purposes of reorg size detection, the wallet assumes
all blocks the daemon sends are different, which is only correct if
the wallet hasn't been coy, which is only the case for trusted
daemons (which you should use). This causes an issue when the size
of this "fake reorg" is above the sanity check threshold at which
the wallet refuses a reorg.
To fix this, the reorg size check is moved later on, when the reorg
is about to actually happen, after the wallet has checked which
blocks are actually different from the ones it expects.
There are vulnerabilities in multisig protocol if the parties do not
trust each other, and while there is a patch for it, it has not been
throroughly reviewed yet, so it is felt safer to disable multisig by
default for now.
If all parties in a multisig setup trust each other, then it is safe
to enable multisig.
As of OpenSSL 3.0, `SHA256_Init`, `SHA256_Update`, and `SHA256_Final`
are deprectaed in favor of the higher-level `EVP_*` class of functions.
This causes compiler warnings, and sooner or later, will cause build
errors as these functions are excluded from distro headers.

Also add some documentation.
@Snider Snider requested a review from wrkzdev May 23, 2022 10:21
luigi1111 and others added 18 commits May 23, 2022 14:37
026dbc8 Windows build: fix narrowing error for WaitForSingleObject (Jeffrey Ryan)
Remade monero-project#8270 (includes edits from UkoeHB)
af08c83 utils: delete outdated windows build script (selsta)
bae4a1a Don't send peerlist larger than max allowed (j-berman)
62914e7 Ignore gitian build files (Jeffrey Ryan)
b9d2c78 fix backoff delay logic when re-relaying txs (j-berman)
2979474 disable multisig by default (moneromooo-monero)
2dab31f Don't exclusively drop tor/i2p outgoing cxns in idle loop (j-berman)
fde7c96 wallet2: fix spurious reorg detection with untrusted nodes (moneromooo-monero)
1164874 src, epee: fix a couple compiler warnings (selsta)
5858f05 GCC: Fix -Wstringop-overflow= warnings (Jeffrey Ryan)
08080df unit_tests: add more sha256sum test cases (Jeffrey Ryan)
a66a52d common: update sha256sum to use OpenSSL 3.0 API (Jeffrey Ryan)
Unlike some other warnings, clang does not have a `stringop-overflow` group so it doesn't recognize the `#pragma GCC ...` directive in monero-project#8338
…nconfirmed

unconfirmed solely uses a - b, and received now accepts b so it can 
provide more detailed logs on what occurred (printing a - b, yet with a 
and b).
Autodetects that a block device is being used.
Use mmap to read and initialize the meta pages, raw device
may not support read/write syscalls.
kriszyp and others added 29 commits June 3, 2022 16:46
This reverts commit 50410d1, reversing
changes made to d054def.
Rename the "build-macos" job within "depends", as it is not building on macOS as the similarly named job within build.yml does. Also, both names overlap which is confusing when looking for step-by-step build instruction examples or when looking at the logfile.
Fish shell completions for monerod, monero-wallet-cli, and monero-wallet-rpc.
ade464a ITS#9385 fix using MDB_NOSUBDIR with nonexistent file (Kris Zyp)
033a32a Remove check is_directory check on lmdb path (Howard Chu)
b096e16 Revert 'db_lmdb: test for mmap support at init time' (Howard Chu)
493577a Silence spurious fallthru warning (Howard Chu)
b46a60e Fix rawpart flag collision (Howard Chu)
4e7586c More RAWPART support (Howard Chu)
747f5d3 Preliminary raw partition support (Howard Chu)
61d0712 Gitian: refresh the stale Monero dir via --setup switch (mj-xmr)
de2f0d0 wallet_api: add scanTransactions function (selsta)
bc05d2d README.md: Add v15/v16 network upgrade (garth-xmr)
8460fcc Revert 'Merge pull request monero-project#7937' (j-berman)
16f8e04 Remove erraneous commas (Luke Parker)
da0715e Improve consistency between on_money_received and on_money_received_unconfirmed (Luke Parker)
04c0da2 Chunk /gettransactions to avoid hitting restricted RPC limit (tobtoht)
d486c03 utils: add fish shell completions (Leo Nerone)
41b1a6b simplewallet: print usage when given no args (hinto.janaiyo)
4278a3a cryptonote_basic: catch crypto api errors (moneromooo-monero)
6f3abbe Depends: Unbound disable getentropy()/reallocarray() (glibc < 2.26) (TheCharlatan)
50ccc7e wallet2: remove obsolete rpc version check (tobtoht)
09a597b wallet2: don't use DNS to obtain segregation heights (tobtoht)
83aa817 (fix): Confusingly named CI-Job (Klaus Frank)
8e9c60a README: depends has only been tested on ubuntu 18.04 and 20.04 (selsta)
Right now Doxygen is documenting everything in the repo including submodules, everything in contrib,
util, tests, etc. This bogs down the documentation to the point where it is very hard to navigate. I think
it would be a good move to focus on documenting only the main C++ code which is specific to this repo.

Right now this means documenting `src/` (without SUPERCOP), `contrib/epee/`, `external/easylogging++`. After this commit,
Doxygen went from running >6000 graphs to about 2200 graphs.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.