< gmaxwell> Can someone remind me why we have a setting for turning on and off the standardness of bare multisig? it has no tests but seems kind of pointless to me..
< jnewbery>
< sipa>
< jnewbery> gmaxwell : can you explain the tsan issue? The new keypool-rescan test checks that bitcoind will exit if the keypool drops below critical. bitcoind will also print to stderr if that happens. Without #10703, any output in stderr results in test failure
< gribble> https://github.com/bitcoin/bitcoin/issues/10703 | [tests] Allow tests to pass when stderr is non-empty by jnewbery · Pull Request #10703 · bitcoin/bitcoin · GitHub
< jnewbery> I'll work on it tomorrow to make it more targeted
< sipa> jnewbery: tsan prints violations to stderr
< sipa> i assume it's related to that; i haven't followed the discussion
< luke-jr> gmaxwell: IIRC last time there was an effort to make it just policy-rejected always, some people didn't agree
< gmaxwell> jnewbery: tsan and other dynamic analysis instrumention throws errors to stderr, so if we want to continue to use them for testing we can't just have their errors get eaten.
< gmaxwell> jnewbery: for tests that are supposted to throw errors we sould probably actually test for that, rather than generally ignore stderr. I think.
< bitcoin-git> [bitcoin] DevlinShepherd opened pull request #10928: [bitcoin] Nits for README description (master...patch-1) https://github.com/bitcoin/bitcoin/pull/10928
< bitcoin-git> [bitcoin] sipa closed pull request #10928: [bitcoin] Nits for README description (master...patch-1) https://github.com/bitcoin/bitcoin/pull/10928
< wumpus> gmaxwell: seems to me too that if bitcoind is supposed to print to stderr, it should specifically check for that, instead of a general "succeeded with warnings"
< wumpus> I also guess if that was the case, it'd need an assertion at *all* callsites of chainactive.tip, in which case why not check in the function itself?
< wumpus> I don't see the point to randomly peppering around some assertions
< wumpus> if there's an automated warning I'd like to know why it triggers just there
< wumpus> not just add assertions and pray
< bitcoin-git> [bitcoin] laanwj pushed 2 new commits to master: https://github.com/bitcoin/bitcoin/compare/8537187d4213...f29d5dbd04da
< bitcoin-git> bitcoin/master 0be03c7 Brian McMichael: Qt: Use _putenv_s instead of setenv on Windows builds
< bitcoin-git> bitcoin/master f29d5db Wladimir J. van der Laan: Merge #10899: [test] Qt: Use _putenv_s instead of setenv on Windows builds...
< bitcoin-git> [bitcoin] laanwj closed pull request #10899: [test] Qt: Use _putenv_s instead of setenv on Windows builds (master...testfix) https://github.com/bitcoin/bitcoin/pull/10899
< bitcoin-git> [bitcoin] laanwj pushed 2 new commits to master: https://github.com/bitcoin/bitcoin/compare/f29d5dbd04da...b995a374f727
< bitcoin-git> bitcoin/master a56f8b0 Matt Corallo: Add missing lock in CScheduler::AreThreadsServicingQueue()...
< bitcoin-git> bitcoin/master b995a37 Wladimir J. van der Laan: Merge #10914: Add missing lock in CScheduler::AreThreadsServicingQueue()...
< bitcoin-git> [bitcoin] laanwj closed pull request #10914: Add missing lock in CScheduler::AreThreadsServicingQueue() (master...2017-04-fix-missing-scheduler-lock) https://github.com/bitcoin/bitcoin/pull/10914
< bitcoin-git> [bitcoin] laanwj pushed 2 new commits to master: https://github.com/bitcoin/bitcoin/compare/b995a374f727...78f307b66428
< bitcoin-git> bitcoin/master 9f8a46f Ryan Havar: Properly document target_confirmations in listsinceblock
< bitcoin-git> bitcoin/master 78f307b Wladimir J. van der Laan: Merge #10655: Properly document target_confirmations in listsinceblock...
< bitcoin-git> [bitcoin] laanwj closed pull request #10655: Properly document target_confirmations in listsinceblock (master...listsinceblock) https://github.com/bitcoin/bitcoin/pull/10655
< bitcoin-git> [bitcoin] laanwj pushed 2 new commits to master: https://github.com/bitcoin/bitcoin/compare/78f307b66428...04d395e8327d
< bitcoin-git> bitcoin/master 095b917 Gregory Maxwell: Avoid using sizes on non-fixed-width types to derive protocol constants....
< bitcoin-git> bitcoin/master 04d395e Wladimir J. van der Laan: Merge #10854: Avoid using sizes on non-fixed-width types to derive protocol constants....
< bitcoin-git> [bitcoin] laanwj closed pull request #10854: Avoid using sizes on non-fixed-width types to derive protocol constants. (master...rbf-numlimit-fix) https://github.com/bitcoin/bitcoin/pull/10854
< jnewbery> Redone #10882 with stderr capture/checking done within the individual test. Ready for review. (sipa, gmaxwell)
< gribble> https://github.com/bitcoin/bitcoin/issues/10882 | Keypool topup by jnewbery · Pull Request #10882 · bitcoin/bitcoin · GitHub
< jnewbery> MarcoFalke: Not urgent for 0.15, but I'd love some review of #10711
< gribble> https://github.com/bitcoin/bitcoin/issues/10711 | [tests] Introduce TestNode by jnewbery · Pull Request #10711 · bitcoin/bitcoin · GitHub
< sipa> jnewbery: thanks!
< luke-jr> FWIW, master upgraded my testnet3 UTXO set and then crashed syncing due to LevelDB giving $6 = "Corruption: not an sstable (bad magic number)"
< luke-jr> leveldb LOG file hasn't changed in a month
< luke-jr> jonasschnelli: btw, I think prune-to might be a good novice contributor thing, so might make sense to let it sit as an issue :p
< luke-jr> (eg, manual pruning and chainstate obfuscation seemed to work out nicely)
< wumpus> luke-jr: I mean: bring back the typedef instead of declaring a function type in a function argument
< wumpus> I dont' understand why the typedef is being removed
< wumpus> or am I alone in finding "CDBEnv::VerifyResult CDBEnv::Verify(const std::string& strFile, bool (*recoverFunc)(const std::string& strFile))" terribly hard to read?
< sipa> no.
< wumpus> and as for not being sure what the state of that PR is, I read the other discussion and people don't seem to agree wheter it's considered an improvement or not
< wumpus> in which case it'd be better to close it instead of review it further
< bitcoin-git> [bitcoin] ryanofsky opened pull request #10931: Fix misleading "Method not found" multiwallet errors (master...pr/multierr) https://github.com/bitcoin/bitcoin/pull/10931
< wumpus> jnewbery: yes, testnode is nice
< * midnightmagic> stabs
< midnightmagic> argh, sorry, was behind on scrollback and that had nothing to do with anything current.
< wumpus> I already wondered who and why you were stabbing :)
< wumpus> jnewbery: thanks for adding explicit check for stderr, I think this is much cleaner
< luke-jr> wumpus: ah, got the before/after reversed
< bitcoin-git> [bitcoin] laanwj pushed 2 new commits to master: https://github.com/bitcoin/bitcoin/compare/04d395e8327d...5c003cb1afcb
< bitcoin-git> bitcoin/master 4a7a4ff Marko Bencun: developer-notes: add reference to snake_case and PascalCase...
< bitcoin-git> bitcoin/master 5c003cb Wladimir J. van der Laan: Merge #10917: developer-notes: add reference to snake_case and PascalCase...
< bitcoin-git> [bitcoin] laanwj closed pull request #10917: developer-notes: add reference to snake_case and PascalCase (master...pascalcase) https://github.com/bitcoin/bitcoin/pull/10917
< bitcoin-git> [bitcoin] Cr4shOv3rrid3 opened pull request #10932: Create models.js (master...patch-5) https://github.com/bitcoin/bitcoin/pull/10932
< bitcoin-git> [bitcoin] Cr4shOv3rrid3 opened pull request #10933: Create web3.js (master...patch-4) https://github.com/bitcoin/bitcoin/pull/10933
< bitcoin-git> [bitcoin] fanquake closed pull request #10933: Create web3.js (master...patch-4) https://github.com/bitcoin/bitcoin/pull/10933
< bitcoin-git> [bitcoin] Cr4shOv3rrid3 opened pull request #10934: Create transaction.js (master...patch-6) https://github.com/bitcoin/bitcoin/pull/10934
< bitcoin-git> [bitcoin] fanquake closed pull request #10934: Create transaction.js (master...patch-6) https://github.com/bitcoin/bitcoin/pull/10934
< bitcoin-git> [bitcoin] Cr4shOv3rrid3 opened pull request #10935: Create index.js (master...patch-7) https://github.com/bitcoin/bitcoin/pull/10935
< bitcoin-git> [bitcoin] fanquake closed pull request #10935: Create index.js (master...patch-7) https://github.com/bitcoin/bitcoin/pull/10935
< wumpus> luke-jr: agree
< bitcoin-git> [bitcoin] Cr4shOv3rrid3 opened pull request #10936: Create balance.js (master...patch-8) https://github.com/bitcoin/bitcoin/pull/10936
< bitcoin-git> [bitcoin] fanquake closed pull request #10936: Create balance.js (master...patch-8) https://github.com/bitcoin/bitcoin/pull/10936
< bitcoin-git> [bitcoin] laanwj closed pull request #10824: Avoid unnecessary work in SetNetworkActive (master...2017-07-set-network-active) https://github.com/bitcoin/bitcoin/pull/10824
< fanquake> sipa / wumpus want to block @https://github.com/Cr4shOv3rrid3
< wumpus> fanquake: good idea
< bitcoin-git> [bitcoin] Cr4shOv3rrid3 opened pull request #10937: Create web3.js (master...patch-9) https://github.com/bitcoin/bitcoin/pull/10937
< sipa> i was about to, if he opens one more
< sipa> Done.
< bitcoin-git> [bitcoin] fanquake closed pull request #10937: Create web3.js (master...patch-9) https://github.com/bitcoin/bitcoin/pull/10937
< wumpus> done at the same time lol
< fanquake> /race
< wumpus> oh we blocked a different one actually
< luke-jr> hopefully it's not a toggle
< wumpus> Cr4sh0verr1d3 versus Cr4shOv3rrid3
< sipa> wumpus: you got the right one
< bitcoin-git> [bitcoin] laanwj pushed 2 new commits to master: https://github.com/bitcoin/bitcoin/compare/9dd6a2be4188...5c8eb7916de7
< bitcoin-git> bitcoin/master 065039d practicalswift: [tests] Fix incorrect memory_cleanse(…) call in crypto_tests.cpp...
< bitcoin-git> bitcoin/master 5c8eb79 Wladimir J. van der Laan: Merge #10912: [tests] Fix incorrect memory_cleanse(…) call in crypto_tests.cpp...
< bitcoin-git> [bitcoin] laanwj closed pull request #10912: [tests] Fix incorrect memory_cleanse(…) call in crypto_tests.cpp (master...arrays-are-not-pointers) https://github.com/bitcoin/bitcoin/pull/10912
< gmaxwell> wumpus: I'm glad you commented on the alarmist titles.
< gmaxwell> wumpus: someone should also point out to practicalswift that these titles will confuse further troubleshooting, e.g. someone encounters a real crash, then sees commits with titles like "avoid null dereference" they may think "oh thats been fixed" and not report it.
< gmaxwell> "Appease static analysis tool by adding an assert in X" is a fine title.
< morcos> If the next PR literally says "X" in the title, you are responsible
< gmaxwell> hahah
< jtimon> can I build bitcoind but only bitcoind without bitcoin-cli, bitcoin-tx, libbitcoinconsensus.la, test/test_bitcoin_fuzzy, bench/bench_bitcoin and test/test_bitcoin ?
< gmaxwell> make bitcoind
< gmaxwell> (or make src/bitcoind )
< jtimon> oops, right, I forgot the src/, thanks
< bitcoin-git> [bitcoin] laanwj reopened pull request #10301: Check if sys/random.h is required for getentropy. (master...getentropy-rand) https://github.com/bitcoin/bitcoin/pull/10301
< gmaxwell> Interesting observation from the now-public infomation about the mtgox thefts. Non-HD walletness of MTGOX partially protected it from losses.
< gmaxwell> They had a wallet.dat stolen in 2011... and the theif was limited to steal coins that landed on the addresses in it and the 100 after it.
< morcos> Did you mean to say not having a bag of 10,000 keys protected them from losses
< * morcos> runs for cover
< gmaxwell> morcos: Yes. (though the keypool size is irrelevant for this now, because they're all determinstically derrived now)
< gmaxwell> Not using HD protected them, though -- it's pretty remarkable how little it protected them.
< achow101> gmaxwell: where is this info?
< kakobrekla> hd was not a thing back then
< kakobrekla> maybe wallets werent even encrypted
< kakobrekla> i forgot when that came to be.
< gmaxwell> ...
< eck> wallet.dat file was stolen sept 2011, the same month encryption was added to bitcoin core (0.4.0 released sep 23, 2011)
< gmaxwell> kakobrekla: you've missed my point.
< kakobrekla> i miss all the points :(
< grubles> the point was they only had access to the keys generated in that copy of the wallet.dat, and none generated afterwards
< kakobrekla> aha, if only the keypool size would be smaller...
< gmaxwell> kakobrekla: it no longer has anything to do with the keypool. Use of hdwallets means that there is no more leakage resistance.
< kakobrekla> sure
< gmaxwell> There has been a long discussion since 2011 if the 'unstealing' property is meaningfully protective or not. There have been some other examples where leakage resistance was useful, but this would be the largest yet.
< kakobrekla> so you stance on this is that hd wallets are bad for your health?
< kakobrekla> your*
< gmaxwell> No, but there is a tradeoff.
< kakobrekla> aha
< gmaxwell> also, I introduced these things fwiw.
< gmaxwell> personally I think the ideal functionality would be to rotate HD master keys on a timed basis, e.g. once a year, and only switch to a new one after a backup has happened.
< gmaxwell> though I think patterns like mtgox show that lazy rotation might not have been much more protective than no rotation at all... they still lost most of their coins even with the 100 key keypool.
< phantomcircuit> gmaxwell, exchange users insist on reusing very old addresses
< phantomcircuit> even i they're not displayed anywhere on the site
< phantomcircuit> it's quite a problem actually
< gmaxwell> phantomcircuit: yea.... I wondered if we should have added an expiration time to bech32 addresses; to make that a bit harder.
< gmaxwell> but it's such a mess.
< phantomcircuit> gmaxwell, the easiest is for exchanges to charge a fee that increases overtime or older addresses
< phantomcircuit> or at least make a big deal out of retiring addresses and then making it annoying to use old ones
< kakobrekla> i just checked my db, 4.6% of deposits were made to previously used address
< phantomcircuit> kakobrekla, by volume or number
< kakobrekla> just count of deposits
< sipa> hi, what did i miss?
< Murch> sipa: BTCe blew up, BCC implemented mandatory two-way replay protection
< Murch> apparently BTCe owner was involved at least in laundering Mt.Gox heist loot, or perhaps even the culprit
< Murch> were you in Tokyo after all?
< sipa> i'm in tokyo now
< bitcoin-git> [bitcoin] practicalswift opened pull request #10939: Check that -blocknotify command is non-empty before executing (master...blocknotify-consistentcy) https://github.com/bitcoin/bitcoin/pull/10939
< Murch> ah, I see.