forked from TrueCloudLab/neoneo-go
30e5aa8f48
* [database] - Add Prefix method to interface - Convert leveldb error to `database error` - Be explicit with prefixedKey in `Table` as slices can be pointers * [protocol] - Add stringer method to protocol * [Chaindb] - Added saveBlock() which will allow us to save a block into the database. The block is broken up into transactions and Headers. The headers are saved as is. The transactions are saved as is, then the utxos in the transactions are collected to make the utxo db. - Verification for blocks and transactions will reside in the same package. Note that the save methods are all unexported, while the Get methods are exported. Making it so that any can call a get method, but only code in this package may save to the database. The other code which will reside in this package will be code verification logic. * [chaindb] - Added saveHeader function which saveHeaders uses - Update the latest header, each time we save a header instead of after a batch. This is so that we can call saveHeader without saveHeaders. This functionality can be rolled back if the performance of updating the header after a batch is significant - small refactor in test code
44 lines
998 B
Go
44 lines
998 B
Go
package protocol
|
|
|
|
//Version represents the latest protocol version for the neo node
|
|
type Version uint32
|
|
|
|
const (
|
|
// DefaultVersion is the nodes default protocol version
|
|
DefaultVersion Version = 0
|
|
// UserAgent is the nodes user agent or human-readable name
|
|
UserAgent = "/NEO-GO/"
|
|
)
|
|
|
|
// ServiceFlag indicates the services provided by the node. 1 = P2P Full Node
|
|
type ServiceFlag uint64
|
|
|
|
// List of Services offered by the node
|
|
const (
|
|
NodePeerService ServiceFlag = 1
|
|
// BloomFilerService ServiceFlag = 2 // Not implemented
|
|
// PrunedNode ServiceFlag = 3 // Not implemented
|
|
// LightNode ServiceFlag = 4 // Not implemented
|
|
|
|
)
|
|
|
|
// Magic is the network that NEO is running on
|
|
type Magic uint32
|
|
|
|
// List of possible networks
|
|
const (
|
|
MainNet Magic = 7630401
|
|
TestNet Magic = 0x74746e41
|
|
)
|
|
|
|
// String implements the stringer interface
|
|
func (m Magic) String() string {
|
|
switch m {
|
|
case MainNet:
|
|
return "Mainnet"
|
|
case TestNet:
|
|
return "Testnet"
|
|
default:
|
|
return "UnknownNet"
|
|
}
|
|
}
|