penumbra_sdk_custody/
null_kms.rs1use penumbra_sdk_proto::custody::v1::{self as pb};
5use tonic::{async_trait, Request, Response, Status};
6
7#[derive(Debug, Default)]
11pub struct NullKms {}
12
13#[async_trait]
14impl pb::custody_service_server::CustodyService for NullKms {
15 async fn authorize(
16 &self,
17 _request: Request<pb::AuthorizeRequest>,
18 ) -> Result<Response<pb::AuthorizeResponse>, Status> {
19 Err(tonic::Status::failed_precondition(
20 "Got authorization request in view-only mode to null KMS.",
21 ))
22 }
23
24 async fn authorize_validator_definition(
25 &self,
26 _request: Request<pb::AuthorizeValidatorDefinitionRequest>,
27 ) -> Result<Response<pb::AuthorizeValidatorDefinitionResponse>, Status> {
28 Err(tonic::Status::failed_precondition(
29 "Got authorization request in view-only mode to null KMS.",
30 ))
31 }
32
33 async fn authorize_validator_vote(
34 &self,
35 _request: Request<pb::AuthorizeValidatorVoteRequest>,
36 ) -> Result<Response<pb::AuthorizeValidatorVoteResponse>, Status> {
37 Err(tonic::Status::failed_precondition(
38 "Got authorization request in view-only mode to null KMS.",
39 ))
40 }
41
42 async fn export_full_viewing_key(
43 &self,
44 _request: Request<pb::ExportFullViewingKeyRequest>,
45 ) -> Result<Response<pb::ExportFullViewingKeyResponse>, Status> {
46 Err(tonic::Status::failed_precondition(
47 "Got authorization request in view-only mode to null KMS.",
48 ))
49 }
50
51 async fn confirm_address(
52 &self,
53 _request: Request<pb::ConfirmAddressRequest>,
54 ) -> Result<Response<pb::ConfirmAddressResponse>, Status> {
55 Err(tonic::Status::failed_precondition(
56 "Got authorization request in view-only mode to null KMS.",
57 ))
58 }
59}