Commit Graph

363 Commits

Author SHA1 Message Date
tevador a3933a2a5e Update RandomX to v1.1.8 2020-07-04 15:24:39 +02:00
selsta 99684e3ec3
simplewallet: add show_qr_code command
Thanks to iDunk for helping with Windows.
2020-06-21 20:15:10 +02:00
moneromooo-monero 82d21f5b3c easylogging++: sanitize log payload
Some of it might be coming from untrusted sources

Reported by itsunixiknowthis
2020-05-24 08:38:59 +02:00
Lee Clagett a11ec4ac1d Support for supercop ASM in wallet, and benchmark for supercop 2020-05-16 10:25:17 +00:00
Dusan Klinec e509ede2aa
trezor: adapt to new passphrase mechanism
- 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
2020-04-27 18:17:56 +02:00
xiphon a26cbcef92 easylogging++: fix 'ELPP_OS_EMSCRIPTEN is not defined' warning 2020-03-11 17:58:37 +00:00
Alexander Blair af1be51740
Merge pull request #6209
94853487 easylogging++: add emscripten support (moneromooo-monero)
2020-02-28 19:58:07 -08:00
luigi1111 425da2381d
Merge pull request #6037
f49a8ca easylogging++: add screen.xterm-256color to the 'allow colour' TERM list (moneromooo-monero)
2019-12-12 13:40:09 -06:00
moneromooo-monero 948534877e
easylogging++: add emscripten support
This is upstream, but seems to have got lost in conflicts
when merging support for BSDs or android.
2019-12-02 15:09:21 +00:00
tevador 2efc6acdb2 RandomX: Update to v1.1.6 2019-10-30 20:25:10 +01:00
moneromooo-monero f49a8cad23
easylogging++: add screen.xterm-256color to the "allow colour" TERM list 2019-10-26 20:16:19 +00:00
luigi1111 be6c5afabb
Merge pull request #6016
afcfb3b easylogging++: windows does not need terminal colour support (moneromooo-monero)
2019-10-24 18:41:38 -05:00
moneromooo-monero afcfb3b32f
easylogging++: windows does not need terminal colour support 2019-10-24 16:00:45 +00:00
tevador 22d1a6c16d RandomX: update to v1.1.5 2019-10-23 19:46:57 +02:00
tevador ea813cfb1b RandomX: update to v1.1.4
* Faster cache initialization with SSSE3/AVX2
* Automatic detection of CPU capabilities in RandomX
* Fixed a possible out-of-bounds access in superscalar program generator
* Use MONERO_RANDOMX_UMASK to manually disable RandomX flags in monerod
2019-10-13 18:43:27 +02:00
moneromooo-monero 080ea734c2
easylogging++: fix build with glibc 2019-10-08 23:49:28 +00:00
luigi1111 5920913171
Merge pull request #5948
1c600a4 Fix randomx cache selection for RPCs (hyc)
2675cf4 Update to RandomX v1.1.3, simplify (hyc)
f54301d Fix for miners on reorg (hyc)
2019-10-08 14:48:36 -05:00
luigi1111 577b06028c
Merge pull request #5927
6d378d9 easylogging++: always omit ANSI codes when colour is not supported (moneromooo-monero)
2019-10-08 14:43:53 -05:00
luigi1111 29075e69ae
Merge pulll request #5924
5bcbd97 Disable easylogging crash log on non-glibc libraries (omartijn)
2019-10-08 14:40:53 -05:00
Howard Chu 2675cf4483
Update to RandomX v1.1.3, simplify
We don't need to detect if the cache has changed, just always
call to set it on the VM. The call will be a no-op if the cache
hasn't changed.
2019-10-05 18:51:20 +01:00
Riccardo Spagni b8643752c1
Merge pull request #5549
81c2ad6d RandomX integration (Howard Chu)
2019-09-25 17:52:16 -04:00
Howard Chu 81c2ad6d5b
RandomX integration
Support RandomX PoW algorithm
2019-09-25 21:29:42 +01:00
moneromooo-monero 31bf2e25c5
Revert "easylogging++: ensure it finds boost headers"
This reverts commit 9a95827ea7.
2019-09-24 20:09:33 +00:00
moneromooo-monero 614d6b5714
easylogging++: split strings manually
Avoids cmake skullduggery
2019-09-24 20:09:32 +00:00
moneromooo-monero 9a95827ea7
easylogging++: ensure it finds boost headers 2019-09-24 18:22:37 +00:00
moneromooo-monero 6d378d90fe
easylogging++: always omit ANSI codes when colour is not supported 2019-09-24 15:49:55 +00:00
Martijn Otto 5bcbd97488
Disable easylogging crash log on non-glibc libraries
- easylogging assumes certain non-standard headers and functions
- these function only exist in glibc
- compiling under linux without glibc thus broke compilation
2019-09-23 16:30:23 +02:00
moneromooo-monero 32f725d32f
Properly format multiline logs
As a side effect, colouring on Windows should now work
regardless of version
2019-09-16 16:58:01 +00:00
luigi1111 93699a27f7
Merge pull request #5857
e907305 ITS#9068 fix backslash escaping (hyc)
2019-09-08 20:07:34 -05:00
moneromooo-monero c1fa4a7f8c
boost: fix little/big endian compatibility
When no little/big endian flag is given to the writer, it stores
data in host endianness. When loading, if no flag is set, it also
assumes host endianness. This works as long as the loading and
writing are done on machines with the same endianness.

