Documentation
¶
Index ¶
- Variables
- func MaxSupportedProtocolVersion() uint16
- func SetDefaultLogLoggerLevel(level slog.Level) (oldLevel slog.Level)
- func SetDefaultLogger(logger *slog.Logger)
- type Codec
- type CommitResult
- type Decryptor
- func (d *Decryptor) Decrypt(mediaType MediaType, frame []byte, decryptedFrame []byte) (int, error)
- func (d *Decryptor) GetMaxPlaintextByteSize(mediaType MediaType, encryptedFrameSize int) int
- func (d *Decryptor) GetStats(mediaType MediaType) *DecryptorStats
- func (d *Decryptor) TransitionToKeyRatchet(keyRatchet *KeyRatchet)
- func (d *Decryptor) TransitionToPassthroughMode(passthroughMode bool)
- type DecryptorStats
- type Encryptor
- func (e *Encryptor) AssignSsrcToCodec(ssrc uint32, codec Codec)
- func (e *Encryptor) Encrypt(mediaType MediaType, ssrc uint32, frame []byte, encryptedFrame []byte) (int, error)
- func (e *Encryptor) GetMaxCiphertextByteSize(mediaType MediaType, frameSize int) int
- func (e *Encryptor) GetProtocolVersion() uint16
- func (e *Encryptor) GetStats(mediaType MediaType) *EncryptorStats
- func (e *Encryptor) HasKeyRatchet() bool
- func (e *Encryptor) IsPassthroughMode() bool
- func (e *Encryptor) SetKeyRatchet(keyRatchet *KeyRatchet)
- func (e *Encryptor) SetPassthroughMode(passthroughMode bool)
- type EncryptorStats
- type KeyRatchet
- type MediaType
- type Session
- func (s *Session) GetKeyRatchet(userID string) *KeyRatchet
- func (s *Session) GetLastEpochAuthenticator() []byte
- func (s *Session) GetMarshalledKeyPackage() []byte
- func (s *Session) GetPairwiseFingerprint(version uint16, userID string) []byte
- func (s *Session) GetProtocolVersion() uint16
- func (s *Session) Init(version uint16, channelID uint64, selfUserID string)
- func (s *Session) ProcessCommit(commit []byte) *CommitResult
- func (s *Session) ProcessProposals(proposals []byte, recognizedUserIDs []string) []byte
- func (s *Session) ProcessWelcome(welcome []byte, recognizedUserIDs []string) *WelcomeResult
- func (s *Session) Reset()
- func (s *Session) SetExternalSender(externalSender []byte)
- func (s *Session) SetProtocolVersion(version uint16)
- type WelcomeResult
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrGenericEncryptionFailure = errors.New("failed to encrypt frame") ErrGenericDecryptionFailure = errors.New("failed to decrypt frame") ErrMissingKeyRatchet = errors.New("missing key ratchet") ErrInvalidNonce = errors.New("invalid nonce") ErrMissingCryptor = errors.New("missing cryptor") ErrTooManyAttempts = errors.New("too many attempts to encrypt the frame failed") )
Functions ¶
func MaxSupportedProtocolVersion ¶
func MaxSupportedProtocolVersion() uint16
MaxSupportedProtocolVersion returns the maximum supported libdave protocol version.
func SetDefaultLogLoggerLevel ¶
SetDefaultLogLoggerLevel sets the log level for libdave logs. By default, the level is set to slog.LevelError. It returns the previous log level.
func SetDefaultLogger ¶
SetDefaultLogger sets the default logger used by libdave.
Types ¶
type CommitResult ¶
type CommitResult struct {
// contains filtered or unexported fields
}
func (*CommitResult) GetRosterMemberIDs ¶
func (r *CommitResult) GetRosterMemberIDs() []uint64
func (*CommitResult) GetRosterMemberSignature ¶
func (r *CommitResult) GetRosterMemberSignature(rosterID uint64) []byte
func (*CommitResult) IsFailed ¶
func (r *CommitResult) IsFailed() bool
func (*CommitResult) IsIgnored ¶
func (r *CommitResult) IsIgnored() bool
type Decryptor ¶
type Decryptor struct {
// contains filtered or unexported fields
}
func NewDecryptor ¶
func NewDecryptor() *Decryptor
func (*Decryptor) GetMaxPlaintextByteSize ¶
func (*Decryptor) GetStats ¶
func (d *Decryptor) GetStats(mediaType MediaType) *DecryptorStats
func (*Decryptor) TransitionToKeyRatchet ¶
func (d *Decryptor) TransitionToKeyRatchet(keyRatchet *KeyRatchet)
func (*Decryptor) TransitionToPassthroughMode ¶
type DecryptorStats ¶
type Encryptor ¶
type Encryptor struct {
// contains filtered or unexported fields
}
func NewEncryptor ¶
func NewEncryptor() *Encryptor
func (*Encryptor) AssignSsrcToCodec ¶
func (*Encryptor) GetMaxCiphertextByteSize ¶
func (*Encryptor) GetProtocolVersion ¶
func (*Encryptor) GetStats ¶
func (e *Encryptor) GetStats(mediaType MediaType) *EncryptorStats
func (*Encryptor) HasKeyRatchet ¶
func (*Encryptor) IsPassthroughMode ¶
func (*Encryptor) SetKeyRatchet ¶
func (e *Encryptor) SetKeyRatchet(keyRatchet *KeyRatchet)
func (*Encryptor) SetPassthroughMode ¶
type EncryptorStats ¶
type KeyRatchet ¶
type KeyRatchet struct {
// contains filtered or unexported fields
}
type Session ¶
type Session struct {
// contains filtered or unexported fields
}
func NewSession ¶
func (*Session) GetKeyRatchet ¶
func (s *Session) GetKeyRatchet(userID string) *KeyRatchet
func (*Session) GetLastEpochAuthenticator ¶
func (*Session) GetMarshalledKeyPackage ¶
func (*Session) GetPairwiseFingerprint ¶
func (*Session) GetProtocolVersion ¶
func (*Session) ProcessCommit ¶
func (s *Session) ProcessCommit(commit []byte) *CommitResult
func (*Session) ProcessProposals ¶
func (*Session) ProcessWelcome ¶
func (s *Session) ProcessWelcome(welcome []byte, recognizedUserIDs []string) *WelcomeResult
func (*Session) SetExternalSender ¶
func (*Session) SetProtocolVersion ¶
type WelcomeResult ¶
type WelcomeResult struct {
// contains filtered or unexported fields
}
func (*WelcomeResult) GetRosterMemberIDs ¶
func (w *WelcomeResult) GetRosterMemberIDs() []uint64
func (*WelcomeResult) GetRosterMemberSignature ¶
func (w *WelcomeResult) GetRosterMemberSignature(rosterID uint64) []byte
Click to show internal directories.
Click to hide internal directories.