satellite/metainfo: move metadata validation to a proper place
Metadata validation for CommitObject request was placed in a wrong place. There is a case (old uplink) where encrypted key is bundled inside encrypted metadata bytes and we need to extract it before we can validate it. This change moves metadata validation to a place where we are sure we have encrypted metadata and encrypted metadata encrypted key ready to be checked. "Run Versions Test" is covering this case and it was failing without this change. Change-Id: Ib709ad901fbb3fa4865a393195b7b3f4c0d87e7a
This commit is contained in:
parent
ea38860aab
commit
d6054214c3
@ -208,10 +208,6 @@ func (endpoint *Endpoint) CommitObject(ctx context.Context, req *pb.ObjectCommit
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if err := endpoint.checkEncryptedMetadataSize(req.EncryptedMetadata, req.EncryptedMetadataEncryptedKey); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
id, err := uuid.FromBytes(streamID.StreamId)
|
||||
if err != nil {
|
||||
endpoint.log.Error("internal", zap.Error(err))
|
||||
@ -255,6 +251,10 @@ func (endpoint *Endpoint) CommitObject(ctx context.Context, req *pb.ObjectCommit
|
||||
}
|
||||
}
|
||||
|
||||
if err := endpoint.checkEncryptedMetadataSize(request.EncryptedMetadata, request.EncryptedMetadataEncryptedKey); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
_, err = endpoint.metabase.CommitObject(ctx, request)
|
||||
if err != nil {
|
||||
return nil, endpoint.convertMetabaseErr(err)
|
||||
|
Loading…
Reference in New Issue
Block a user