We change this to default to little endian when saving. This will
cause the loader to see the little endian flag, and swap endianness
when loading on a big endian machine. Similarly, writing on a big
endian machine will swap on save, and a little endian machine will
load little endian data.
2019-09-04 14:54:00 +00:00
Howard Chu e907305c6c
ITS#9068 fix backslash escaping
mdb_load wasn't properly inserting escaped backslashes into the data.
mdb_dump wasn't escaping backslashes when generating printable output.
2019-08-26 17:59:13 +01:00
luigi1111 415005aceb
Merge pull request #5777
757b789 Define _WANT_SEMUN for FreeBSD to ensure union semun is defined (odonnellnoel)
2019-08-21 15:28:10 -05:00
luigi1111 5aa65adfcf
Merge pull request #5735
32b0560 easylogging++: weed out most calls to allowed without locking (moneromooo-monero)
2019-08-21 15:21:51 -05:00
luigi1111 a8e99198bf
Merge pull request #5748
b350726 boost: update obsolete usage of endian API (moneromooo-monero)
2019-08-21 15:18:38 -05:00
moneromooo-monero 32b0560003
easylogging++: weed out most calls to allowed without locking 2019-08-19 14:52:14 +00:00
Noel O'Donnell 757b789c30 Define _WANT_SEMUN for FreeBSD to ensure `union semun` is defined
Build was failing on GhostBSD (FreeBSD-13.0) because `union semun` is switched off by default. Defining _WANT_SEMUN switches it on.
2019-07-27 20:39:50 +01:00
luigi1111 8ae2681e08
Merge pull request #5594
f074b6b device: show address on device display (ph4r05)
2019-07-24 14:24:40 -05:00
moneromooo-monero b350726a5a
boost: update obsolete usage of endian API 2019-07-09 15:07:13 +00:00
Dusan Klinec f074b6b571
device: show address on device display
- Trezor: support for device address display (subaddress, integrated address)
- Wallet::API support added
- Simplewallet:
  - address device [<index>]
  - address new <label>  // shows address on device also
  - integrated_address [device] <payment_id|address>  // new optional "device" arg to display also on the device
