1
# Copyright 2014 Canonical Ltd. This software is licensed under the
2
# GNU Affero General Public License version 3 (see the file LICENSE).
4
"""Interfaces for the RPC implementation."""
6
from __future__ import (
17
from zope import interface
20
class IConnection(interface.Interface):
22
ident = interface.Attribute(
23
"ident", "An identifier far end of the connection.")
25
hostCertificate = interface.Attribute(
26
"hostCertificate", "The certificate used locally for TLS.")
28
# TODO: peerCertificate raises an exception when TLS is not
29
# activated, or maybe that's just in tests. Investigation is needed.
30
# peerCertificate = interface.Attribute(
31
# "peerCertificate", "The certificate used remotely for TLS.")
33
def callRemote(cmd, **arguments):
34
"""Call a remote method with the given arguments."""