From c30cf11630dbb34e39891c02a8ca7425716be338 Mon Sep 17 00:00:00 2001 From: "Felipe A. Hernandez" Date: Tue, 27 Apr 2021 14:08:23 +0000 Subject: [PATCH] Add OpenRPC compatibility --- jsonrpc/jsonrpc2.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/jsonrpc/jsonrpc2.py b/jsonrpc/jsonrpc2.py index 66ca451..35c8127 100644 --- a/jsonrpc/jsonrpc2.py +++ b/jsonrpc/jsonrpc2.py @@ -45,6 +45,7 @@ class JSONRPC20Request(JSONRPCBaseRequest): JSONRPC_VERSION = "2.0" REQUIRED_FIELDS = set(["jsonrpc", "method"]) POSSIBLE_FIELDS = set(["jsonrpc", "method", "params", "id"]) + CUSTOM_RPC_INTERNALS = set(["rpc.discover"]) @property def data(self): @@ -71,7 +72,7 @@ def method(self, value): if not isinstance(value, six.string_types): raise ValueError("Method should be string") - if value.startswith("rpc."): + if value.startswith("rpc.") and value not in self.CUSTOM_RPC_INTERNALS: raise ValueError( "Method names that begin with the word rpc followed by a " + "period character (U+002E or ASCII 46) are reserved for " +