Commit graph

419 commits

Author SHA1 Message Date
Stanislav Bogatyrev
8bf98ec983 Use well-known expiration attribute for SGs
To avoid ambiguity, let's use the common well-known attribute to control
both Object and Storage Group expirations.

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2022-05-25 11:20:09 +03:00
Elizaveta Chichindaeva
f741ea6f4a Update
Signed-off-by: Elizaveta Chichindaeva <elizaveta@nspcc.ru>
2022-05-17 10:46:54 +03:00
Stanislav Bogatyrev
cd5fdbbd55 Clarification for eXtended Headers in MetaHeader
Minor clarification to show how XHeaders should be used.

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2022-05-17 10:46:54 +03:00
Elizaveta Chichindaeva
f233a2fd67 [#216] English Check
Signed-off-by: Elizaveta Chichindaeva <elizaveta@nspcc.ru>
2022-05-12 15:06:51 +03:00
Evgenii Stratonikov
431335054c [#207] acl: Clarify container_id field meaning in the eACL table of a BearerToken
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-21 10:49:25 +03:00
Leonard Lyubich
650c367529 Release v2.12.0 - Heuksando (흑산도, 黑山島)
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-03-02 16:46:58 +03:00
Leonard Lyubich
b28ce35524 [#203] refs: Change support for different signature schemes
Remove `UNSPECIFIED` value from `SignatureScheme` enum. Make
`ECDSA_SHA512` to be default signature scheme (zero value).

Define `SignatureRFC6979` type for RFC-6979 signatures. Use it in
`Container` service.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-03-02 16:46:58 +03:00
Leonard Lyubich
f6dad19bef Release v2.12.0 - Heuksando (흑산도, 黑山島)
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-02-22 16:02:14 +03:00
Evgenii Stratonikov
478c388df9 [#55] container: add a comment about signature restrictions
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-22 12:00:58 +03:00
Evgenii Stratonikov
3302a530f2 [#55] refs: add signature scheme description
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-22 12:00:58 +03:00
Leonard Lyubich
2743e4ba11 [#194] Generate docs with recent protocol changes
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-02-22 11:58:44 +03:00
Leonard Lyubich
fc79cd18cc [#190] status: Add OBJECT_ALREADY_REMOVED code
Add `OBJECT_ALREADY_REMOVED` value to `Object` enumeration. Return this
status from object GET/HEAD/RANGE operations.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-02-22 11:58:44 +03:00
Leonard Lyubich
83b0eef37d [#189] status: Refine format of the ACCESS_DENIED status detail
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-02-22 11:58:44 +03:00
Leonard Lyubich
0caf501b4a [#194] Document status returns of Object and Container service RPCs
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-02-22 11:58:44 +03:00
Stanislav Bogatyrev
1c683c7578 [#194] Move Lock payload description to definition
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2022-02-22 11:58:44 +03:00
Leonard Lyubich
d6bf64589f [#194] object: Define payload format of LOCK objects
Define `object.Lock` message which carries list of locked objects.
Require this message to be a payload of locked objects (`LOCK` type).

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-02-22 11:58:44 +03:00
Leonard Lyubich
7b83b9df4e [#194] object: Add status returns related to LOCKs
Add `status.Object` section for object failures. Add `LOCKED` and
`LOCK_NON_REGULAR_OBJECT` codes to it. Return these codes from `Put` and
`Delete` RPCs of `ObjectService`.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-02-22 11:58:44 +03:00
Leonard Lyubich
3793783ed4 [#194] object: Add LOCK type
NeoFS introduces object LOCKs - a mechanism for locking an object from,
for example, deletion. Object locks are implemented and stored in the
container as objects, so there is a need to define a new type of system
objects.

Add `LOCK` value to `ObjectType` enum.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-02-22 11:58:44 +03:00
Evgenii Stratonikov
35e9840de6 [#192] docs: Generate documentation
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-21 15:52:48 +03:00
Evgenii Stratonikov
3a154760b5 [#191] status: add Session section and some status codes
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-21 15:52:48 +03:00
Evgenii Stratonikov
31b7b073c2 [#190] status: add Container section and CONTAINER_NOT_FOUND code
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-21 15:52:48 +03:00
Evgenii Stratonikov
5f53a683d1 [#190] status: add Object.OBJECT_NOT_FOUND code
`OBJECT_` prefix is needed because of possible conflicts with other
`NOT_FOUND` codes declared in the same file.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-21 15:52:48 +03:00
Evgenii Stratonikov
5f3fa3fdd8 [#189] status: add Object section and ACL_DENIED code
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-21 15:52:48 +03:00
Pavel Karpy
1842305116 [#195] doc: Regenerate documentation
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-02-21 15:26:28 +03:00
Pavel Karpy
f67442d769 [#195] object: Add notification well-known attributes
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-02-21 15:26:28 +03:00
Leonard Lyubich
e09a560d57 [#187] status: Add detail with supported network magic
Add detail for `WRONG_MAGIC_NUMBER` status code which carries the
correct magic of the served network served. Clients will be able to fix
incorrect magic and re-send the request. ID is 0, binary format
is uint64 in big-endian.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-01-27 16:48:52 +03:00
Leonard Lyubich
d9d71ccd66 [#82] status: Add status code for wrong network magic
After the recent update of NeoFS V2 protocol all requests must carry
correct network magic.

Add `WRONG_MAGIC_NUMBER` code to `CommonFail` section.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-01-10 17:32:31 +03:00
Leonard Lyubich
b1fca685a9 [#82] session: Add network magic to RequestMetaHeader
To prevent theoretical cross-network replay attack, we need to have
network magic in NeoFS requests.

Add `magic_number` numeric field to `session.RequestMetaHeader`
message.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-01-10 17:32:31 +03:00
Leonard Lyubich
848b96ede0 Update changelog for release v2.11.0
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-12-02 14:11:56 +03:00
Pavel Karpy
8de3478833 [#184] doc: Regenerate docs
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-18 19:23:54 +03:00
Pavel Karpy
b608e89bf4 [#184] netmap: Add subnetwork attribute to the NodeInfo
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-18 19:23:54 +03:00
Pavel Karpy
fbbbfccb8d [#184] netmap: Sync style of the comments
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-18 19:23:54 +03:00
Pavel Karpy
c11991aff1 [#183] doc: Regenerate docs
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-18 13:50:39 +03:00
Pavel Karpy
a05e6f9a5c [#183] subnet: Define subnet information message
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-18 13:50:39 +03:00
Evgenii Stratonikov
c6691c4924 [#179] netmap: add subnet id to placement policy
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-17 15:29:57 +03:00
Leonard Lyubich
7ea5a1d2f1 [#150] *: Write status-related docs
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-11-16 09:46:14 +03:00
Leonard Lyubich
f55f83fb24 [#150] status: Define enum of sequence numbers of the failure sections
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-11-16 09:46:14 +03:00
Leonard Lyubich
c907451350 [#150] status: Define enumeration of the codes for common failures
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-11-16 09:46:14 +03:00
Leonard Lyubich
fd0366bbf5 [#150] status: Define enumeration of success status codes
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-11-16 09:46:14 +03:00
Leonard Lyubich
ba1179a22b [#150] session: Add Status field to ResponseMetaHeader
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-11-16 09:46:14 +03:00
Leonard Lyubich
f61eaf5353 [#150] Define status return message
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-11-16 09:46:14 +03:00
Alex Vanin
115d8c801d Release v2.10.0 - Udo (우도, 牛島)
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-10-14 19:16:43 +03:00
Alex Vanin
8bf84cdc65 [#177] container: Define well-known container attributes for NNS integration
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-10-14 09:54:57 +03:00
Leonard Lyubich
6ad083c731 [#172] netmap: Add network configuration to NetworkInfo message
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-09-27 15:38:54 +03:00
Leonard Lyubich
e16866843b [#172] netmap: Define NetworkConfig message
Define `netmap.NetworkConfig` message which represents structure of
NeoFS network config stored in Netmap contract.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-09-27 15:38:54 +03:00
Leonard Lyubich
2e23cb3888 [#172] netmap: Add ms_per_block field to NetworkInfo message
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-09-27 15:38:54 +03:00
Evgenii Stratonikov
3878a09e42 [#173] acl: add filter for service headers
Service headers are ignored by NeoFS nodes but can be
used to save access-related information by services
built on top of NeoFS.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-09-15 14:23:12 +03:00
Alex Vanin
ece09a1812 Release v2.9.1
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-08-26 16:56:24 +03:00
Alex Vanin
233f777d0c [#84] Fix string presentation object type enum
Default string presentations of enums in protobuf are the same
as definitions. In our case it is going to be UPPER_SNAKE_CASE
string constants. Default presentation is easier to maintain.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-08-26 13:03:31 +03:00
Pavel Karpy
260db6b3df Release v2.9.0 - Anmyeondo (안면도, 安眠島)
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-08-16 18:52:57 +03:00