diff --git a/cmd/neofs-cli/modules/container.go b/cmd/neofs-cli/modules/container.go index b2cd0cba2..ca1a4c6f0 100644 --- a/cmd/neofs-cli/modules/container.go +++ b/cmd/neofs-cli/modules/container.go @@ -340,13 +340,21 @@ var getExtendedACLCmd = &cobra.Command{ return err } - eaclTable, err := cli.GetEACL(ctx, id, client.WithTTL(getTTL())) + res, err := cli.GetEACLWithSignature(ctx, id, client.WithTTL(getTTL())) if err != nil { return fmt.Errorf("rpc error: %w", err) } + eaclTable := res.EACL() + sig := res.Signature() + if containerPathTo == "" { + fmt.Println("eACL: ") prettyPrintEACL(eaclTable) + + fmt.Println("Signature:") + printJSONMarshaler(sig, "signature") + return nil } @@ -366,6 +374,9 @@ var getExtendedACLCmd = &cobra.Command{ fmt.Println("dumping data to file:", containerPathTo) + fmt.Println("Signature:") + printJSONMarshaler(sig, "signature") + return ioutil.WriteFile(containerPathTo, data, 0644) }, } @@ -694,9 +705,13 @@ func parseEACL(eaclPath string) (*eacl.Table, error) { } func prettyPrintEACL(table *eacl.Table) { - data, err := table.MarshalJSON() + printJSONMarshaler(table, "eACL") +} + +func printJSONMarshaler(j json.Marshaler, entity string) { + data, err := j.MarshalJSON() if err != nil { - printVerbose("Can't convert container to json: %w", err) + printVerbose("Can't convert %s to json: %w", entity, err) return } buf := new(bytes.Buffer) diff --git a/go.mod b/go.mod index 6eb9791cc..4dfde67d7 100644 --- a/go.mod +++ b/go.mod @@ -14,7 +14,7 @@ require ( github.com/multiformats/go-multiaddr-net v0.1.2 // v0.1.1 => v0.1.2 github.com/multiformats/go-multihash v0.0.13 // indirect github.com/nspcc-dev/neo-go v0.91.1-pre.0.20201030072836-71216865717b - github.com/nspcc-dev/neofs-api-go v1.20.3-0.20201123111542-5ee500bb43c6 + github.com/nspcc-dev/neofs-api-go v1.20.3-0.20201124121642-8c99d9d54c5c github.com/nspcc-dev/neofs-crypto v0.3.0 github.com/nspcc-dev/tzhash v1.4.0 github.com/panjf2000/ants/v2 v2.3.0 diff --git a/go.sum b/go.sum index e31d1c98a..bda477d6f 100644 --- a/go.sum +++ b/go.sum @@ -276,8 +276,8 @@ github.com/nspcc-dev/neo-go v0.73.1-pre.0.20200303142215-f5a1b928ce09/go.mod h1: github.com/nspcc-dev/neo-go v0.91.0/go.mod h1:G6HdOWvzQ6tlvFdvFSN/PgCzLPN/X/X4d5hTjFRUDcc= github.com/nspcc-dev/neo-go v0.91.1-pre.0.20201030072836-71216865717b h1:gk5bZgpWOehaDVKI5vBDkcjXTpRkKqcvIb1h/vHnBH4= github.com/nspcc-dev/neo-go v0.91.1-pre.0.20201030072836-71216865717b/go.mod h1:9s7LNp2lMgf0caH2t0sam4+WT2SIauXozwP0AdBqnEo= -github.com/nspcc-dev/neofs-api-go v1.20.3-0.20201123111542-5ee500bb43c6 h1:ecsG0Q9416WBLBV3+dzGOwMZvC+F9Z+UttwZ/f1kFLY= -github.com/nspcc-dev/neofs-api-go v1.20.3-0.20201123111542-5ee500bb43c6/go.mod h1:G7dqincfdjBrAbL5nxVp82emF05fSVEqe59ICsoRDI8= +github.com/nspcc-dev/neofs-api-go v1.20.3-0.20201124121642-8c99d9d54c5c h1:VboS3Nn9lyv24ar5mQK5uwww3w2aJUc0DEL/GXhwmE8= +github.com/nspcc-dev/neofs-api-go v1.20.3-0.20201124121642-8c99d9d54c5c/go.mod h1:G7dqincfdjBrAbL5nxVp82emF05fSVEqe59ICsoRDI8= github.com/nspcc-dev/neofs-crypto v0.2.0/go.mod h1:F/96fUzPM3wR+UGsPi3faVNmFlA9KAEAUQR7dMxZmNA= github.com/nspcc-dev/neofs-crypto v0.2.3/go.mod h1:8w16GEJbH6791ktVqHN9YRNH3s9BEEKYxGhlFnp0cDw= github.com/nspcc-dev/neofs-crypto v0.3.0 h1:zlr3pgoxuzrmGCxc5W8dGVfA9Rro8diFvVnBg0L4ifM=