Commit graph

529 commits

Author SHA1 Message Date
Pavel Karpy
9d0a82bc89 [#190] common: Check NeoFS role for the next block
Current height makes it impossible to change
role and make some operations in one block.
Also, it may lead to accepting some operations
that are approved by already not valid alphabet.

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-07 11:25:58 +03:00
Evgenii Stratonikov
b104a2ccbc [#154] netmap: implement Register method
For notary-disabled environment it makes sense to split node
registration and actual candidate update into separate methods.
This way we have less complicate logic in `AddPeer` and overall
registration flow is more understandable.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-12-06 11:03:33 +03:00
Evgenii Stratonikov
bf83ed9a4f [#101] *: update storage after voting
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-12-02 14:14:40 +03:00
Evgenii Stratonikov
4248424a44 nns: disallow conflicting records on register
Require no records '*.domain' to be present when registering domain.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-12-02 14:14:22 +03:00
Evgenii Stratonikov
f12c44fc78 nns: allow to register arbitrary-level domains
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-12-02 14:14:22 +03:00
Pavel Karpy
629f9fd90a [#184] go.mod: Update neo-go
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy
53a6b198d9 [#184] *: Cast to struct `iterator.Value() k/v pair
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy
5e604b6f8b [#184] *: Check status of neo.Transfer and gas.Transfer
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy
5c4e44575a [#184] *: Add ownerSize constant
It consists of 1 byte prefix, script hash
and 4 byte hash of the previous bytes.

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy
a2f5f7a74a [#184] *: Change panic to Log+ABORT in OnNEP17Payment
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy
e6a33e8193 [#185] *: Use storage.DeserializeValues flag for search
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy
23d9799e51 [#185] *: Use neo-go's interop constants instead of local
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy
f78a0e32b8 [#185] *: Cast args of _deploy method to struct
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Evgenii Stratonikov
b2559857f6 [#101] neofs: allow to register multiple candidates per block
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-30 16:24:23 +03:00
Alex Vanin
ec95997f41 Backport changelog v0.12.2
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-11-30 12:26:56 +03:00
Pavel Karpy
27c97237cf [#184] *: Delete method prefix from runtime.Log()
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-30 12:14:19 +03:00
Pavel Karpy
2ee2344e5f [#184] *: Move all panics on witness checks in common
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-30 12:14:19 +03:00
Pavel Karpy
ac89694eeb [#184] *: Remove method prefix in panic messages
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-30 12:14:19 +03:00
Pavel Karpy
4961e9b436 [#186] *: Add // V2 format comment
Add `// V2 format` comment to V2 specific code
in contracts. In `subnet` contract change comment
to sync with other.

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-30 11:51:01 +03:00
Evgenii Stratonikov
c7a02f0259 [#180] nns: allow hyphen in names
Both amazon bucket naming rules and DNS label names prohibit hyphen as
first or last character, but allow it in the middle.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-30 11:50:40 +03:00
Evgenii Stratonikov
f0868c89fd [#181] container: setup nns keys during update
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-26 11:07:38 +03:00
Pavel Karpy
293ca36ff4 [#174] subnet: Do not panic while doing operation that are already done
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
0e84900187 [#174] subnet: Clear all storage keys in Delete method
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
e9d5e57caf [#174] subnet: Add docs
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
c2b7e638fa [#174] subnet: Sync notifications and method names
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
76933df0a9 [#174] subnet: Delete method prefix check in error tests
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
bd2d1cdf86 [#174] subnet: Add comments to version dependent format checks
Also add `groupID` format checks.

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
c0636ff0ee [#174] subnet: Make len(subnetID) constant and fix its value
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
c4ff617525 [#174] subnet: Rename ErrSubNotExist -> ErrNotExist
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
9e2842b4ad [#174] subnet: Add UserAllowed method
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
a7a272ad08 [#174] subnet: Add RemoveUser method
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
9a05e213eb [#174] subnet: Add AddUser method
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
cc7d98d45e [#174] subnet: Add RemoveClientAdmin method
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
0d45d83450 [#174] subnet: Add AddClientAdmin method
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
b5db977e62 [#174] subnet: Add NodeAllowed method
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
4b47bfadcd [#174] subnet: Add RemoveNode method
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
18b5e56727 [#174] subnet: Add AddNode method
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
cee4dd76dc [#174] subnet: Add RemoveNodeAdmin method
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
840e206963 [#174] subnet: Fix notification
Add notification to the `Delete` method and
add subnet ID to the `Put` notification.

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
df6cc4f8b7 [#174] subnet: Add AddNodeAdmin method
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Pavel Karpy
b02a5c2d40 [#174] subnet: Move Update method to the top of the file
It is done to make all contract file similar.

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-25 13:02:25 +03:00
Evgenii Stratonikov
3723fcaacf [#177] Makefile: build with neo-go from go.mod
Currently compiler version and test/interop version are decoupled.
It would be nice to use the compiler from go.mod by default
as this is the version our contracts are tested on.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-25 11:26:35 +03:00
Evgenii Stratonikov
d8e42fcd16 nns: migrate roots from the old version
Now root is just a TLD and needs to have SOA record.
Set owner to committee and some default values for other
parameters.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-25 11:26:35 +03:00
Evgenii Stratonikov
d852229b74 nns: add version to the list of safe methods
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-25 11:26:35 +03:00
Evgenii Stratonikov
445c0a6087 nns: add test for TLD record registration
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-24 16:38:04 +03:00
Evgenii Stratonikov
870db4a81a [#122] subnet: implement delete method
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-22 10:30:35 +03:00
Evgenii Stratonikov
ed6f90c180 [#122] subnet: implement put method
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-22 10:30:35 +03:00
Evgenii Stratonikov
6250e5eaf7 [#122] subnet: add contract skeleton
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-22 10:30:35 +03:00
Evgenii Stratonikov
75bb382f7b [#101] neofsid: allow to have multiple AddKey per block
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-19 16:06:23 +03:00
Evgenii Stratonikov
c4212e7d2f [#101] reputation: allow Put in multiple tx per block
`listByEpoch` now returns only peer identifiers.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-19 15:23:59 +03:00