Documentation
¶
Index ¶
- type AssociationStateResult
- type GroupMessageValidationResult
- type IdentityInput
- type IdentityStore
- type IdentityValidationResult
- type InboxIdKeyPackage
- type InboxIdValidationResult
- type MLSValidationOptions
- type MLSValidationService
- type MLSValidationServiceImpl
- func (s *MLSValidationServiceImpl) GetAssociationState(ctx context.Context, oldUpdates []*associations.IdentityUpdate, ...) (*AssociationStateResult, error)
- func (s *MLSValidationServiceImpl) ValidateGroupMessagePayloads(ctx context.Context, groupMessagePayloads [][]byte) ([]GroupMessageValidationResult, error)
- func (s *MLSValidationServiceImpl) ValidateGroupMessages(ctx context.Context, groupMessages []*mlsv1.GroupMessageInput) ([]GroupMessageValidationResult, error)
- func (s *MLSValidationServiceImpl) ValidateInboxIdKeyPackages(ctx context.Context, keyPackages [][]byte) ([]InboxIdValidationResult, error)
- func (s *MLSValidationServiceImpl) VerifySmartContractWalletSignatures(ctx context.Context, req *identity.VerifySmartContractWalletSignaturesRequest) (*identity.VerifySmartContractWalletSignaturesResponse, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AssociationStateResult ¶
type AssociationStateResult struct {
AssociationState *associations.AssociationState `protobuf:"bytes,1,opt,name=association_state,json=associationState,proto3" json:"association_state,omitempty"`
StateDiff *associations.AssociationStateDiff `protobuf:"bytes,2,opt,name=state_diff,json=stateDiff,proto3" json:"state_diff,omitempty"`
}
type IdentityInput ¶
type IdentityStore ¶
type IdentityStore interface {
GetInboxLogs(
ctx context.Context,
req *identity.GetIdentityUpdatesRequest,
) (*identity.GetIdentityUpdatesResponse, error)
}
type InboxIdKeyPackage ¶
type InboxIdValidationResult ¶
type InboxIdValidationResult struct {
InstallationKey []byte
Credential *identity_proto.MlsCredential
Expiration uint64
}
type MLSValidationOptions ¶
type MLSValidationOptions struct {
GRPCAddress string `long:"grpc-address" description:"Address for the GRPC validation service"`
}
type MLSValidationService ¶
type MLSValidationService interface {
ValidateInboxIdKeyPackages(
ctx context.Context,
keyPackages [][]byte,
) ([]InboxIdValidationResult, error)
ValidateGroupMessages(
ctx context.Context,
groupMessages []*mlsv1.GroupMessageInput,
) ([]GroupMessageValidationResult, error)
ValidateGroupMessagePayloads(
ctx context.Context,
groupMessagePayloads [][]byte,
) ([]GroupMessageValidationResult, error)
GetAssociationState(
ctx context.Context,
oldUpdates []*associations.IdentityUpdate,
newUpdates []*associations.IdentityUpdate,
) (*AssociationStateResult, error)
VerifySmartContractWalletSignatures(
ctx context.Context,
req *identity.VerifySmartContractWalletSignaturesRequest,
) (*identity.VerifySmartContractWalletSignaturesResponse, error)
}
type MLSValidationServiceImpl ¶
type MLSValidationServiceImpl struct {
// contains filtered or unexported fields
}
func NewMlsValidationService ¶
func NewMlsValidationService( ctx context.Context, options MLSValidationOptions, identityStore IdentityStore, ) (*MLSValidationServiceImpl, error)
func (*MLSValidationServiceImpl) GetAssociationState ¶
func (s *MLSValidationServiceImpl) GetAssociationState( ctx context.Context, oldUpdates []*associations.IdentityUpdate, newUpdates []*associations.IdentityUpdate, ) (*AssociationStateResult, error)
func (*MLSValidationServiceImpl) ValidateGroupMessagePayloads ¶ added in v1.1.0
func (s *MLSValidationServiceImpl) ValidateGroupMessagePayloads( ctx context.Context, groupMessagePayloads [][]byte, ) ([]GroupMessageValidationResult, error)
func (*MLSValidationServiceImpl) ValidateGroupMessages ¶
func (s *MLSValidationServiceImpl) ValidateGroupMessages( ctx context.Context, groupMessages []*mlsv1.GroupMessageInput, ) ([]GroupMessageValidationResult, error)
func (*MLSValidationServiceImpl) ValidateInboxIdKeyPackages ¶
func (s *MLSValidationServiceImpl) ValidateInboxIdKeyPackages( ctx context.Context, keyPackages [][]byte, ) ([]InboxIdValidationResult, error)
func (*MLSValidationServiceImpl) VerifySmartContractWalletSignatures ¶
func (s *MLSValidationServiceImpl) VerifySmartContractWalletSignatures( ctx context.Context, req *identity.VerifySmartContractWalletSignaturesRequest, ) (*identity.VerifySmartContractWalletSignaturesResponse, error)
Click to show internal directories.
Click to hide internal directories.