server: Index | Files | Directories

package server

import ""

Package server provides the Katzenpost server.


Package Files

doc.go mixkey.go periodic.go server.go


var ErrGenerateOnly = errors.New("server: GenerateOnly set")

ErrGenerateOnly is the error returned when the server initialization terminates due to the `GenerateOnly` debug config option.

type Server Uses

type Server struct {
    // contains filtered or unexported fields

Server is a Katzenpost server instance.

func New Uses

func New(cfg *config.Config) (*Server, error)

New returns a new Server instance parameterized with the specified configuration.

func (*Server) IdentityKey Uses

func (s *Server) IdentityKey() *eddsa.PublicKey

IdentityKey returns the running server's identity public key.

func (*Server) RotateLog Uses

func (s *Server) RotateLog()

RotateLog rotates the log file if logging to a file is enabled.

func (*Server) Shutdown Uses

func (s *Server) Shutdown()

Shutdown cleanly shuts down a given Server instance.

func (*Server) Wait Uses

func (s *Server) Wait()

Wait waits till the server is terminated for any reason.


cborpluginPackage cborplugin is a plugin system allowing mix network services to be added in any language.
configPackage config provides the Katzenpost server configuration.
internal/constantsPackage constants defines internal constants for the Katzenpost server.
internal/cryptoworkerPackage cryptoworker implements the Katzenpost Sphinx crypto worker.
internal/debugPackage debug implements useful helper routines to aid debugging.
internal/decoyPackage decoy implements the decoy traffic source and sink.
internal/gluePackage glue implements the glue structure that ties all the internal subpackages together.
internal/incomingPackage incoming implements the incoming connection support.
internal/mixkeyPackage mixkey provides persistent mix keys and associated utilities.
internal/outgoingPackage outgoing implements the outgoing connection support.
internal/packetPackage packet implements the Katzenpost server side packet structure.
internal/pkiPackage pki implements the server PKI handler.
internal/pkicachePackage pkicache provides a rudimentary cached representation of a PKI Document suitable for server use.
internal/providerPackage provider implements the Katzenpost sever provider.
internal/provider/kaetzchenPackage kaetzchen implements support for provider side auto-responder agents.
internal/schedulerPackage scheduler implements the Katzenpost server scheduler.
internal/sqldbPackage sqldb interfaces the Katzenpost server with a SQL database.
registrationPackage provides registration protocol constants
spoolPackage spool defines the Katzenpost server user message spool abstract interface.
spool/boltspoolPackage boltspool implements the Katzenpost server user message spool with a simple boltdb based backend.
userdbPackage userdb defines the Katzenpost server user database abstract interface.
userdb/boltuserdbPackage boltuserdb implements the Katzenpost server user database with a simple boltdb based backend.
userdb/externuserdbPackage externuserdb implements the Katzenpost server user database with http calls to a external authorization source (expected to run in localhost).

Package server imports 29 packages (graph) and is imported by 2 packages. Updated 2020-10-13. Refresh now. Tools for package owners.