2019-06-17 16:49:04 +02:00
moneromooo-monero 643c86a62a
miniupnpc: update to build on BSD 2019-06-08 18:38:51 +00:00
Riccardo Spagni 213fd5007d
Merge pull request #5442
428249c5 easylogging++: minimal stdout logging format (moneromooo-monero)
2019-04-16 22:45:02 +02:00
Riccardo Spagni c41d02696c
Merge pull request #5407
66d73d2f easylogging++: update to v9.96.7 (moneromooo-monero)
2019-04-16 22:34:12 +02:00
Riccardo Spagni 1f809e7485
Merge pull request #5440
b6420e12 lmdb: catch non-LMDB negative errors before strerror (moneromooo-monero)
2019-04-15 09:23:09 +02:00
moneromooo-monero 428249c5d1
easylogging++: minimal stdout logging format
It's a bit of a hack, but doing it right would need a lot
of changes to the easylogging++ source.
2019-04-14 09:43:05 +00:00
moneromooo-monero b6420e12a9
lmdb: catch non-LMDB negative errors before strerror
That should hopefully shut coverity up
2019-04-14 09:19:04 +00:00
Martijn Otto 8df827075f
Fix linker issues using easylogging 2019-04-10 11:37:02 +02:00
moneromooo-monero 66d73d2f7d
easylogging++: update to v9.96.7 2019-04-07 14:31:00 +00:00
Riccardo Spagni 48e3a341f8
Merge pull request #5211
c9b13fbb tests/trezor: HF9 and HF10 tests (Dusan Klinec)
a1fd1d49 device/trezor: HF10 support added, wallet::API (Dusan Klinec)
d74d26f2 crypto: hmac_keccak added (Dusan Klinec)
2019-03-21 14:44:04 +02:00
Dusan Klinec a1fd1d499c
device/trezor: HF10 support added, wallet::API
- import only key images generated by cold signing process
- wallet_api: trezor methods added
- wallet: button request code added
- const added to methods
- wallet2::get_tx_key_device() tries to decrypt stored tx private keys using the device.
- simplewallet supports get_tx_key and get_tx_proof on hw device using the get_tx_key feature
- live refresh enables refresh with trezor i.e. computing key images on the fly. More convenient and efficient for users.
- device: has_ki_live_refresh added
- a thread is watching whether live refresh is being computed, if not for 30 seconds, it terminates the live refresh process - switches Trezor state
2019-03-20 21:11:02 +01:00
Riccardo Spagni ea07a9bc61
Merge pull request #5191
1677fb06 unbound: update to get the redefinition fix (moneromooo-monero)
2019-03-17 17:57:09 +02:00
binaryFate 1f2930ce0b Update 2019 copyright 2019-03-05 22:05:34 +01:00
moneromooo-monero 1677fb06ad
unbound: update to get the redefinition fix 2019-02-24 13:20:03 +00:00
Howard Chu 2a94ec22aa
ITS#8969 tweak mdb_page_split
Bump up number of keys for which we use fine-grained splitpoint search
2019-01-30 23:45:48 +00:00
Riccardo Spagni 32506a6ca7
Merge pull request #5079
efec3ed2 Resync to upstream mdb.master (Howard Chu)
2019-01-28 21:33:59 +02:00
Howard Chu efec3ed235
Resync to upstream mdb.master 2019-01-17 19:49:26 +00:00
Riccardo Spagni 3ce7977389
Merge pull request #4950
68f045de easylogging++: check allowed categories before logging (moneromooo-monero)
2019-01-06 20:38:10 +02:00
luigi1111 f03f4ddb96
Merge pull request #4936
7d9aeb7 easylogging++: avoid uneeded temporary std::string object (moneromooo-monero)
2018-12-31 15:37:28 -06:00
Riccardo Spagni 5e9225e637
Merge pull request #4925
ab783b17 easylogging++: ensure logger is initialized before main (moneromooo-monero)
9b69a0ae daemon: print monero version at startup when calling a detached daemon (moneromooo-monero)
4d71d463 mlocker: remove early page size log (moneromooo-monero)
2018-12-12 12:01:18 +02:00
moneromooo-monero 68f045de8c
easylogging++: check allowed categories before logging 2018-12-07 13:25:39 +00:00
moneromooo-monero 7d9aeb7195
easylogging++: avoid uneeded temporary std::string object 2018-12-03 21:34:28 +00:00
moneromooo-monero ab783b1700
easylogging++: ensure logger is initialized before main 2018-11-30 17:58:58 +00:00
moneromooo-monero 721aacd88e
easylogging++: faster access to logging
Turns out getting the global shared_ptr hits the profile,
and passing it around still keeps it at close to ~1% CPU,
which is too much for mostly silent logging.

