This commit is contained in:
ycc
2022-12-18 19:47:44 +01:00
parent b0cf89e428
commit 8fa4a359b0
5 changed files with 67 additions and 56 deletions

View File

@ -7,12 +7,7 @@ import (
"google.golang.org/protobuf/proto"
)
func ProcessOutboundTextMessage(peer *Peer, text string, srv *InternalServer) ([]byte, error) {
// Creating User message
usermessage, err := peer.BuildSimpleUserMessage([]byte(text))
if err != nil {
return nil, err
}
func ProcessOutputUserMessage(peer *Peer, usermessage *meowlib.UserMessage) (*meowlib.PackedUserMessage, error) {
serializedMessage, err := peer.SerializeUserMessage(usermessage)
if err != nil {
return nil, err
@ -26,13 +21,28 @@ func ProcessOutboundTextMessage(peer *Peer, text string, srv *InternalServer) ([
// Packing it
packedMsg := peer.PackUserMessage(EncMsg, EncMsgSignature)
return packedMsg, nil
}
func ProcessOutboundTextMessage(peer *Peer, text string, srv *InternalServer) ([]byte, error) {
// Creating User message
usermessage, err := peer.BuildSimpleUserMessage([]byte(text))
if err != nil {
return nil, err
}
// Prepare cyphered + packed user message
packedMsg, err := ProcessOutputUserMessage(peer, usermessage)
if err != nil {
return nil, err
}
// Creating Server message for transporting the user message
toServerMessage, err := srv.BuildMessageSendingMessage(packedMsg)
toServerMessageBA, err := srv.BuildMessageSendingMessage(packedMsg)
if err != nil {
return nil, err
}
// Encrypting it
encToServerMessage, encToServerMessageSignature, err := srv.AsymEncryptMessage(toServerMessage)
encToServerMessage, encToServerMessageSignature, err := srv.AsymEncryptMessage(toServerMessageBA)
if err != nil {
return nil, err
}

View File

@ -90,7 +90,7 @@ func (p *Peer) BuildSimpleUserMessage(message []byte) (*meowlib.UserMessage, err
return &msg, nil
}
func (p *Peer) BuildFileMessage(filename string, message []byte) ([]meowlib.UserMessage, error) {
func (p *Peer) BuildSingleFileMessage(filename string, message []byte) ([]meowlib.UserMessage, error) {
var msgs []meowlib.UserMessage
fi, err := os.Stat(filename)
if err != nil {
@ -119,12 +119,14 @@ func (p *Peer) BuildFileMessage(filename string, message []byte) ([]meowlib.User
break
}
var msg meowlib.UserMessage
var file meowlib.File
msg.Destination = p.Contact.LookupPublicKey
msg.From = p.MyIdentity.Public
msg.File.Filename = fi.Name()
msg.File.Chunk = uint32(chunk)
msg.File.Data = b[:readTotal]
msg.File.Size = uint64(fi.Size())
file.Filename = fi.Name()
file.Chunk = uint32(chunk)
file.Data = b[:readTotal]
file.Size = uint64(fi.Size())
msg.Files = append(msg.Files, &file)
msg.Type = "2"
if chunk == 0 {
msg.Status = &meowlib.UserMessage_ConversationStatus{}