Commit graph

7 commits

Author SHA1 Message Date
Ignotus Peverell
e4ca924b47
Various comment and dead wood cleanup 2017-04-20 11:31:02 -07:00
greybeard355113
ca496ee101 secp256k1zkp: Fix several warnings from implicitly declared function 'memcpy' (#42)
Added includes for <string.h> to explicitly declare 'memcpy' where needed.

This message is typical of messages suppressed by declaring 'memcpy':

    warning: In file included from depend/secp256k1-zkp/src/secp256k1.c:14:0:
    warning: depend/secp256k1-zkp/src/ecmult_impl.h: In function ‘secp256k1_ecmult_context_clone’:
    warning: depend/secp256k1-zkp/src/ecmult_impl.h:186:9: warning: implicit declaration of function ‘memcpy’ [-Wimplicit-function-declaration]
    warning:          memcpy(dst->pre_g, src->pre_g, size);
    warning:          ^~~~~~
2017-04-15 16:38:51 -07:00
Jacob Payne
9e82fb1774 Replace AsFixedBytes with Sized + AsRef<[u8]> (#35)
* Replace AsFixedBytes with Sized + AsRef<[u8]>
* Add AsRef<u8> to impl_array_newtype!
* Include AsFixedBytes as marker trait
* Related fixes
* Remove Deref
2017-04-06 22:54:54 -07:00
Ignotus Peverell
6bd3fc0d48
Cleanup of Transaction and Block data structures
Some renaming and cleanup of the Input, Output, Transaction and
Block structs. The main change is the removal of all the overt
structures which are now replaced by a specialized module to
build transactions easily. More specifically:

* Rename the TxProof to TxKernel in Block to reflect the current
naming consensus in MimbleWimble.
* Change Input and Output to be plain structs instead of enums
making their manipulation a lot easier. The building of
transactions is now handled by the build module.
* Input now directly includes the commitment of the Output it's
spending instead of going through an intermediate hash.
* The new build module encapsulates all the transaction building
logic, making it very straightforward by chaining combinators.
* Moves some tests to the core mod.rs as they required being able
to build a transaction to test it.
2017-03-20 14:07:00 -07:00
GarrickOllivander
2e6d3d9fdb Safer serialization of base types (#18)
* use MESSAGE_SIZE constant instead of 32
* use Hashed trait in genesis
* safer serialization of Hash
* Hashed of [u8] should send only data to hash function, not length + data
* Safer serialization of Proof
* Safer serialization of Commitment
* Safer serialization of RangeProof
* introduce read_limited_vec instead of potential panic in conversion
2016-12-17 13:44:14 -08:00
Ignotus Peverell
2e361fb2a4
Cleaned spurious debug. 2016-11-29 18:47:00 -08:00
Ignotus Peverell
f73a308bf3
Initial import. 2016-10-20 20:06:12 -04:00