refactor #3
This commit is contained in:
@ -116,3 +116,37 @@ func (ints *InternalServer) UnPackServerMessage(protoPackedMessage []byte) (payl
|
||||
}
|
||||
return msg.Payload, msg.Signature, nil
|
||||
}
|
||||
|
||||
func (srv *InternalServer) ProcessOutboundMessage(toServerMessage *meowlib.ToServerMessage) ([]byte, error) {
|
||||
byteToServerMessage, err := proto.Marshal(toServerMessage)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
// Encrypting it
|
||||
encToServerMessage, encToServerMessageSignature, err := srv.AsymEncryptMessage(byteToServerMessage)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
// Packing it
|
||||
protoPackedServerMsg, err := srv.PackServerMessage(encToServerMessage, encToServerMessageSignature)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return protoPackedServerMsg, nil
|
||||
}
|
||||
|
||||
func (srv *InternalServer) ProcessInboundServerResponse(msg []byte) (*meowlib.FromServerMessage, error) {
|
||||
fsmsg := &meowlib.FromServerMessage{}
|
||||
payload, signature, err := srv.UnPackServerMessage(msg)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
decrypted, err := srv.AsymDecryptMessage(payload, signature)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if err := proto.Unmarshal(decrypted, fsmsg); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return fsmsg, nil
|
||||
}
|
||||
|
Reference in New Issue
Block a user