Check CID is set to eacl table in ContainerSetEACL command (#389)

close #384
This commit is contained in:
Roman Khimov 2023-04-17 15:25:58 +03:00 committed by GitHub
commit 8678b36ed9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -602,7 +602,7 @@ type PrmContainerSetEACL struct {
}
// SetTable sets eACL table structure to be set for the container.
// Required parameter.
// Required parameter and CID must be set inside the table.
func (x *PrmContainerSetEACL) SetTable(table eacl.Table) {
x.table = table
x.tableSet = true
@ -656,6 +656,11 @@ func (c *Client) ContainerSetEACL(ctx context.Context, prm PrmContainerSetEACL)
panic("eACL table not set")
}
_, isCIDSet := prm.table.CID()
if !isCIDSet {
panic("missing container in eACL table")
}
// sign the eACL table
eaclV2 := prm.table.ToV2()