mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-03-30 15:08:33 +00:00

* [NOD-517] Remove copyright notices from all doc.go. * [NOD-517] Updated the root doc.go. * [NOD-517] Remove all cov_report.sh and test_coverage.txt. * [NOD-517] Make all doc.go use the same style of comment. * [NOD-517] Update dagconfig doc.go. * [NOD-517] Update blockdag doc.go. * [NOD-517] Update doc.go in connmgr. * [NOD-517] Update doc.go in fullblocktests. * [NOD-517] Update doc.go in database. * [NOD-517] Update doc.go in ecc. * [NOD-517] Update doc.go in rpctest. * [NOD-517] Removed superfluous license in logs. * [NOD-517] Update doc.go in mempool. * [NOD-517] Updated doc.go in peer. * [NOD-517] Update doc.go in rpcclient. * [NOD-517] Update doc.go in txscript. * [NOD-517] Update doc.go in util. * [NOD-517] Update doc.go in base58. * [NOD-517] Update doc.go in bech32. * [NOD-517] Update doc.go in txsort. * [NOD-517] Update doc.go in wire. * [NOD-517] Fix indentation. * [NOD-517] Add a copyright notice to the main doc.go. * [NOD-517] Add Conformal to the license notices. * [NOD-517] Remove superfluous language from a doc. * [NOD-517] Fix bad example.
64 lines
1.9 KiB
Go
64 lines
1.9 KiB
Go
/*
|
|
Package dagconfig defines DAG configuration parameters.
|
|
|
|
In addition to the main Kaspa network, which is intended for the transfer
|
|
of monetary value, there also exists the following standard networks:
|
|
* testnet
|
|
* simnet
|
|
* devnet
|
|
* regression test
|
|
These networks are incompatible with each other (each sharing a different
|
|
genesis block) and software should handle errors where input intended for
|
|
one network is used on an application instance running on a different
|
|
network.
|
|
|
|
For library packages, dagconfig provides the ability to lookup DAG
|
|
parameters and encoding magics when passed a *Params.
|
|
|
|
For main packages, a (typically global) var may be assigned the address of
|
|
one of the standard Param vars for use as the application's "active" network.
|
|
When a network parameter is needed, it may then be looked up through this
|
|
variable (either directly, or hidden in a library call).
|
|
|
|
package main
|
|
|
|
import (
|
|
"flag"
|
|
"fmt"
|
|
"log"
|
|
|
|
"github.com/kaspanet/kaspad/util"
|
|
"github.com/kaspanet/kaspad/dagconfig"
|
|
)
|
|
|
|
var testnet = flag.Bool("testnet", false, "operate on the testnet Kaspa network")
|
|
|
|
// By default (without --testnet), use mainnet.
|
|
var dagParams = &dagconfig.MainNetParams
|
|
|
|
func main() {
|
|
flag.Parse()
|
|
|
|
// Modify active network parameters if operating on testnet.
|
|
if *testnet {
|
|
dagParams = &dagconfig.TestNetParams
|
|
}
|
|
|
|
// later...
|
|
|
|
// Create and print new payment address, specific to the active network.
|
|
pubKeyHash := make([]byte, 20)
|
|
addr, err := util.NewAddressPubKeyHash(pubKeyHash, dagParams)
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
fmt.Println(addr)
|
|
}
|
|
|
|
If an application does not use one of the standard Kaspa networks, a new
|
|
Params struct may be created which defines the parameters for the non-
|
|
standard network. As a general rule of thumb, all network parameters
|
|
should be unique to the network, but parameter collisions can still occur.
|
|
*/
|
|
package dagconfig
|