diff --git a/src/_zkapauthorizer/foolscap.py b/src/_zkapauthorizer/foolscap.py index 4e77b5a5075ec4b215d221cbbb8c9e941401cf29..67b1b2f7c0b2d55c76f8a37cf7d4e6b8cf499be6 100644 --- a/src/_zkapauthorizer/foolscap.py +++ b/src/_zkapauthorizer/foolscap.py @@ -6,8 +6,7 @@ from foolscap.constraint import ( ByteStringConstraint, ) from foolscap.api import ( - ChoiceOf, - SetOf, + Any, DictOf, ListOf, ) @@ -17,7 +16,6 @@ from foolscap.remoteinterface import ( ) from allmydata.interfaces import ( - MAX_BUCKETS, StorageIndex, RIStorageServer, Offset, @@ -125,7 +123,10 @@ class RIPrivacyPassAuthorizedStorageServer(RemoteInterface): def share_sizes( storage_index_or_slot=StorageIndex, - sharenums=ChoiceOf(None, SetOf(int, maxLength=MAX_BUCKETS)), + # Notionally, ChoiceOf(None, SetOf(int, maxLength=MAX_BUCKETS)). + # However, support for such a construction appears to be + # unimplemented in Foolscap. So, instead... + sharenums=Any(), ): """ Get the size of the given shares in the given storage index or slot. If a