diff options
Diffstat (limited to 'internal/packet')
| -rw-r--r-- | internal/packet/packet.go | 8 | ||||
| -rw-r--r-- | internal/packet/types.go | 21 |
2 files changed, 29 insertions, 0 deletions
diff --git a/internal/packet/packet.go b/internal/packet/packet.go index 57260da..e629f32 100644 --- a/internal/packet/packet.go +++ b/internal/packet/packet.go @@ -76,6 +76,9 @@ const ( PacketSetMember PacketMembersInfo + PacketTrustUser + PacketTrustInfo + PacketMax ) @@ -234,6 +237,11 @@ func (p Packet) DecodedPayload() (Payload, error) { case PacketMembersInfo: payload = &MembersInfo{} + case PacketTrustUser: + payload = &TrustUser{} + case PacketTrustInfo: + payload = &TrustInfo{} + default: assert.Never("unexpected packet.PacketType", "type", p.Type()) } diff --git a/internal/packet/types.go b/internal/packet/types.go index f142a48..5dba38b 100644 --- a/internal/packet/types.go +++ b/internal/packet/types.go @@ -1,6 +1,8 @@ package packet import ( + "crypto/ed25519" + "github.com/kyren223/eko/internal/data" "github.com/kyren223/eko/pkg/snowflake" ) @@ -203,3 +205,22 @@ type GetUserData struct{} func (m *GetUserData) Type() PacketType { return PacketGetUserData } + +type TrustUser struct { + User snowflake.ID + Trust bool +} + +func (m *TrustUser) Type() PacketType { + return PacketTrustUser +} + +type TrustInfo struct { + Trusteds []snowflake.ID + TrustedPublicKeys []ed25519.PublicKey + RemovedTrusteds []snowflake.ID +} + +func (m *TrustInfo) Type() PacketType { + return PacketTrustInfo +} |
