Documentation
¶
Index ¶
- func BeginChat(c pb.StrikeClient, username string, chatTarget string, chatName string) error
- func ClientSignup(c pb.StrikeClient, username string, password string, curve25519key []byte, ...) error
- func ComputeSharedSecret(privateCurveKey []byte, inboundKey []byte) ([]byte, error)
- func ConfirmChat(ctx context.Context, c pb.StrikeClient, chatRequest *pb.BeginChatRequest, ...) error
- func ConfirmKeyExchange(ctx context.Context, c pb.StrikeClient, target string, status bool, ...)
- func ConnectPayloadStream(ctx context.Context, c pb.StrikeClient, username string, ...) error
- func InitiateKeyExchange(ctx context.Context, c pb.StrikeClient, target string, username string, ...)
- func Login(c pb.StrikeClient, username string, password string) error
- func LoginInput(prompt string, reader *bufio.Reader) (string, error)
- func MessagingShell(c pb.StrikeClient, username string, keys map[string][]byte)
- func ProcessChatRequests(ch <-chan *pb.BeginChatRequest, cache map[string]*pb.BeginChatRequest, ...)
- func ProcessConfirmChatRequests(c pb.StrikeClient, ch <-chan *pb.ConfirmChatRequest, cache map[string]*pb.Chat, ...)
- func ProcessEnvelopes(ch <-chan *pb.Envelope, idleTimeout time.Duration, workerCount *int, ...)
- func ProcessKeyExchangeConfirmations(c pb.StrikeClient, ch <-chan *pb.KeyExchangeConfirmation, ...)
- func ProcessKeyExchangeRequests(c pb.StrikeClient, ch <-chan *pb.KeyExchangeRequest, cache map[string]*pb.Chat, ...)
- func ProcessKeyExchangeResponses(c pb.StrikeClient, ch <-chan *pb.KeyExchangeResponse, ...)
- func ReciprocateKeyExchange(ctx context.Context, c pb.StrikeClient, target string, username string, ...)
- func SendMessage(c pb.StrikeClient, username string, publicKey []byte, target string, ...)
- func VerifyEdSignatures(pubKey ed25519.PublicKey, nonce, CurvePublicKey []byte, sigs [][]byte) bool
- type ClientCache
- type Demultiplexer
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ClientSignup ¶
func ComputeSharedSecret ¶
func ConfirmChat ¶
func ConfirmChat(ctx context.Context, c pb.StrikeClient, chatRequest *pb.BeginChatRequest, inviteState bool) error
func ConfirmKeyExchange ¶
func ConnectPayloadStream ¶
func InitiateKeyExchange ¶
func LoginInput ¶
TODO: Handle all input like this?
func MessagingShell ¶
func MessagingShell(c pb.StrikeClient, username string, keys map[string][]byte)
TODO: No longer fit for purpose - Terminal UI library time
func ProcessChatRequests ¶
func ProcessChatRequests(ch <-chan *pb.BeginChatRequest, cache map[string]*pb.BeginChatRequest, idleTimeout time.Duration, workerCount *int, mu *sync.Mutex)
func ProcessEnvelopes ¶
func ReciprocateKeyExchange ¶
func SendMessage ¶
Types ¶
type ClientCache ¶
type Demultiplexer ¶
type Demultiplexer struct {
// contains filtered or unexported fields
}
func NewDemultiplexer ¶
func NewDemultiplexer(c pb.StrikeClient, chatCache map[string]*pb.Chat, inviteCache map[string]*pb.BeginChatRequest, keys map[string][]byte, username string) *Demultiplexer
func (*Demultiplexer) Dispatcher ¶
func (d *Demultiplexer) Dispatcher(msg *pb.StreamPayload)
func (*Demultiplexer) StartMonitoring ¶
func (d *Demultiplexer) StartMonitoring(c pb.StrikeClient, chatCache map[string]*pb.Chat, inviteCache map[string]*pb.BeginChatRequest, keys map[string][]byte, username string)
Click to show internal directories.
Click to hide internal directories.