Leak the object instead, which is even safer for late logging.
2018-11-27 13:55:21 +00:00
moneromooo-monero 7cc27b367e
Revert "easylogging++: make the logger handle early/late logging"
This reverts commit 7f8bdeb35c.
2018-11-27 13:55:18 +00:00
moneromooo-monero 2587aec121
easylogging++: update to latest upstream (v9.96.5) 2018-11-06 14:26:09 +00:00
Riccardo Spagni b0d9d1afd0
Merge pull request #4708
6cd929ea easylogging++: remove std::deque usage (moneromooo-monero)
2018-11-06 14:50:30 +02:00
Dusan Klinec 29ffb6bba8
device/trezor: trezor support added 2018-11-02 21:36:39 +01:00
moneromooo-monero 6cd929eaa3
easylogging++: remove std::deque usage
It's not actually needed for this use, and saves a STL header
2018-10-23 20:26:46 +00:00
iDunk5400 31559e6ad2
Update unbound submodule to 7f23967
Fixes building in MSYS2 with openssl 1.1.1
2018-09-29 23:11:59 +02:00
Riccardo Spagni effcbf2060
Merge pull request #4459
bcf3f6af fuzz_tests: catch unhandled exceptions (moneromooo-monero)
3ebd05d4 miner: restore stream flags after changing them (moneromooo-monero)
a093092e levin_protocol_handler_async: do not propagate exception through dtor (moneromooo-monero)
1eebb82b net_helper: do not propagate exceptions through dtor (moneromooo-monero)
fb6a3630 miner: do not propagate exceptions through dtor (moneromooo-monero)
2e2139ff epee: do not propagate exception through dtor (moneromooo-monero)
0749a8bd db_lmdb: do not propagate exceptions in dtor (moneromooo-monero)
1b0afeeb wallet_rpc_server: exit cleanly on unhandled exceptions (moneromooo-monero)
418a9936 unit_tests: catch unhandled exceptions (moneromooo-monero)
ea7f9543 threadpool: do not propagate exceptions through the dtor (moneromooo-monero)
6e855422 gen_multisig: nice exit on unhandled exception (moneromooo-monero)
53df2deb db_lmdb: catch error in mdb_stat calls during migration (moneromooo-monero)
e67016dd blockchain_blackball: catch failure to commit db transaction (moneromooo-monero)
661439f4 mlog: don't remove old logs if we failed to rename the current file (moneromooo-monero)
5fdcda50 easylogging++: test for NULL before dereference (moneromooo-monero)
7ece1550 performance_test: fix bad last argument calling add_arg (moneromooo-monero)
a085da32 unit_tests: add check for page size > 0 before dividing (moneromooo-monero)
d8b1ec8b unit_tests: use std::shared_ptr to shut coverity up about leaks (moneromooo-monero)
02563bf4 simplewallet: top level exception catcher to print nicer messages (moneromooo-monero)
c57a65b2 blockchain_blackball: fix shift range for 32 bit archs (moneromooo-monero)
2018-09-29 22:20:38 +02:00
Riccardo Spagni 9c40bc62fc
Merge pull request #3430
42397359 Fixup 32bit arm build (TheCharlatan)
a06d2581 Fix Windows build (TheCharlatan)
ecaf5b3f Add libsodium to the packages, the arm build was complaining about it. (TheCharlatan)
cbbf4d24 Adapt translations to upstream changes (TheCharlatan)
db571546 Updated pcsc url (TheCharlatan)
f0ba19fd Add lrelease to the depends (TheCharlatan)
cfb30462 Add Miniupnp submodule (TheCharlatan)
5f7da005 Unbound is now a submodule. Adapt depends for this. (TheCharlatan)
d6b9bdd3 Update readmes to reflect the usage of depends (TheCharlatan)
56b6e41e Add support for apple and arm building (TheCharlatan)
29311fd1 Disable stack unwinding for mingw32 depends build. (TheCharlatan)
8db3d573 Modify depends for monero's dependencies (TheCharlatan)
0806a23a Initial depends addition (TheCharlatan)
2018-09-18 16:33:21 +02:00
thomasvaughan bcda7adcd4 NetBSD support 2018-09-11 14:32:33 +00:00
TheCharlatan cfb3046222 Add Miniupnp submodule
Drop miniupnp and unbound depends builds. Make sure that build variables are propageted properly to unbound and miniupnp.
Rebase to after the v0.12 release
2018-09-10 22:05:37 +02:00
TheCharlatan 8db3d5731b Modify depends for monero's dependencies
Add readline, ldns, graphviz, unbound to depends packages

Add a cmake toolchain file to depends that is uniquely created for every build and placed in triple/share/toolchain.cmake
This file is then passed to cmake with -DCMAKE_TOOLCHAIN_FILE=/path/to/triple/share/toolchain.cmake

Add the boost locale package to depends

In the depends cmake toolchain file, a DEPENDS flag is added
to exclude, or change cmake checks done that are required for depends

Link miniupnpc and unwind from depends and not external

Add libiconv and icu4c to depends, required for mingw32 builds.

