config

package
v1.0.0-release Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 19, 2024 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	// GUI
	WindowWidth  float32 `yaml:"windowWidth"`
	WindowHeight float32 `yaml:"windowHeight"`

	// SecuraChain node
	UserAgent       string `yaml:"userAgent"`
	ProtocolVersion string `yaml:"protocolVersion"`

	// ECDSA and AES keys path
	ECDSAKeyPairPath string `yaml:"ecdsaKeyPairPath"`
	AESKeyPath       string `yaml:"aesKeyPath"`

	// Connection manager
	LowWater  int `yaml:"lowWater"`
	HighWater int `yaml:"highWater"`

	// Network
	BootstrapPeers                        []string      `yaml:"bootstrapPeers"`
	ListeningPort                         uint          `yaml:"listeningPort"`
	DiscoveryRefreshInterval              time.Duration `yaml:"discoveryRefreshInterval"`
	AutorelayWithBackoffInterval          time.Duration `yaml:"autorelayWithBackoffInterval"`
	AutorelayWithMinCallbackInterval      time.Duration `yaml:"autorelayWithMinCallbackInterval"`
	KeepRelayConnectionAliveInterval      time.Duration `yaml:"keepRelayConnectionAliveInterval"`
	MaxRelayedConnectionDuration          time.Duration `yaml:"maxRelayedConnectionDuration"`
	MaxDataRelayed                        int64         `yaml:"maxDataRelayed"`
	RelayReservationTTL                   time.Duration `yaml:"relayReservationTTL"`
	MaxRelayReservations                  int           `yaml:"maxRelayReservations"`
	MaxRelayCircuits                      int           `yaml:"maxRelayCircuits"`
	MaxRelayedConnectionBufferSize        int           `yaml:"maxRelayedConnectionBufferSize"`
	MaxRelayReservationsPerPeer           int           `yaml:"maxRelayReservationsPerPeer"`
	MaxRelayReservationsPerIP             int           `yaml:"maxRelayReservationsPerIP"`
	MaxRelayReservationsPerASN            int           `yaml:"maxRelayReservationsPerASN"`
	IpfsProvidersDiscoveryRefreshInterval time.Duration `yaml:"ipfsProvidersDiscoveryRefreshInterval"`
	IP4tcp                                string        `yaml:"ip4tcp"`
	IP6tcp                                string        `yaml:"ip6tcp"`
	IP4quic                               string        `yaml:"ip4quic"`
	IP6quic                               string        `yaml:"ip6quic"`

	// PubSub
	RendezvousStringFlag               string `yaml:"rendezvousStringFlag"`
	ClientAnnouncementStringFlag       string `yaml:"clientAnnouncementStringFlag"`
	StorageNodeResponseStringFlag      string `yaml:"storageNodeResponseStringFlag"`
	KeepRelayConnectionAliveStringFlag string `yaml:"keepRelayConnectionAliveStringFlag"`
	BlockAnnouncementStringFlag        string `yaml:"blockAnnouncementStringFlag"`
	FullNodeAnnouncementStringFlag     string `yaml:"fullNodeAnnouncementStringFlag"`
	BlacklistStringFlag                string `yaml:"blacklistStringFlag"`
	AskingBlockchainStringFlag         string `yaml:"askingBlockchainStringFlag"`
	ReceiveBlockchainStringFlag        string `yaml:"receiveBlockchainStringFlag"`
	AskMyFilesStringFlag               string `yaml:"askMyFilesStringFlag"`
	SendFilesStringFlag                string `yaml:"sendFilesStringFlag"`
	NetworkVisualisationStringFlag     string `yaml:"networkVisualisationStringFlag"`

	// Embedded IPFS node
	FileRights               int    `yaml:"fileRights"`
	FileMetadataRegistryJSON string `yaml:"fileMetadataRegistryJson"`
	MemorySpace              uint   `yaml:"memorySpace"`
	FileSizeLimit            uint64 `yaml:"fileSizeLimit"`

	// Blockchain
	SecuraChainDataPath  string `yaml:"securaChainDataPath"`
	BlockRegistryPath    string `yaml:"blockRegistryPath"`
	IndexingRegistryPath string `yaml:"indexingRegistryPath"`
}

func LoadConfig

func LoadConfig(yamlConfigFilePath string) (*Config, error)

Function to load the yaml config file

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL