Commit graph

175 commits

Author SHA1 Message Date
Gregory Sanders
2940c4e0ea remove tabs from IsValidPegin 2017-11-06 10:54:51 -05:00
Gregory Sanders
7dc4f9d442 remove CNumScript from pegin witness logic 2017-11-06 10:54:51 -05:00
Gregory Sanders
abafbacd82 change rpc test witness_program to claim_script 2017-11-06 10:54:51 -05:00
Gregory Sanders
851a30b266 Don't restrict pegin witness to 'witness program' definition 2017-11-06 10:54:51 -05:00
Gregory Sanders
13c3dad52f de-dupe calculate_contract code 2017-11-06 10:54:51 -05:00
Gregory Sanders
4aad513939 Add unit tests for peg-in authorization 2017-11-06 10:54:51 -05:00
Gregory Sanders
ff5e9cd74d mempool and policy support for peg-in inputs 2017-11-06 10:54:50 -05:00
Gregory Sanders
6bad4e9d75 add blocks that have pegins rejected to the reconsider queue 2017-11-06 10:54:50 -05:00
Gregory Sanders
0b9c5eb0e0 begin consensus support for peg-ins 2017-11-06 10:54:50 -05:00
Gregory Sanders
34d7cd072f add pegin witness validation and extraction helper functions 2017-11-06 10:13:28 -05:00
Gregory Sanders
9a9ac25ee1 genesis block has actual fee issuance in regtest 2017-11-06 09:51:52 -05:00
Gregory Sanders
65ed777e6e remove legacy peg-in/withdrawlocks 2017-11-06 09:51:45 -05:00
Jorge Timón
a730159690
p2p: Remove opt-in part of RBF 2017-10-01 00:56:15 +02:00
Jorge Timón
e17e0b81b6
Remove -mempoolreplacement option 2017-09-23 09:27:17 +02:00
Gregory Sanders
9a0ff5c7f6
Merge #221: CSurjectionCheck copies vector instead of swapping
87c1fc2 CSurjectionCheck copies vector instead of swapping (Gregory Sanders)
2017-09-22 11:34:45 -04:00
Gregory Sanders
87c1fc29af CSurjectionCheck copies vector instead of swapping 2017-09-22 11:03:35 -04:00
Gregory Sanders
224f7b83be remove asserts from verifyamounts, test commitment types 2017-09-21 10:14:34 -04:00
Arvid Norberg
d8a18ef34f fix incorrect bounds check to wit.vtxinwit access in ContextualCheckBlock 2017-09-08 00:02:24 +02:00
Gregory Sanders
ae1f058433 Only use chainparams to access BITCOINID as pegged_asset 2017-08-24 14:30:35 -04:00
Gregory Sanders
cf9efd84fc Merge pull request #220 from instagibbs/revertcheck
Revert ownership of CCheck to QueueCheck, return ScriptError
2017-08-03 10:02:31 +09:00
Gregory Sanders
9823c8889c Allow mempool withdrawlocks to be grabbed by clients during pegin 2017-07-25 18:55:15 -04:00
Gregory Sanders
29b1f21c77 Free relay reserved entirely for withdrawlock spends, not rate limited 2017-07-19 10:31:09 -04:00
Gregory Sanders
f3a4e5b798 Revert ownership of CCheck to QueueCheck, return ScriptError 2017-07-18 21:58:42 -04:00
Karl-Johan Alm
0cd7cc16d3
bad-txns-in-belowout -> bad-txns-in-ne-out
The error message indicates that the inputs exceed the outputs. In reality, at least for blinded transactions, the error will also appear if the in exceeds the out, i.e. this error appears for all transactions where inputs do not sum up to outputs.
2017-07-12 17:50:17 +09:00
Gregory Sanders
a288fff697 Only track locks with explicit asset types that are bitcoin 2017-06-16 12:02:37 -04:00
Jorge Timón
21620bd6ab Document -validatepegin in daemon help 2017-06-16 12:02:37 -04:00
Gregory Sanders
da87a78f98 give more accurate message for invalid block proof 2017-06-16 12:02:36 -04:00
Gregory Sanders
0bb5e092f3 f'Remove spendable 0-value outputs from consensus, wallet' 2017-06-16 12:02:36 -04:00
Gregory Sanders
4c33b2df83 f'Greatly simplify coinbase balance checking' 2017-06-16 12:02:36 -04:00
Gregory Sanders
6c3b1f25c0 Move asset issuance funcionality to own file 2017-06-16 12:02:35 -04:00
Gregory Sanders
05b245b9b5 CAssetIssuance validation 2017-06-16 12:02:35 -04:00
Mark Friedenbach
b4be08a70d Format: Fix indentation 2017-06-16 12:02:35 -04:00
Mark Friedenbach
91f40de0c5 CT: Switch to standard CConfidentialValue::IsCommitment() API instead checking the size of the commitment vector directly 2017-06-16 12:02:34 -04:00
Mark Friedenbach
4c8f785185 [Hard-Fork] CT/CA: Put the asset surjection proof, value range proof, and issuance rangeproofs under the witness commitment 2017-06-16 12:02:34 -04:00
Mark Friedenbach
88a31dff93 CT/CA: Enforce validity of confidential commitments via CConfidentialCommitment::IsValid() 2017-06-16 12:02:34 -04:00
Mark Friedenbach
58c21ae15c CT: Turn CTxOut::vchNonceCommitment into a CConfidentialCommitment subclass
Note: This changes the serialization of the nonce commitment, from an arbitrary length vector to an either 1 (null) or 33 (commitment) byte fixed format.
2017-06-16 12:02:34 -04:00
Mark Friedenbach
a2c0f11f8e CT/CA: Unify CTxOutAsset and CTxOutValue into a single templated abstract base class 2017-06-16 12:02:34 -04:00
Mark Friedenbach
9ebe6371a1 CT: Move CTxOutValue::vchNonceCommitment into CTxOut 2017-06-16 12:02:34 -04:00
Mark Friedenbach
515bed6331 CT: Move CTxOutValue::vchRangeproof into CTxOut 2017-06-16 12:02:34 -04:00
Mark Friedenbach
2103355a30 CA: Move CTxOutAsset::vchSurjectionproof into CTxOut 2017-06-16 12:02:34 -04:00
Mark Friedenbach
690a403a6d CT: CTxOutValue::IsAmount() -> CTxOutValue::IsExplicit() 2017-06-16 12:02:34 -04:00
Mark Friedenbach
6d3406185f CA: CTxOutAsset::vchAssetTag -> CTxOutAsset::vchCommitment 2017-06-16 12:02:34 -04:00
Mark Friedenbach
37230ccc1b CA: CTxOutAsset::IsAsset() -> CTxOutAsset::IsExplicit() 2017-06-16 12:02:34 -04:00
Mark Friedenbach
b1d487d3e7 CA: CTxOutAsset::IsAssetCommitment() -> CTXOutAsset::IsCommitment() 2017-06-16 12:02:33 -04:00
Jorge Timón
0f79b488a2 fixup! CA: Use fee asset instead of BITCOINID 2017-06-16 12:02:33 -04:00
Mark Friedenbach
8b2cb06617 CA: Switch CTxOutAsset::GetAssetID() to return a constant reference to the stored asset ID rather than perform unnecessary memory reallocation. 2017-06-16 12:02:33 -04:00
Mark Friedenbach
a25f6c6e08 CA: CAssetID -> CAsset 2017-06-16 12:02:33 -04:00
Mark Friedenbach
892cb984ae CA: uint256 -> CAssetID 2017-06-16 12:02:33 -04:00
Gregory Sanders
d650674bca ATMP: Remove assertion from state mutation 2017-06-16 12:02:18 -04:00
Gregory Sanders
29b8fe161b VerifyAmounts: break out asserts into result checks only 2017-06-16 12:02:18 -04:00