Headers (winsock) need to be lower case in order to compile on unix systems.
This should not affect building on windows.
2018-09-10 22:03:42 +02:00
luigi1111 68813d2694
Merge pull request #4105
e2311db Build: bump rapidjson to 129d19b
78a6690 Build: bump unbound to 1.7.3
4e409be Build: bump miniupnp to 2.1
2018-08-22 20:27:43 -05:00
moneromooo-monero 7f8bdeb35c
easylogging++: make the logger handle early/late logging 2018-07-15 19:10:44 +01:00
anonimal 4e409be887
Build: bump miniupnp to 2.1 2018-07-06 21:38:52 +00:00
anonimal 78a6690a6f
Build: bump unbound to 1.7.3 2018-07-06 21:37:37 +00:00
anonimal e2311db717
Build: bump rapidjson to 129d19b
Includes various rapidjson fixes.
2018-07-06 21:35:39 +00:00
luigi1111 4aa832e534
Merge pull request #3702
099bb83 easylogging++: cached allowed categories (moneromooo-monero)
2018-06-20 14:02:12 -05:00
anonimal 8a6c081df7
rapidjson: remove outdated in-tree, use submodule
Includes ~2 years worth of fixes including security and build.

Note: this pulls directly from master, not a release branch/tag. See
https://github.com/Tencent/rapidjson/issues/1265
2018-05-25 04:50:20 +00:00
hyc 18cd6837b6 Fix mdb_load append option
Use MDB_CURRENT to avoid seeking to new key when appending DUPs.
Reinit cursor on new batch, if appending DUPs.
2018-05-08 06:29:13 +01:00
hyc 9705032618 ITS#8831 move flag init into readhdr
Avoid stomping on flags from 1st readhdr invocation
2018-05-08 06:13:21 +01:00
moneromooo-monero 099bb830cf
easylogging++: cached allowed categories
It turns out this can be fairly heavy when logging a lot
2018-04-25 20:39:46 +01:00
anonimal 6b85398031
Build: update CMake and p2p for in-tree miniupnp
(cherry picked from commit a7366b5feeffaeb65b217b2d6f138e0ab1c90192)
2018-04-21 09:43:23 +00:00
anonimal 859db52fda
CMake: update new location of in-tree miniupnpc
(cherry picked from commit b16a282f97d8f6c967e8a0b1ecfd75110f095182)
2018-04-19 10:56:09 +00:00
anonimal f21df05c77
Build: add miniupnp submodule
Though we only need miniupnpc, rebasing and maintaining a miniupnpc-only
repo is unrealistic.

(cherry picked from commit 3c40eb768c292a4dec79d7dffd6685fd37940a2a)
2018-04-19 10:55:56 +00:00
anonimal 1068564867
Build: remove in-tree miniupnpc
Will be replaced by a submodule.

(cherry picked from commit e962216678)
2018-04-19 10:55:29 +00:00
anonimal efe70a15f8
Unbound: add git submodule for unbound 2018-03-18 15:52:27 +00:00
anonimal 84c5a9ba48
Unbound: remove unbound from in-tree source
We'll instead use a git submodule to pull from our unbound repo.
2018-03-18 15:52:19 +00:00
stoffu 2ab66ff1d4
liblmdb: install lmdb library for wallet2_api usage 2018-03-16 10:32:57 +00:00
Howard Chu b372ec4375
ITS#8324 More for Win32 NTDLL junk
Use GetProcAddress at runtime, avoid buildtime NTDLL link issues
2018-02-18 21:56:55 +00:00
Riccardo Spagni 666a76652b
Merge pull request #3187
851bd057 call _exit instead of abort in release mode (moneromooo-monero)
2018-02-16 14:20:31 +01:00
moneromooo-monero 851bd057ec
call _exit instead of abort in release mode
Avoids cores being created, as they're nowadays often piped
to some call home system
2018-02-01 13:32:46 +00:00
xmr-eric 18216f19dd Update 2018 copyright 2018-01-26 10:03:20 -05:00
Riccardo Spagni 5f09d6c833
Merge pull request #3115
e8d773a0 unbound: always build with -fPIC (moneromooo-monero)
2018-01-18 18:14:34 -05:00
moneromooo-monero e8d773a049
unbound: always build with -fPIC 2018-01-14 18:51:51 +00:00
moneromooo-monero f65711a29b
miniupnpc: always build with -fPIC
since we now build PIE binaries
2018-01-11 15:51:32 +00:00
Riccardo Spagni bfc0bd82dd
Merge pull request #3063
dff97112 easylogging++: do not use crash log code on android, etc (moneromooo-monero)
2018-01-10 11:55:58 +01:00
moneromooo-monero dff97112c8
easylogging++: do not use crash log code on android, etc 2018-01-04 12:50:43 +00:00
moneromooo-monero 776b44f17b
Add misc hardening flags to the cmake machinery
See https://wiki.debian.org/Hardening#User_Space
2017-12-31 14:26:12 +00:00