depot/packages/networking/ipfs-cluster/rpc_policy.go

73 lines
3 KiB
Go

package ipfscluster
// This file can be generated with rpcutil/policygen.
// DefaultRPCPolicy associates all rpc endpoints offered by cluster peers to an
// endpoint type. See rpcutil/policygen.go as a quick way to generate this
// without missing any endpoint.
var DefaultRPCPolicy = map[string]RPCEndpointType{
// Cluster methods
"Cluster.Alerts": RPCClosed,
"Cluster.BlockAllocate": RPCClosed,
"Cluster.ConnectGraph": RPCClosed,
"Cluster.ID": RPCOpen,
"Cluster.IDStream": RPCOpen,
"Cluster.IPFSID": RPCClosed,
"Cluster.Join": RPCClosed,
"Cluster.PeerAdd": RPCOpen, // Used by Join()
"Cluster.PeerRemove": RPCTrusted,
"Cluster.Peers": RPCTrusted, // Used by ConnectGraph()
"Cluster.PeersWithFilter": RPCClosed,
"Cluster.Pin": RPCClosed,
"Cluster.PinGet": RPCClosed,
"Cluster.PinPath": RPCClosed,
"Cluster.Pins": RPCClosed, // Used in stateless tracker, ipfsproxy, restapi
"Cluster.Recover": RPCClosed,
"Cluster.RecoverAll": RPCClosed,
"Cluster.RecoverAllLocal": RPCTrusted,
"Cluster.RecoverLocal": RPCTrusted,
"Cluster.RepoGC": RPCClosed,
"Cluster.RepoGCLocal": RPCTrusted,
"Cluster.SendInformerMetrics": RPCClosed,
"Cluster.SendInformersMetrics": RPCClosed,
"Cluster.Status": RPCClosed,
"Cluster.StatusAll": RPCClosed,
"Cluster.StatusAllLocal": RPCClosed,
"Cluster.StatusLocal": RPCClosed,
"Cluster.Unpin": RPCClosed,
"Cluster.UnpinPath": RPCClosed,
"Cluster.Version": RPCOpen,
// PinTracker methods
"PinTracker.PinQueueSize": RPCClosed,
"PinTracker.Recover": RPCTrusted, // Called in broadcast from Recover()
"PinTracker.RecoverAll": RPCClosed, // Broadcast in RecoverAll unimplemented
"PinTracker.Status": RPCTrusted,
"PinTracker.StatusAll": RPCTrusted,
"PinTracker.Track": RPCClosed,
"PinTracker.Untrack": RPCClosed,
// IPFSConnector methods
"IPFSConnector.BlockGet": RPCClosed,
"IPFSConnector.BlockStream": RPCTrusted, // Called by adders
"IPFSConnector.ConfigKey": RPCClosed,
"IPFSConnector.Pin": RPCClosed,
"IPFSConnector.PinLs": RPCClosed,
"IPFSConnector.PinLsCid": RPCClosed,
"IPFSConnector.RepoStat": RPCTrusted, // Called in broadcast from proxy/repo/stat
"IPFSConnector.Resolve": RPCClosed,
"IPFSConnector.SwarmPeers": RPCTrusted, // Called in ConnectGraph
"IPFSConnector.Unpin": RPCClosed,
// Consensus methods
"Consensus.AddPeer": RPCTrusted, // Called by Raft/redirect to leader
"Consensus.LogPin": RPCTrusted, // Called by Raft/redirect to leader
"Consensus.LogUnpin": RPCTrusted, // Called by Raft/redirect to leader
"Consensus.Peers": RPCClosed,
"Consensus.RmPeer": RPCTrusted, // Called by Raft/redirect to leader
// PeerMonitor methods
"PeerMonitor.LatestMetrics": RPCClosed,
"PeerMonitor.MetricNames": RPCClosed,
}