encryption + helpers + contact card compression + server routing start
This commit is contained in:
		@@ -54,12 +54,16 @@ func (pl *PeerList) GetFromName(name string) *Peer {
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p *Peer) BuildSimpleUserUMessage(message []byte) ([]byte, error) {
 | 
			
		||||
func (p *Peer) BuildSimpleUserUMessage(message []byte) (*meowlib.UserMessage, error) {
 | 
			
		||||
	var msg meowlib.UserMessage
 | 
			
		||||
	msg.From = p.Me.Public
 | 
			
		||||
	msg.Data = message
 | 
			
		||||
	msg.Type = "1"
 | 
			
		||||
	out, err := proto.Marshal(&msg)
 | 
			
		||||
	return &msg, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p *Peer) SerializeUserMessage(msg *meowlib.UserMessage) ([]byte, error) {
 | 
			
		||||
	out, err := proto.Marshal(msg)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
@@ -86,8 +90,8 @@ func (p *Peer) AsymDecryptMessage(Message []byte, Signature []byte) (DecryptedMe
 | 
			
		||||
	return DecryptedMessage, err
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Pack will package the previously encrypted message for sending it to the peer in protobuff format
 | 
			
		||||
func (p *Peer) Pack(message []byte, signature []byte) meowlib.PackedUserMessage {
 | 
			
		||||
// PackUserMessage will package the previously encrypted message for sending it to the peer in protobuff format
 | 
			
		||||
func (p *Peer) PackUserMessage(message []byte, signature []byte) meowlib.PackedUserMessage {
 | 
			
		||||
	var msg meowlib.PackedUserMessage
 | 
			
		||||
	msg.Destination = p.Contact.LookupPublicKey
 | 
			
		||||
	msg.From = p.Me.Public
 | 
			
		||||
@@ -96,6 +100,14 @@ func (p *Peer) Pack(message []byte, signature []byte) meowlib.PackedUserMessage
 | 
			
		||||
	return msg
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (ints *InternalServer) UnPackUserMessage(protoPackedMessage []byte) (payload []byte, signature []byte, err error) {
 | 
			
		||||
	msg := &meowlib.PackedServerMessage{}
 | 
			
		||||
	if err := proto.Unmarshal(protoPackedMessage, msg); err != nil {
 | 
			
		||||
		return nil, nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return msg.Payload, msg.Signature, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p *Peer) GetConversationRequest() meowlib.ToServerMessage_ConversationRequest {
 | 
			
		||||
	var cr meowlib.ToServerMessage_ConversationRequest
 | 
			
		||||
	return cr
 | 
			
		||||
 
 | 
			
		||||
@@ -102,3 +102,11 @@ func (ints *InternalServer) PackServerMessage(payload []byte, signature []byte)
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (ints *InternalServer) UnPackServerMessage(protoPackedMessage []byte) (payload []byte, signature []byte, err error) {
 | 
			
		||||
	msg := &meowlib.PackedServerMessage{}
 | 
			
		||||
	if err := proto.Unmarshal(protoPackedMessage, msg); err != nil {
 | 
			
		||||
		return nil, nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return msg.Payload, msg.Signature, nil
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user