Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
1164874 src, epee: fix a couple compiler warnings (selsta)
|
|
`WaitForSingleObject` returns a `DWORD`, not an int, so assign `retval` as such and it should fix the error.
|
|
|
|
1ddb1ee Give better error messages when missing SSL files (Jeffrey Ryan)
|
|
6ef945d Doxygen: Hide anonymous namespaces from documentation by default (Jeffrey)
|
|
f7d50cb EPEE: Remove gzip_encoding.h (Jeffrey)
|
|
63c7f8b EPEE: Remove hmac-md5 (Jeffrey)
|
|
002bf9c Fix typo: SERIALIZE_TYPE_DUOBLE (Jeffrey)
|
|
While copying my data dir to another drive, I missed copying the rpc_ssl.key file b/c of the file permissions.
This change will give a much more clear, descriptive error in that scenario.
|
|
Bonus: little doc fix for net_ssl.h
|
|
9209880 add a sanity check to RPC input data size (moneromooo-monero)
|
|
d1cb9c3 Remove serialization/enableable (Jeffrey)
|
|
|
|
|
|
reported by m31007
|
|
At the request of @mj-xmr: https://github.com/monero-project/monero/pull/8211#discussion_r822868321
|
|
Relevant commit in old PR:
1b798a7042070cc8063bd341ebf7025da554b632
|
|
Relevant commit from old PR:
330df2952cb2863a591158b984c0fb7f652887ac
|
|
Relevant commit from old PR:
bd0a5119957d3ef9130a0b82599e1696995ef235
|
|
Relevant commit on old PR:
2499269696192ce30dd125ddee90a80d4326dff9
|
|
Relevant commits on the old cleanup PR:
36933c7f5c7778e2d7fbfea5361c11fb41070467
21e43de0f300ee47b7e597098908601bf591950b
3c678bb1cedfd7b865ac2e7aaf014de4bfb3eb3d
|
|
Actions:
1. Remove unused functions from misc_os_dependent.h
2. Move three remaining functions, get_gmt_time, get_ns_count, and get_tick_count into time_helper.h
3. Remove unused functions from time_helper.h
4. Refactor get_ns_count and get_internet_time_str and get_time_interval_string
5. Remove/add includes as needed
Relevant commits on the old PR:
a9fbe52b02ffab451e90c977459fea4642731cd1
9a59b131c4ed1be8afe238fff3780fe203c65a46
7fa9e2817df9b9ef3f0290f7f86357939829e588
|
|
Remove unused include statements or unused definitions.
|
|
Here lies dozens of unused files. This commit is ONLY file deletions except
for the removing of a couple of #includes and removing filenames from CmakeLists
where appropriate.
|
|
|
|
Currently working on an EPEE [ser/de]ialization library for Rust and at first glance, EPEE seemed to have support for optional wrappers. However, after looking into it, this feature appears to be half-baked and unused. Furthermore, adding support for optional values would be better suited to implement at the storage level, in my opinion. That would make parsing DOMs easier and less error-prone. If anyone is currently using this code, please comment. Thanks!
At the time of writing, this PR has no merge conflicts with #8211
|
|
1ce9e9c Remove dead code from parserse_base_utils and fix unit tests (Jeffrey)
|
|
17772ef Eliminate dependence on boost::interprocess #8223 (Jeffrey)
|
|
da9aa1f Copyright: Update to 2022 (mj-xmr)
|
|
* Remove `match_string()`, `match_number()`, and `match_word()`
* Remove `match_word_with_extrasymb()` and `match_word_til_equal_mark()`
* Adapt unit test for `match_number()` to `match_number2()`
* Adapt unit test for `match_string()` to `match_string2()`
Note: the unit tests were testing for the old version of the functions, and
the interfaces for these functions changed slightly, so I had to also edit
the tests.
As of writing, this PR has no merge conflicts with #8211
Additional changes during review:
* Explicitly set up is_[float/signed]_val to be changed before each call
* Structify the tests and fix uninitialized variables
|
|
In this repo, `boost::interprocess` was being used soley to make `uint32_t` operations atomic. So I replaced each instance of
`boost::interprocess::ipcdetail::atomic(...)32` with `std::atomic` methods. I replaced member declarations as applicable. For example,
when I needed to change a `volatile uint32_t` into a `std::atomic<uint32_t>`. Sometimes, a member was being used a boolean flag, so
I replaced it with `std::atomic<bool>`.
You may notice that I didn't touch `levin_client_async.h`. That is because this file is entirely unused and will be deleted in PR monero-project#8211.
Additional changes from review:
* Make some local variables const
* Change postfix operators to prefix operators where value was not need
|
|
|
|
|
|
Fixes issues reported in #8120
|
|
b0ec9f8 epee: avoid ADL selecting C++14 std::quoted (selsta)
|
|
|
|
|
|
Co-authored-by: Jason Rhinelander <jason@imaginary.ca>
|
|
ec6b4cf support cors wildcard (woodser)
|
|
426dbf4 fix median overflow bug (koe)
|
|
0ac9a04 epee: tidying post-incrementation -> pre-incrementation (mj-xmr)
|
|
|
|
|
|
|
|
bf96055 Make SSL key/cert storage backward-compatible (Nathan Dorfman)
|
|
|
|
|
|
This is required to build on OpenBSD (which uses LibreSSL). It also allows building against versions of OpenSSL before 1.0.2.
|
|
|
|
08e4497 Improve cryptonote (block and tx) binary read performance (Lee Clagett)
|
|
b4fe7c2 epee linkage dynamic; move monero_add_library to main CMakeLists.txt (mj-xmr)
|
|
44cc6d6 Fix boost 1.76.0 compatibility (loqs)
|
|
d772f13 epee: include public openssl header in cmake (selsta)
|
|
Add missing header boost/mpl/contains.hpp
monero-project/monero/issues/7728
|
|
cbd54ea cmake: set 3.5 as minimum version (selsta)
|
|
451b5a5 clang: fix -Wrange-loop-analysis warnings (selsta)
|
|
15e6275 CMake: new macro - finding all headers (extract from epee) (mj-xmr)
|
|
|
|
|
|
|
|
|
|
679d055 Remove payload copy in all outgoing p2p messages (Lee Clagett)
|
|
|
|
This reverts commit 63c7ca07fba2f063c760f786a986fb3e02fb040e, reversing
changes made to 2218e23e84a89e9a1e4c0be5d50f891ab836754f.
|
|
23aae55 Remove payload copy in all outgoing p2p messages (Lee Clagett)
|
|
673c6d2 Reduce compilation time of epee/portable_storage_template_helper.h (mj-xmr)
|
|
|
|
0f2b5af Reduced executable size; reduced call sequence to 'allowed' log function (Lee Clagett)
|
|
2935a0c async_protocol_handler_config: fix deadlock (anon)
c877705 async_protocol_handler_config: add deadlock demo (anon)
|
|
|
|
240d382 Epee: add headers to project files (via glob), to be able to search for them easily. (mj-xmr)
|
|
b900fa0 Fix compiler warning for in keyvalue_serialization.h (mj-xmr)
|
|
9867a91 Store RPC SSL key/cert for consistent authentication between runs (Lee Clagett)
|
|
daf023d epee: don't log raw packet data (moneromooo-monero)
|
|
249eae5 Allow byte_stream->byte_slice conversion to shrink unused buffer space (Lee Clagett)
|
|
|
|
556af11 epee: return HTTP error 400 (Bad request) on deserialization error (moneromooo-monero)
|
|
easily.
Use case: IDEs
|
|
It's better than 404 (Not found)
|
|
|
|
|
|
545b982 Remove unnecessary atomic operations in levin code (Lee Clagett)
|
|
df2f00f boosted_tcp_server: fix connection lifetime (anon)
3833624 boosted_tcp_server: add segfault demo (anon)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
f2ad539 readline_buffer: Avoid consecutive duplicates in the history (codesoap)
|
|
|
|
b9092dd epee: also limit number of strings in portable_storage (moneromooo-monero)
|
|
They require at least 24 bytes
|
|
b652d598d add a max levin packet size by command type (moneromooo-monero)
|
|
|
|
|
|
|
|
61b6e4cc6 Add aggressive restrictions to pre-handshake p2p buffer limit (Lee Clagett)
|
|
8e2caf3fb portable_storage: check object limit where appropriate (moneromooo)
|
|
20bdbd7aa portable_storage: forbid unnamed sections (xiphon)
|
|
also fix pedantic off by one in check
|
|
353f93ee1 portable_storage: remove array element limit (moneromooo-monero)
|
|
f7ab8bc6d ssl: buffered handshake detection (anon)
|
|
|
|
some people don't want it
|
|
|
|
|
|
95575cda6 epee: fix some issues using connections after shutdown (moneromooo-monero)
|
|
7f407c027 portable_storage: add some sanity checks on data size (moneromooo-monero)
|
|
c0c75ac19 Fixed issues found by static analysis (SChernykh)
|
|
|
|
especially when allocated size is >> serialized data size
|
|
|
|
|
|
|
|
|
|
7414e2bac Change epee binary output from std::stringstream to byte_stream (Lee Clagett)
|
|
08eb0949f Change to more efficient allocation strategy in byte_stream (Lee Clagett)
|
|
- rolling_median: tried to free uninitialized pointer in a constructor
- net_node.inl: erase-remove idiom was used incorrectly. remove_if doesn't actually remove elements, see http://cpp.sh/6fcjv
- bulletproofs.cc: call to sizeof() instead of vector.size(), luckily it only impacts performance and not code logic there
|
|
|
|
|
|
c5f6629 epee: tighten the URL parsing regexp a little (moneromooo-monero)
|
|
fixes massive amounts of time spent on pathological inputs
Found by OSS-Fuzz
|
|
|
|
|
|
|
|
|
|
|
|
05ad4fa39 epee: further defending against exceptions in command handlers (moneromooo-monero)
|
|
13eee1d6a rpc: reject wrong sized txid (moneromooo-monero)
92e6b7df2 easylogging++: fix crash with reentrant logging (moneromooo-monero)
6dd95d530 epee: guard against exceptions in RPC handlers (moneromooo-monero)
90016ad74 blockchain: guard against exceptions in add_new_block/children (moneromooo-monero)
|
|
86abf558c epee: Remove unused functions in local_ip.h (Jean Pierre Dudey)
|
|
85efc88c1 Fix overflow issue in epee:misc_utils::rolling_median_t and median(), with unit test (koe)
|
|
76c16822d wallet2_api: implement runtime proxy configuration (xiphon)
|
|
|
|
|
|
|
|
unit test
|
|
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
|
|
|
|
72cdfa4a2 fix a few typos in error messages (moneromooo-monero)
|
|
8656a8c9f remove double includes (sumogr)
|
|
5ef0607da Update copyright year to 2020 (SomaticFanatic)
|
|
3721d56 epee: fix array underflow in unicode parsing (moneromooo-monero)
|
|
78d435a rpc: don't display invalid json errors on default log level (moneromooo-monero)
|
|
15538f7 ByteSlice: Fix persisting ptr to std::moved SSO buffer (Doy-lee)
|
|
Reported by minerscan
Also independently found by OSS-Fuzz just recently
|
|
85164a8 epee: use memwipe rather than memset for md5 secrets (moneromooo-monero)
|
|
29e563b Fixed bugs for take_slice and byte_stream->byte_slice (vtnerd)
|
|
|
|
It's not something the user needs to know, and will display
attacker controlled data
|
|
The Bug:
1. Construct `byte_slice.portion_` with `epee::span(buffer)` which copies a pointer to the SSO buffer to `byte_slice.portion_`
2. It constructs `byte_slice.storage_` with `std::move(buffer)` (normally this swap pointers, but SSO means a memcpy and clear on the original SSO buffer)
3. `slice.data()` returns a pointer from `slice.portion_` that points to the original SSO cleared buffer, `slice.storage_` has the actual string.
|
|
Reported by adrelanos
|
|
That's used by HTTP auth now
|
|
|
|
|
|
|
|
Update copyright year to 2020
|
|
|
|
e509ede trezor: adapt to new passphrase mechanism (ph4r05)
|
|
- choice where to enter passphrase is now made on the host
- use wipeable string in the comm stack
- wipe passphrase memory
- protocol optimizations, prepare for new firmware version
- minor fixes and improvements
- tests fixes, HF12 support
|
|
0dbdba8 epee: avoid spamming 'Generating SSL certificate' in the logs (xiphon)
|
|
3031deb Bump downloaded boost version to 1.72 (omartijn)
6079042 Use boost::asio::ssl::context::sslv23 for backwards compatibility (omartijn)
|
|
81c5943 Remove temporary std::string creation in some hex->bin calls (vtnerd)
5fcc23a Move hex->bin conversion to monero copyright files and with less includes (vtnerd)
3387f0e Reduce template bloat in hex->bin for ZMQ json (vtnerd)
|
|
c61abf8 remove empty statements (shopglobal)
|
|
0078ce7 wipeable_string: split - treat CR, LF and Tabs as separators (xiphon)
|
|
|
|
f9441c5 Fixed string_ref usage bug in epee::from_hex::vector (vtnerd)
|
|
- Add abstract_http_client.h which http_client.h extends.
- Replace simple_http_client with abstract_http_client in wallet2,
message_store, message_transporter, and node_rpc_proxy.
- Import and export wallet data in wallet2.
- Use #if defined __EMSCRIPTEN__ directives to skip incompatible code.
|
|
When a handshake fails, it can fail due to timeout or destroyed
connection, in which case the connection will be, or already is,
closed, and we don't want to do it twice.
Additionally, when closing a connection directly from the top
level code, ensure the connection is gone from the m_connects
list so it won't be used again.
AFAICT this is now clean in netstat, /proc/PID/fd and print_cn.
This fixes a noisy (but harmless) exception.
|
|
760ecf2 console_handler: do not let exception past the dor (moneromooo-monero)
09c8111 threadpool: lock mutex in create (moneromooo-monero)
e377977 tx_pool: catch theoretical error in get_block_reward (moneromooo-monero)
|
|
5002a03 Explicitly define copy assignment operator (omartijn)
|
|
|
|
|
|
0f78b06e Various improvements to the ZMQ JSON-RPC handling: (Lee Clagett)
|
|
352bd132 abstract_tcp_server2: guard against negative timeouts (moneromooo-monero)
|
|
4771a7ae p2p: remove obsolete local time in handshake (moneromooo-monero)
2fbbc4a2 p2p: avoid sending the same peer list over and over (moneromooo-monero)
3004835b epee: remove backward compatible endian specific address serialization (moneromooo-monero)
39a343d7 p2p: remove backward compatible peer list (moneromooo-monero)
60631802 p2p: simplify last_seen serialization now we have optional stores (moneromooo-monero)
9467b2e4 cryptonote_protocol: omit top 64 bits of difficulty when 0 (moneromooo-monero)
b595583f serialization: do not write optional fields with default value (moneromooo-monero)
5f98b46d p2p: remove obsolete local time from TIMED_SYNC (moneromooo-monero)
|
|
All the insecure protocols that this enables are then disabled, so they
cannot be actually used. The end-result is the same.
|
|
|
|
|
|
- Finding handling function in ZMQ JSON-RPC now uses binary search
- Temporary `std::vector`s in JSON output now use `epee::span` to
prevent allocations.
- Binary -> hex in JSON output no longer allocates temporary buffer
- C++ structs -> JSON skips intermediate DOM creation, and instead
write directly to an output stream.
|
|
a9bdc6e4 Improved performance for epee serialization: (Lee Clagett)
|
|
021cf733 ssl: server-side: allow multiple version of TLS (Bertrand Jacquin)
|
|
Cleaning up a little around the code base.
|
|
|
|
Coverity 208373
|
|
2d1afceb net_ssl: load default certificates in CA mode on Windows (moneromooo-monero)
|
|
e896cca8 epee: reorder a couple init list fields to match declaration (moneromooo-monero)
|
|
The implicit copy assignment operator was deprecated because the class
has an explicit copy constructor. According to the standard:
The generation of the implicitly-defined copy assignment operator is
deprecated (since C++11) if T has a user-declared destructor or
user-declared copy constructor.
Recent versions of gcc (9.1+) and clang (10.0) warn about this.
|
|
|
|
|
|
|
|
6efeefbc epee: set application/json MIME type on json errors (moneromooo-monero)
|
|
b2ad757f Replace memset with memwipe. (Bert Peters)
|
|
584d057f epee: fix console_handlers_binder race, wait for thread to finish (xiphon)
|
|
feef1c6a epee: fix peer ids being truncated on display (moneromooo-monero)
|
|
|