Versions in this module Expand all Collapse all v0 v0.0.1 Mar 25, 2022 Changes in this version + func ConvertAddrToStr(addr []byte) string + func GenerateUser() ([]byte, error) + func Version() string + type Address struct + func NewAddress(addr string) *Address + func NewAddressFromBytes(addr []byte) *Address + func (r *Address) Bytes() []byte + func (r *Address) Cohort() uint32 + func (r *Address) String() string + type Config struct + ListMessageTime time.Duration + LocalPeerAnnounce bool + LocalPeerDiscover bool + Logger *log.Logger + MaxInCohortConn uint + MaxOutCohortConn uint + PeerRetryTime time.Duration + ScanPeerTime time.Duration + VerifyServerCert bool + func DefaultConfig() *Config + type Database interface + AddPeer func(url string, digest *pb.Digest) + ClientHandle func(id [hashTruncate]byte) PeerHandle + EnumeratePeers func() PeerEnumerate + GetMessage func(hash [hashSize]byte) (msg []byte, pow uint64) + GetUrlByHash func(urlHash [hashTruncate]byte) (url string) + IgnoreMessage func(digest *pb.Digest) + StoreDecryptedMessage func(*Message) + StoreMessage func(hash [hashSize]byte, c *pb.MsgContainer, f func() (cohort uint32, err error)) error + type Message struct + Content []byte + SendTime time.Time + Sender *Address + type PeerEnumerate interface + Close func() + Cohort func() uint32 + Connect func(id [hashTruncate]byte, cohort uint32) PeerHandle + Next func(error) bool + Url func() string + type PeerHandle interface + AckMessages func() + AddKnownMessages func([]*pb.Digest) []*pb.Digest + AddKnownPeers func([]*pb.Digest) []*pb.Digest + Disconnect func(error) + ListMessages func(size uint) []*pb.Digest + ListPeers func(size uint) []*pb.Digest + type User struct + func OpenSupernode(db Database, cert tls.Certificate, cfg *Config) *User + func OpenUser(db Database, userKey []byte, cert tls.Certificate, cfg *Config) *User + func (u *User) AddPeer(url string) + func (u *User) Address() *Address + func (u *User) ListServers() (ret []string) + func (u *User) NewMessage(recipient *Address, msg []byte) error + func (u *User) Run(ctx context.Context) + func (u *User) RunServer(ctx context.Context, serverAddr, listenAddr string) error + func (u *User) RunServerUpnp(ctx context.Context, serverAddr string) error